X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaDevManagerLib%2FmodelCDMProject.h;h=942bc9c53b165326d3b68a8b39ba52ef6a366fdf;hb=5ff0bb2664c3cd508c1dd438666a71b8a96459c3;hp=b2a2a11a44498c5d39242cd35409f23fa95e4b2c;hpb=cfa883d25e73975f73c20fefc1ec2c947d827938;p=crea.git diff --git a/lib/creaDevManagerLib/modelCDMProject.h b/lib/creaDevManagerLib/modelCDMProject.h index b2a2a11..942bc9c 100644 --- a/lib/creaDevManagerLib/modelCDMProject.h +++ b/lib/creaDevManagerLib/modelCDMProject.h @@ -37,6 +37,7 @@ #include #include +#include #include "modelCDMFolder.h" #include "modelCDMLib.h" @@ -58,21 +59,18 @@ public: /** * Constructor receiving the source path and the build path. + * @param parent Parent node of the Project node. * @param path The source path. + * @param name Name of the project folder. * @param buildPath The build path. By default it's an empty string. */ - modelCDMProject(const std::string& path, const std::string& name, const std::string& buildPath = ""); + modelCDMProject(modelCDMIProjectTreeNode* parent, const std::string& path, const std::string& name, const std::string& buildPath = ""); /** * Destructor. */ ~modelCDMProject(); - /** - * Unimplemented. - */ - void PopulateProject(); - //Getters /** @@ -117,6 +115,12 @@ public: */ modelCDMLib* GetLib() const; + /** + * Retrieves the default make instruction to compile the project. + * @return The make instruction to compile. + */ + std::string GetBuildInstruction() const; + //Setters /** @@ -227,9 +231,10 @@ public: /** * Launches in console the make -clean and make commands to build the project. * @param result Result message for building the project. + * @param line Line to execute the compilation. * @return if any of the commands cannot be executed it return false. */ - bool Build(std::string*& result); + bool Build(std::string*& result, const std::string& line); /** * Launches in console the bbPlugPackage command to connect the project to the .bbtk folder in the hard drive. @@ -238,16 +243,43 @@ public: */ bool Connect(std::string*& result); + /** + * Checks the CMakeLists files to see what's going to be compiled and what's not. + * @param properties Map containing the project compilation properties. + */ + void CheckStructure(std::map& properties); + private: + /** + * Project Name + */ std::string nameProject; + /** + * Project Version + */ std::string version; + /** + * Last Project Version Modification Date + */ std::string versionDate; + /** + * Build Path for compiling the project + */ std::string buildPath; + /** + * lib folder + */ modelCDMLib* lib; + /** + * appli folder + */ modelCDMAppli* appli; + /** + * package folders + */ std::vector packages; };