/* # --------------------------------------------------------------------- # # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image # pour la Sant�) # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton # Previous Authors : Laurent Guigues, Jean-Pierre Roux # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil # # This software is governed by the CeCILL-B license under French law and # abiding by the rules of distribution of free software. You can use, # modify and/ or redistribute the software under the terms of the CeCILL-B # license as circulated by CEA, CNRS and INRIA at the following URL # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html # or in the file LICENSE.txt. # # As a counterpart to the access to the source code and rights to copy, # modify and redistribute granted by the license, users are provided only # with a limited warranty and the software's author, the holder of the # economic rights, and the successive licensors have only limited # liability. # # The fact that you are presently reading this means that you have had # knowledge of the CeCILL-B license and that you accept its terms. # ------------------------------------------------------------------------ */ /* * modelCDMProject.h * * Created on: 13/11/2012 * Author: Daniel Felipe Gonzalez Obando */ #ifndef MODELCDMPROJECT_H_ #define MODELCDMPROJECT_H_ #include #include #include "modelCDMIProjectTreeNode.h" #include "modelCDMLib.h" #include "modelCDMAppli.h" #include "modelCDMPackage.h" class modelCDMProject : public modelCDMIProjectTreeNode { public: modelCDMProject(); modelCDMProject(const std::string& name, const std::string& path, const unsigned char& type, const int& level); ~modelCDMProject(){} const std::string& GetName() const; const std::string& GetVersion() const; const std::string& GetVersionDate() const; const std::string& GetBuildPath() const; bool SetVersion(const std::string& version, std::string*& result); bool SetBuildPath(const std::string& path, std::string*& result); bool CreatePackage( const std::string& name, std::string*& result, const std::string& authors = "info-dev", const std::string& authorsEmail = "info-dev@creatis.insa-lyon.fr", const std::string& version = "1.0.0", const std::string& description = "no description" ); bool CreateLibrary( const std::string& name, std::string*& result, const std::string& path = "/lib" ); bool CreateApplication( const std::string& name, std::string*& result, const std::string& path = "/appli" ); bool CreateBlackBox( const std::string& name, const std::string& package = "", //if empty converts into "/bbtk_*projectName*_PKG" const std::string& authors = "unknown", const std::string& authorsEmail = "", const std::string& categories = "empty", const std::string& description = "no description" ); bool OpenCMakeListsFile(std::string*& result); bool Refresh(std::string*& result); bool ConfigureBuild(std::string*& result); bool Build(std::string*& result); bool Connect(std::string*& result); private: std::string name; std::string version; std::string versionDate; std::string buildPath; modelCDMLib* lib; modelCDMAppli* appli; std::vector packages; }; #endif /* MODELCDMPROJECT_H_ */