X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcreaDevManagerLib%2FmodelCDMAppli.h;h=5a85580dd4dcf615c914f322e2a961e6a5810697;hb=72a6140565ccd0905f822c7bf17ea471762a9301;hp=c37924d246719c37b399cc344fed5b3d99fc5572;hpb=df27aee30377cefdc3e33b4001b5afca1798b309;p=crea.git diff --git a/lib/creaDevManagerLib/modelCDMAppli.h b/lib/creaDevManagerLib/modelCDMAppli.h index c37924d..5a85580 100644 --- a/lib/creaDevManagerLib/modelCDMAppli.h +++ b/lib/creaDevManagerLib/modelCDMAppli.h @@ -37,27 +37,67 @@ #include #include +#include #include"modelCDMFolder.h" #include"modelCDMApplication.h" +/** + * Represents the appli folder of Crea project. The appli folder holds the applications of a project. + */ class modelCDMAppli : public modelCDMFolder { public: + /** + * Default constructor. + */ modelCDMAppli(); - modelCDMAppli(const std::string& path, const int& level = 1); + /** + * Constructor of the appli folder node. + * @param parent Parent node of the appli node. + * @param path Full path of the appli node. + * @param name Folder name of the appli node. By default "appli" + * @param level Folder Level in the project hierarchy. By default 1 + */ + modelCDMAppli(modelCDMIProjectTreeNode* parent, const std::string& path, const std::string& name = "appli", const int& level = 1); + /** + * Destructor. + */ ~modelCDMAppli(); + /** + * Retrieves the applications inside the appli folder node. + * @return Reference array of the applications in the appli node. + */ const std::vector& GetApplications() const; + /** + * Creates a new application in the system and creates an application node. This node is stored in the applications attribute and returned. + * @param name Name of the new application. + * @param result Result message of the operation. + * @return Reference to the created application or NULL. + */ modelCDMApplication* CreateApplication( const std::string& name, - std::string*& result, - const std::string& path = "/" + std::string*& result ); + /** + * Refreshes the file structure of the appli node. Deletes deleted folders and files and creates created files and folders since lasts refresh. + * @param result Result message of the operation. + * @return True if the operation was successful. + */ virtual const bool Refresh(std::string*& result); + /** + * Checks the CMakeLists structure and the applications in order to look for compilation errors before compiling. + * @param properties Properties found in the structure. + */ + void CheckStructure(std::map& properties); + private: + /** + * application in the appli folder node. + */ std::vector applications; };