-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathopt_dict_mixed.h
58 lines (45 loc) · 937 Bytes
/
opt_dict_mixed.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#define MAX_EDGE_NUM 20000
typedef struct {
int vert1, vert2;
float mm_score;
} Edge;
typedef struct {
int total_edge_num;
Edge *edges;
} MarkMatchGraph;
#define MAX_CHILD_NUM 50
typedef struct {
int parent;
int child_num;
int child[MAX_CHILD_NUM];
float mm_score; /* mismatch with its parent */
} MarkMatchTree;
#define MAX_TREE_NUM 500
#define MAX_TREE_NODE_NUM 100
typedef struct {
int total_node_num;
int nodes[MAX_TREE_NODE_NUM];
} TreeNodeSet;
#define MAX_NODE_DEGREE 50
typedef struct {
int edge;
int node;
} NodeEdgePair;
typedef struct {
int degree;
NodeEdgePair pairs[MAX_NODE_DEGREE];
} TreeNode;
typedef struct {
int root_num;
int leaf_num;
int single_root_num;
int one_child_node_num;
int two_child_node_num;
int mult_child_node_num;
int biggest_node;
float total_mm;
} TreeInfo;
typedef struct {
Mark *marks[MAX_MARK_NUM];
int mark_num;
} MarkPointerList;