halapi hierarchichalalignmentformatapi

- Main Page
- Namespaces
- Classes
- Files

- File List

All Classes Namespaces Functions Pages
halDefs.h
1 /*
2 * Copyright (C) 2012 by Glenn Hickey (hickey@soe.ucsc.edu)
3 *
4 * Released under the MIT license, see LICENSE.txt
5 */
6
7 #ifndef _HALDEFS_H
8 #define _HALDEFS_H
9
10 #include <stdint.h>
11 #include <stdexcept>
12 #include <cstdlib>
13 #include <cmath>
14 #include <algorithm>
15 #include <limits>
16 #include "halCountedPtr.h"
17
25 #define HAL_VERSION 2.1
26
31 typedef int64_t hal_index_t;
32
36 typedef uint64_t hal_offset_t;
37
41 typedef uint64_t hal_size_t;
42
43 /*
44 * General usage exception class, used for all critical errors.
45 */
46 typedef std::runtime_error hal_exception;
47
48 namespace hal {
49
50 extern const hal_index_t NULL_INDEX;
51
52 // FORWARD DECLARATIONS
53 #define HAL_FORWARD_DEC_CLASS(T) \
54 class T;\
55 typedef counted_ptr<T> T ## Ptr;\
56 typedef counted_ptr<const T> T ## ConstPtr;
57
58 HAL_FORWARD_DEC_CLASS(Alignment)
59 HAL_FORWARD_DEC_CLASS(CLParser)
60 HAL_FORWARD_DEC_CLASS(Genome)
61 HAL_FORWARD_DEC_CLASS(MetaData)
62 HAL_FORWARD_DEC_CLASS(TopSegment)
63 HAL_FORWARD_DEC_CLASS(BottomSegment)
64 HAL_FORWARD_DEC_CLASS(Segment)
65 HAL_FORWARD_DEC_CLASS(Sequence)
66 HAL_FORWARD_DEC_CLASS(SlicedSegment)
67 HAL_FORWARD_DEC_CLASS(MappedSegment)
68 HAL_FORWARD_DEC_CLASS(SegmentIterator)
69 HAL_FORWARD_DEC_CLASS(GappedSegmentIterator)
70 HAL_FORWARD_DEC_CLASS(TopSegmentIterator)
71 HAL_FORWARD_DEC_CLASS(GappedTopSegmentIterator)
72 HAL_FORWARD_DEC_CLASS(BottomSegmentIterator)
73 HAL_FORWARD_DEC_CLASS(GappedBottomSegmentIterator)
74 HAL_FORWARD_DEC_CLASS(DNAIterator)
75 HAL_FORWARD_DEC_CLASS(SequenceIterator)
76 HAL_FORWARD_DEC_CLASS(ColumnIterator)
77 HAL_FORWARD_DEC_CLASS(Rearrangement)
78
79
80 }
81 #endif