47 represented.insert((
OutPort *)
this);
58 throw Exception(
"ComposedNode::edRemoveLink : unexisting link");
59 vector<DataPort *> ret;
67 pair<OutPort *,OutPort *> currentPortO(
this,
this);
68 ret.push_back(currentPortO.first);
69 while(iterS!=lwstCmnAnctr)
71 iterS->
getDelegateOf(currentPortO, end, allAscendanceOfNodeEnd);
72 if(currentPortO.first!=ret.back())
73 ret.push_back(currentPortO.first);
79 while(iterS!=lwstCmnAnctr)
81 vector<DataPort *>::iterator iter2;
82 iterS->
getDelegateOf(currentPortI,
this, allAscendanceOfNodeStart);
83 if(currentPortI!=ret.back())
86 ret.push_back(currentPortI);
90 vector<DataPort *>::iterator iter=ret.end(); iter-=
i;
91 reverse(iter,ret.end());
Base class for all composed nodes.
virtual void getDelegateOf(InPort *&port, OutPort *initialStart, const std::list< ComposedNode * > &pointsOfView)
static ComposedNode * getLowestCommonAncestor(Node *node1, Node *node2)
Retrieves the lowest common ancestor of 2 nodes.
Class that deal with list of semantics links for high level analysis.
Base class for all nodes.
ComposedNode * getFather() const
std::list< ComposedNode * > getAllAscendanceOf(ComposedNode *levelToStop=0) const
virtual bool isAlreadyLinkedWith(InPort *withp) const =0
OutPort(const OutPort &other, Node *newHelder)
virtual int edGetNumberOfOutLinks() const
virtual std::set< InPort * > edSetInPort() const =0
std::vector< DataPort * > calculateHistoryOfLinkWith(InPort *end)
virtual void checkConsistency(LinkInfo &info) const
virtual void getAllRepresented(std::set< OutPort * > &represented) const
Base class for all ports.
Base class for all type objects.