49 #ifndef _COMPOSITENODE_H_
50 #define _COMPOSITENODE_H_
52 #include "util/functions.h"
53 using namespace ::br::pucrio::telemidia::util;
55 #include "../interfaces/InterfacePoint.h"
56 #include "../interfaces/Port.h"
57 #include "../interfaces/Anchor.h"
58 using namespace ::br::pucrio::telemidia::ncl::interfaces;
61 using namespace ::br::pucrio::telemidia::ncl::components;
71 namespace components {
75 vector<Port*> portList;
80 bool addAnchor(
int index, Anchor *anchor);
81 bool addAnchor(Anchor *anchor);
84 virtual bool addNode(
Node* node)=0;
87 virtual bool addPort(
unsigned int index, Port* port);
90 virtual bool addPort(Port* port);
93 unsigned int getNumPorts();
94 Port* getPort(
string portId);
95 Port* getPort(
unsigned int index);
96 vector<Port*>* getPorts();
97 unsigned int indexOfPort(Port* port);
98 bool removePort(Port* port);
101 virtual InterfacePoint* getMapInterface(Port* port);
104 virtual Node* getNode(
string nodeId);
106 vector<Node*> *getNodes();
107 unsigned int getNumNodes();
110 virtual bool recursivelyContainsNode(
string nodeId);
113 virtual bool recursivelyContainsNode(
Node* node);
116 virtual Node* recursivelyGetNode(
string nodeId);
119 virtual bool removeNode(
Node* node);
122 virtual GenericDescriptor *getNodeDescriptor(
Node *node);
125 virtual bool setNodeDescriptor(
126 string nodeId, GenericDescriptor *descriptor);
134 #endif //_COMPOSITENODE_H_
Definition: CompositeNode.h:72
Definition: NodeEntity.h:76