Partial Order ...
[satune.git] / src / ASTAnalyses / ordernode.h
index 4ac6083d31596854db7f3a07aa0139a7adcfeead..50543ac8a7fb19f1d02af05f0f9fb9bc3a07e98b 100644 (file)
 enum NodeStatus {NOTVISITED, VISITED, FINISHED, ADDEDTOSET};
 typedef enum NodeStatus NodeStatus;
 
-struct OrderNode {
+class OrderNode {
+public:
+       OrderNode(uint64_t id);
+       void addNewIncomingEdge(OrderEdge *edge);
+       void addNewOutgoingEdge(OrderEdge *edge);
+
        uint64_t id;
-       HashSetOrderEdge * inEdges;
-       HashSetOrderEdge * outEdges;
        NodeStatus status;
        uint sccNum;
+       HashsetOrderEdge inEdges;
+       HashsetOrderEdge outEdges;
+       CMEMALLOC;
 };
-
-OrderNode *allocOrderNode(uint64_t id);
-void addNewIncomingEdge(OrderNode *node, OrderEdge *edge);
-void addNewOutgoingEdge(OrderNode *node, OrderEdge *edge);
-void deleteOrderNode(OrderNode *node);
-
 #endif/* ORDERNODE_H */