base version
[satune.git] / src / Encoders / orderedge.h
1 /* 
2  * File:   orderedge.h
3  * Author: hamed
4  *
5  * Created on August 7, 2017, 3:44 PM
6  */
7
8 #ifndef ORDEREDGE_H
9 #define ORDEREDGE_H
10 #include "classlist.h"
11 #include "mymemory.h"
12
13 struct OrderEdge {
14         OrderNode* source;
15         OrderNode* sink;
16         unsigned int polPos:1;
17         unsigned int polNeg:1;
18         unsigned int mustPos:1;
19         unsigned int mustNeg:1;
20         unsigned int pseudoPos:1;
21 };
22
23 OrderEdge* allocOrderEdge(OrderNode* begin, OrderNode* end);
24 void deleteOrderEdge(OrderEdge* This);
25 void setPseudoPos(OrderGraph *graph, OrderEdge* edge);
26 void setMustPos(OrderGraph *graph, OrderEdge *edge);
27 void setMustNeg(OrderGraph *graph, OrderEdge *edge);
28 void setPolPos(OrderGraph *graph, OrderEdge *edge);
29 void setPolNeg(OrderGraph *graph, OrderEdge *edge);
30
31 #endif /* ORDEREDGE_H */
32