libBigWig
Loading...
Searching...
No Matches
bwValues.h
Go to the documentation of this file.
1#ifndef LIBBIGWIG_VALUES_H
2#define LIBBIGWIG_VALUES_H
3
4#include <inttypes.h>
12//N.B., coordinates are still 0-based half open!
20typedef struct bwRTreeNode_t {
21 uint8_t isLeaf;
22 //1 byte of padding
23 uint16_t nChildren;
24 uint32_t *chrIdxStart;
25 uint32_t *baseStart;
26 uint32_t *chrIdxEnd;
27 uint32_t *baseEnd;
28 uint64_t *dataOffset;
29 union {
30 uint64_t *size;
32 } x;
34
38//TODO rootOffset is pointless, it's 48bytes after the indexOffset
39typedef struct {
40 uint32_t blockSize;
41 uint64_t nItems;
42 uint32_t chrIdxStart;
43 uint32_t baseStart;
44 uint32_t chrIdxEnd;
45 uint32_t baseEnd;
46 uint64_t idxSize;
47 uint32_t nItemsPerSlot;
48 //There's 4 bytes of padding in the file here
49 uint64_t rootOffset;
51} bwRTree_t;
52
56typedef struct {
57 uint64_t n;
58 uint64_t *offset;
59 uint64_t *size;
61
67typedef struct {
68 uint32_t tid;
69 uint32_t start;
70 uint32_t end;
71 uint32_t step;
72 uint32_t span;
73 uint8_t type;
74 uint16_t nItems;
76
77#endif // LIBBIGWIG_VALUES_H
struct bwRTreeNode_t bwRTreeNode_t
A node within an R-tree holding the index for data.
The header section of a given data block.
Definition bwValues.h:67
uint32_t step
Definition bwValues.h:71
uint32_t tid
Definition bwValues.h:68
uint32_t end
Definition bwValues.h:70
uint8_t type
Definition bwValues.h:73
uint16_t nItems
Definition bwValues.h:74
uint32_t start
Definition bwValues.h:69
uint32_t span
Definition bwValues.h:72
This structure holds the data blocks that overlap a given interval.
Definition bwValues.h:56
uint64_t * offset
Definition bwValues.h:58
uint64_t n
Definition bwValues.h:57
uint64_t * size
Definition bwValues.h:59
A node within an R-tree holding the index for data.
Definition bwValues.h:20
uint32_t * baseEnd
Definition bwValues.h:27
uint16_t nChildren
Definition bwValues.h:23
uint32_t * chrIdxStart
Definition bwValues.h:24
uint32_t * chrIdxEnd
Definition bwValues.h:26
uint64_t * dataOffset
Definition bwValues.h:28
uint8_t isLeaf
Definition bwValues.h:21
uint64_t * size
Definition bwValues.h:30
struct bwRTreeNode_t ** child
Definition bwValues.h:31
uint32_t * baseStart
Definition bwValues.h:25
union bwRTreeNode_t::@1 x
Definition bwValues.h:39
uint64_t idxSize
Definition bwValues.h:46
uint32_t chrIdxStart
Definition bwValues.h:42
uint32_t blockSize
Definition bwValues.h:40
uint32_t chrIdxEnd
Definition bwValues.h:44
uint64_t nItems
Definition bwValues.h:41
uint32_t baseEnd
Definition bwValues.h:45
uint64_t rootOffset
Definition bwValues.h:49
bwRTreeNode_t * root
Definition bwValues.h:50
uint32_t baseStart
Definition bwValues.h:43
uint32_t nItemsPerSlot
Definition bwValues.h:47