X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=inline;f=lib%2FEditorGraphicBBS%2FbbsKernelEditorGraphic%2FGBlackBoxModel.h;h=f6ad73bd883d053a4a6a45edebdbbcc6fd8317ee;hb=de7c0454ab8fc1b0b97dcd7112dfdb4a55ac0215;hp=5536e00a5104b1e37b9a6e8a3bd3295c3f3dd893;hpb=311af31f393ba7d5788a0a843ee412eebdf43a82;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GBlackBoxModel.h b/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GBlackBoxModel.h index 5536e00..f6ad73b 100644 --- a/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GBlackBoxModel.h +++ b/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GBlackBoxModel.h @@ -9,7 +9,7 @@ Version: $Revision$ /* --------------------------------------------------------------------- * Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) -* Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux +* Authors : Ricardo A Corredor, Eduardo Davila, Laurent Guigues, Jean-Pierre Roux * * 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, @@ -28,24 +28,18 @@ Version: $Revision$ * knowledge of the CeCILL-B license and that you accept its terms. * ------------------------------------------------------------------------ */ - - -/** -* \file -* \brief Class bbtk::GBlackBox : abstract black-box interface. -*/ - -/** -* \class bbtk::GBlackBox -* \brief -*/ +/**** +* Design and Developpement of BBTK GEditor +* Ricardo A Corredor J +* RaC - 2010 +****/ #ifndef __GBlackBoxModel_h__ #define __GBlackBoxModel_h__ //Includes same project #include "GlobalConstants.h" -#include "GObjectModel.h" +#include "GBoxModel.h" //Includes creaMaracasVisu @@ -56,10 +50,8 @@ Version: $Revision$ namespace bbtk { - class GPortModel; - - class GBlackBoxModel : public GObjectModel - { + class GBlackBoxModel : public GBoxModel + { public: @@ -67,23 +59,50 @@ namespace bbtk GBlackBoxModel(); ~GBlackBoxModel(); - //Public methods - virtual void setInicPoint(double& x, double& y, double& z); - void addInputPort(GPortModel *inputport); - void addOutputPort(GPortModel *outputport); - int getNumInputPorts(); - int getNumOutputPorts(); + //Public methods + + // The black box has an specific package (important to search in the list with the BBTK Interpreter) + std::string getBBTKPackage(); + void setBBTKPackage(std::string obpackage); + + // Text in the status bar + virtual std::string getStatusText(); + + // Method to write the information of the black box to be saved in the parameter string + virtual void save(std::string &content); + // Is the black box executable or not + bool isExecutable(); + void setExecutable(bool executable); + + // Set 'value' to the port in position 'pos' + void setValueToInputPort(int pos,std::string value); + + // Set 'value' to the port with name 'name' + void setValueToInput(std::string name,std::string value); + + // Get the value of the port in position 'pos' + std::string getValueInputPort(int pos); + + // Get the value of the port with name 'name' + std::string getValueInput(std::string name); + + // Get id's of the connected inputs + std::vector getConnectedInputs(); + // Get id's of the connected outputs + std::vector getConnectedOutputs(); private: - //Attributes - std::vector _inputs; - std::vector _outputs; + //Private Attributes + bool _isExecutable; //Private Methods protected: + //Protected Attributes + std::string _bbtkPackage; + //Protected methods };