modified: makefile
[GalaxyCodeBases.git] / BGI / SOAPdenovo2 / standardPregraph / inc / def2.h
blobead7cfdf1bd12ef53fd12451970ac3e077bcb839
1 /*
2 * inc/def2.h
4 * Copyright (c) 2008-2012 BGI-Shenzhen <soap at genomics dot org dot cn>.
6 * This file is part of SOAPdenovo.
8 * SOAPdenovo is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
13 * SOAPdenovo is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with SOAPdenovo. If not, see <http://www.gnu.org/licenses/>.
23 #ifndef _DEF2
24 #define _DEF2
25 typedef char boolean;
26 typedef long long IDnum;
27 typedef double Time;
28 typedef long long Coordinate;
29 // Fibonacci heaps used mainly in Tour Bus
30 typedef struct fibheap FibHeap;
31 typedef struct fibheap_el FibHeapNode;
32 typedef struct dfibheap DFibHeap;
33 typedef struct dfibheap_el DFibHeapNode;
34 //Memory manager
35 typedef struct block_start
37 struct block_start * next;
38 } BLOCK_START;
40 typedef struct recycle_mark
42 struct recycle_mark * next;
43 } RECYCLE_MARK;
45 typedef struct mem_manager
47 BLOCK_START * block_list;
48 int index_in_block;
49 int items_per_block;
50 size_t item_size;
51 RECYCLE_MARK * recycle_list;
52 unsigned long long counter;
53 } MEM_MANAGER;
55 struct dfibheap_el
57 int dfhe_degree;
58 boolean dfhe_mark;
59 DFibHeapNode * dfhe_p;
60 DFibHeapNode * dfhe_child;
61 DFibHeapNode * dfhe_left;
62 DFibHeapNode * dfhe_right;
63 Time dfhe_key;
64 unsigned int dfhe_data;//void *dfhe_data;
66 #endif