1 #ifndef __OUTPORT_HXX__
2 #define __OUTPORT_HXX__
4 #include "DataPort.hxx"
5 #include "Exception.hxx"
16 class OutPort : public virtual DataPort
19 OutPort(const OutPort& other, Node *newHelder);
20 OutPort(const std::string& name, Node *node, TypeCode* type);
22 virtual void checkConsistency(LinkInfo& info) const;
23 virtual int edGetNumberOfOutLinks() const;
24 virtual std::set<InPort *> edSetInPort() const = 0;
25 virtual bool isAlreadyLinkedWith(InPort *with) const = 0;
26 virtual void getAllRepresented(std::set<OutPort *>& represented) const;
27 virtual bool addInPort(InPort *inPort) throw(Exception) = 0;
28 virtual int removeInPort(InPort *inPort, bool forward) throw(Exception) = 0;
30 std::vector<DataPort *> calculateHistoryOfLinkWith(InPort *end);
31 virtual std::string typeName() {return "YACS__ENGINE__OutPort";}