4 #include "ComposedNode.hxx"
10 class Bloc : public ComposedNode
13 std::set<Node *> _setOfNode;//OWNERSHIP OF ALL NODES
15 Bloc(const std::string& name);
19 int getNumberOfCFLinks() const;
20 std::vector<Task *> getNextTasks(bool& isMore);
21 void getReadyTasks(std::vector<Task *>& tasks);
22 std::set<ElementaryNode *> getRecursiveConstituents();
24 bool edAddChild(Node *node) throw(Exception);
25 void edRemoveChild(Node *node) throw(Exception);
26 std::set<Node *> getChildren() { return _setOfNode; }
27 void selectRunnableTasks(std::vector<Task *>& tasks);
29 bool areAllSubNodesFinished() const;
30 bool isNodeAlreadyAggregated(Node *node) const;
31 bool isNameAlreadyUsed(const std::string& name) const;
32 void checkNoCyclePassingThrough(Node *node) throw(Exception);
33 YACS::Event updateStateOnStartEventFrom(Node *node);
34 YACS::Event updateStateOnFinishedEventFrom(Node *node);
36 void initChildrenForDFS() const;