X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsKernelEditorGraphic%2FGPortModel.h;h=d82b8850deae461c2b2f131c37db73757d8b83d7;hb=e9ab2c3abb5398388f62fcb9414df85be0eb37d8;hp=1a32e09cee6d3865c676cc04c920ccb9afc613b2;hpb=0b3b25440d23eabf549ebdfa0a4a39ea91ea2f23;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GPortModel.h b/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GPortModel.h index 1a32e09..d82b885 100644 --- a/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GPortModel.h +++ b/lib/EditorGraphicBBS/bbsKernelEditorGraphic/GPortModel.h @@ -35,10 +35,11 @@ Version: $Revision$ * \brief Class bbtk::GPortModel : abstract black-box interface. */ -/** -* \class bbtk::GPortModel -* \brief -*/ +/**** +* Design and Developpement of BBTK GEditor +* Ricardo A Corredor J +* RaC - 2010 +****/ #ifndef __GPortModel_h__ #define __GPortModel_h__ @@ -46,7 +47,7 @@ Version: $Revision$ //Includes same project #include "GlobalConstants.h" #include "GObjectModel.h" -#include "GBlackBoxModel.h" +#include "GBoxModel.h" //Includes creaMaracasVisu @@ -57,7 +58,8 @@ Version: $Revision$ namespace bbtk { - class GBlackBoxModel; + // Mandatory when exists a bidirectional relation: GPortModel includes GBoxModel and viceversa + class GBoxModel; class GPortModel : public GObjectModel { @@ -66,21 +68,53 @@ namespace bbtk //Constructors GPortModel(); - ~GPortModel(); + virtual ~GPortModel(); - //Public methods - void registerInBox(GBlackBoxModel *blackBox,int portType, int pos); - void updatePortPosition(int pos); + //Public methods + + // Register the input or output in a position of the black box, depending in the portType(INPUT/OUTPUT). + void registerInBox(GBoxModel *blackBox,int portType, int pos); + + // Update the port position based in the parent box initial point + void updatePortPosition(); + + // Port type (INPUT/OUTPUT) int getPortType(); - private: + GBoxModel* getParentBox(); + + // Returns the position of the port in the box + int getPosInBox(); + + bool isConnected(); + void setConnected(bool value); + + bool isValueSet(); + void setValue(std::string value); - //Attributes + std::string getValue(); + + virtual std::string getStatusText(); + virtual void save(std::string &content); - GBlackBoxModel *_parentBox; + private: + + //Private Attributes + + GBoxModel *_parentBox; + + // Port type (INPUT/OUTPUT) int _portType; + // The position of the port in the box + int _posInBox; + + bool _isConnected; + + std::string _value; + bool _isValueSet; + //Private Methods protected: