9f86b2be00ba36a5f15f448cb7c6d8d7bf1ce6d3
[satune.git] / src / Encoders / ordernode.c
1 #include "ordernode.h"
2 #include "orderedge.h"
3
4 OrderNode* allocOrderNode(uint64_t id) {
5         OrderNode* This = (OrderNode*) ourmalloc(sizeof(OrderNode));
6         This->id = id;
7         This->inEdges = allocHashSetOrderEdge(HT_INITIAL_CAPACITY, HT_DEFAULT_FACTOR);
8         This->outEdges = allocHashSetOrderEdge(HT_INITIAL_CAPACITY, HT_DEFAULT_FACTOR);
9         This->status=NOTVISITED;
10         return This;
11 }
12
13 void addNewIncomingEdge(OrderNode* node, OrderEdge* edge){
14         ASSERT(!containsHashSetOrderEdge(node->inEdges, edge)); // Only for testing ... Should be removed after testing
15         addHashSetOrderEdge(node->inEdges, edge);
16 }
17
18 void addNewOutgoingEdge(OrderNode* node, OrderEdge* edge){
19         ASSERT(!containsHashSetOrderEdge(node->outEdges, edge));
20         addHashSetOrderEdge(node->outEdges, edge);
21 }
22
23 void deleteOrderNode(OrderNode* node){
24         deleteHashSetOrderEdge(node->inEdges);
25         deleteHashSetOrderEdge(node->outEdges);
26         ourfree(node);
27 }