VariantKey
5.4.1
Numerical Encoding for Human Genetic Variants
|
Functions to search values in binary files made of constant-length items. More...
#include <inttypes.h>
#include <fcntl.h>
#include <stdbool.h>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/stat.h>
Go to the source code of this file.
Data Structures | |
struct | mmfile_t |
Macros | |
#define | order_be_uint8_t(x) (x) |
< More... | |
#define | order_le_uint8_t(x) (x) |
Return LE uint8_t. More... | |
#define | order_be_uint16_t(x) (bswap_16(x)) |
Return BE uint16_t in the correct endianness order. More... | |
#define | order_be_uint32_t(x) (bswap_32(x)) |
Return BE uint32_t in the correct endianness order. More... | |
#define | order_be_uint64_t(x) (bswap_64(x)) |
Return BE uint64_t in the correct endianness order. More... | |
#define | order_le_uint16_t(x) (x) |
Return LE uint16_t in the correct endianness order. More... | |
#define | order_le_uint32_t(x) (x) |
Return LE uint32_t in the correct endianness order. More... | |
#define | order_le_uint64_t(x) (x) |
Return LE uint64_t in the correct endianness order. More... | |
#define | MAXCOLS 256 |
Maximum number of columns indexable. More... | |
#define | get_address(blklen, blkpos, item) (((blklen) * (item)) + (blkpos)) |
#define | get_middle_point(first, last) ((first) + (((last) - (first)) >> 1)) |
#define | get_src_offset(T, src, offset) ((const T *)((src) + (offset))) |
#define | define_bytes_to(O, T) |
#define | define_get_src_offset(T) |
#define | GET_MIDDLE_BLOCK(O, T) order_##O##_##T(*(get_src_offset(T, src, get_address(blklen, blkpos, middle)))) |
#define | FIND_START_LOOP_BLOCK(T) |
#define | FIND_END_LOOP_BLOCK |
#define | SUB_ITEM_VARS(T) |
#define | GET_ITEM_TASK(O, T) x = GET_MIDDLE_BLOCK(O, T); |
#define | COL_GET_ITEM_TASK x = *(src + middle); |
#define | GET_SUB_ITEM_TASK(O, T) x = ((GET_MIDDLE_BLOCK(O, T) >> rshift) & bitmask); |
#define | COL_GET_SUB_ITEM_TASK x = ((*(src + middle) >> rshift) & bitmask); |
#define | FIND_FIRST_INNER_CHECK |
#define | FIND_LAST_INNER_CHECK |
#define | HAS_NEXT_START_BLOCK |
#define | HAS_PREV_START_BLOCK |
#define | GET_POS_BLOCK(O, T) order_##O##_##T(*(get_src_offset(T, src, get_address(blklen, blkpos, *pos)))) |
#define | HAS_END_BLOCK(O, T) return (GET_POS_BLOCK(O, T) == search); |
#define | COL_HAS_END_BLOCK(T) return (*(src + *pos) == search); |
#define | HAS_SUB_END_BLOCK(O, T) return (((GET_POS_BLOCK(O, T) >> rshift) & bitmask) == search); |
#define | COL_HAS_SUB_END_BLOCK(T) return (((*(src + *pos) >> rshift) & bitmask) == search); |
#define | define_find_first(O, T) |
#define | define_find_first_sub(O, T) |
#define | define_find_last(O, T) |
#define | define_find_last_sub(O, T) |
#define | define_has_next(O, T) |
#define | define_has_next_sub(O, T) |
#define | define_has_prev(O, T) |
#define | define_has_prev_sub(O, T) |
#define | define_col_find_first(T) |
#define | define_col_find_first_sub(T) |
#define | define_col_find_last(T) |
#define | define_col_find_last_sub(T) |
#define | define_col_has_next(T) |
#define | define_col_has_next_sub(T) |
#define | define_col_has_prev(T) |
#define | define_col_has_prev_sub(T) |
Typedefs | |
typedef struct mmfile_t | mmfile_t |
Functions | |
static uint8_t | bytes_be_to_uint8_t (const uint8_t *src, uint64_t i) |
static uint16_t | bytes_be_to_uint16_t (const uint8_t *src, uint64_t i) |
static uint32_t | bytes_be_to_uint32_t (const uint8_t *src, uint64_t i) |
static uint64_t | bytes_be_to_uint64_t (const uint8_t *src, uint64_t i) |
static uint8_t | bytes_le_to_uint8_t (const uint8_t *src, uint64_t i) |
static uint16_t | bytes_le_to_uint16_t (const uint8_t *src, uint64_t i) |
static uint32_t | bytes_le_to_uint32_t (const uint8_t *src, uint64_t i) |
static uint64_t | bytes_le_to_uint64_t (const uint8_t *src, uint64_t i) |
static const uint8_t * | get_src_offset_uint8_t (const uint8_t *src, uint64_t offset) |
static const uint16_t * | get_src_offset_uint16_t (const uint8_t *src, uint64_t offset) |
static const uint32_t * | get_src_offset_uint32_t (const uint8_t *src, uint64_t offset) |
static const uint64_t * | get_src_offset_uint64_t (const uint8_t *src, uint64_t offset) |
static uint64_t | find_first_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_first_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_first_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_first_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_first_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_first_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_first_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_first_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_first_sub_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_first_sub_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_first_sub_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_first_sub_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_first_sub_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_first_sub_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_first_sub_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_first_sub_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_last_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_last_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_last_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_last_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_last_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_last_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_last_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_last_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_last_sub_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_last_sub_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_last_sub_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_last_sub_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | find_last_sub_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | find_last_sub_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | find_last_sub_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | find_last_sub_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint64_t search) |
static bool | has_next_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint8_t search) |
static bool | has_next_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint16_t search) |
static bool | has_next_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint32_t search) |
static bool | has_next_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint64_t search) |
static bool | has_next_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint8_t search) |
static bool | has_next_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint16_t search) |
static bool | has_next_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint32_t search) |
static bool | has_next_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t *pos, uint64_t last, uint64_t search) |
static bool | has_next_sub_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint8_t search) |
static bool | has_next_sub_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint16_t search) |
static bool | has_next_sub_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint32_t search) |
static bool | has_next_sub_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint64_t search) |
static bool | has_next_sub_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint8_t search) |
static bool | has_next_sub_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint16_t search) |
static bool | has_next_sub_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint32_t search) |
static bool | has_next_sub_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint64_t search) |
static bool | has_prev_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint8_t search) |
static bool | has_prev_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint16_t search) |
static bool | has_prev_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint32_t search) |
static bool | has_prev_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint64_t search) |
static bool | has_prev_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint8_t search) |
static bool | has_prev_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint16_t search) |
static bool | has_prev_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint32_t search) |
static bool | has_prev_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint64_t first, uint64_t *pos, uint64_t search) |
static bool | has_prev_sub_be_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint8_t search) |
static bool | has_prev_sub_be_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint16_t search) |
static bool | has_prev_sub_be_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint32_t search) |
static bool | has_prev_sub_be_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint64_t search) |
static bool | has_prev_sub_le_uint8_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint8_t search) |
static bool | has_prev_sub_le_uint16_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint16_t search) |
static bool | has_prev_sub_le_uint32_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint32_t search) |
static bool | has_prev_sub_le_uint64_t (const uint8_t *src, uint64_t blklen, uint64_t blkpos, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint64_t search) |
static uint64_t | col_find_first_uint8_t (const uint8_t *src, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | col_find_first_uint16_t (const uint16_t *src, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | col_find_first_uint32_t (const uint32_t *src, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | col_find_first_uint64_t (const uint64_t *src, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | col_find_first_sub_uint8_t (const uint8_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | col_find_first_sub_uint16_t (const uint16_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | col_find_first_sub_uint32_t (const uint32_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | col_find_first_sub_uint64_t (const uint64_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | col_find_last_uint8_t (const uint8_t *src, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | col_find_last_uint16_t (const uint16_t *src, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | col_find_last_uint32_t (const uint32_t *src, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | col_find_last_uint64_t (const uint64_t *src, uint64_t *first, uint64_t *last, uint64_t search) |
static uint64_t | col_find_last_sub_uint8_t (const uint8_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint8_t search) |
static uint64_t | col_find_last_sub_uint16_t (const uint16_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint16_t search) |
static uint64_t | col_find_last_sub_uint32_t (const uint32_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint32_t search) |
static uint64_t | col_find_last_sub_uint64_t (const uint64_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *first, uint64_t *last, uint64_t search) |
static bool | col_has_next_uint8_t (const uint8_t *src, uint64_t *pos, uint64_t last, uint8_t search) |
static bool | col_has_next_uint16_t (const uint16_t *src, uint64_t *pos, uint64_t last, uint16_t search) |
static bool | col_has_next_uint32_t (const uint32_t *src, uint64_t *pos, uint64_t last, uint32_t search) |
static bool | col_has_next_uint64_t (const uint64_t *src, uint64_t *pos, uint64_t last, uint64_t search) |
static bool | col_has_next_sub_uint8_t (const uint8_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint8_t search) |
static bool | col_has_next_sub_uint16_t (const uint16_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint16_t search) |
static bool | col_has_next_sub_uint32_t (const uint32_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint32_t search) |
static bool | col_has_next_sub_uint64_t (const uint64_t *src, uint8_t bitstart, uint8_t bitend, uint64_t *pos, uint64_t last, uint64_t search) |
static bool | col_has_prev_uint8_t (const uint8_t *src, uint64_t first, uint64_t *pos, uint8_t search) |
static bool | col_has_prev_uint16_t (const uint16_t *src, uint64_t first, uint64_t *pos, uint16_t search) |
static bool | col_has_prev_uint32_t (const uint32_t *src, uint64_t first, uint64_t *pos, uint32_t search) |
static bool | col_has_prev_uint64_t (const uint64_t *src, uint64_t first, uint64_t *pos, uint64_t search) |
static bool | col_has_prev_sub_uint8_t (const uint8_t *src, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint8_t search) |
static bool | col_has_prev_sub_uint16_t (const uint16_t *src, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint16_t search) |
static bool | col_has_prev_sub_uint32_t (const uint32_t *src, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint32_t search) |
static bool | col_has_prev_sub_uint64_t (const uint64_t *src, uint8_t bitstart, uint8_t bitend, uint64_t first, uint64_t *pos, uint64_t search) |
static void | parse_col_offset (mmfile_t *mf) |
static void | parse_info_binsrc (mmfile_t *mf) |
static void | parse_info_arrow (mmfile_t *mf) |
static void | parse_info_feather (mmfile_t *mf) |
static void | mmap_binfile (const char *file, mmfile_t *mf) |
static int | munmap_binfile (mmfile_t mf) |
The functions provided here allows to search unsigned integers in a binary file made of adjacent constant-length binary blocks sorted in ascending order.
For example, the first 4 bytes of each 8-bytes blocks below represent a uint32 in big-endian. The integers are sorted in ascending order.
This binary representation can be used to encode sortable key-value data, even with nested keys.
The xxd command-line application can be used to convert a binary file to hexdump and reverse. For example:
NOTE:
#define COL_GET_ITEM_TASK x = *(src + middle); |
#define COL_GET_SUB_ITEM_TASK x = ((*(src + middle) >> rshift) & bitmask); |
#define COL_HAS_END_BLOCK | ( | T | ) | return (*(src + *pos) == search); |
#define COL_HAS_SUB_END_BLOCK | ( | T | ) | return (((*(src + *pos) >> rshift) & bitmask) == search); |
#define define_bytes_to | ( | O, | |
T | |||
) |
Convert bytes to the specified type.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t. |
#define define_col_find_first | ( | T | ) |
Generic function to search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t. |
#define define_col_find_first_sub | ( | T | ) |
Generic function to search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_col_find_last | ( | T | ) |
Generic function to search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_col_find_last_sub | ( | T | ) |
Generic function to search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_col_has_next | ( | T | ) |
Generic function to check if the next item still matches the search value.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_col_has_next_sub | ( | T | ) |
Generic function to check if the next item still matches the search value.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_col_has_prev | ( | T | ) |
Generic function to check if the previous item still matches the search value.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_col_has_prev_sub | ( | T | ) |
Generic function to check if the previous item still matches the search value.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_find_first | ( | O, | |
T | |||
) |
Generic function to search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t. |
#define define_find_first_sub | ( | O, | |
T | |||
) |
Generic function to search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_find_last | ( | O, | |
T | |||
) |
Generic function to search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_find_last_sub | ( | O, | |
T | |||
) |
Generic function to search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_get_src_offset | ( | T | ) |
Define functions to return a pointer to the offset position.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t. |
#define define_has_next | ( | O, | |
T | |||
) |
Generic function to check if the next item still matches the search value.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_has_next_sub | ( | O, | |
T | |||
) |
Generic function to check if the next item still matches the search value.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_has_prev | ( | O, | |
T | |||
) |
Generic function to check if the previous item still matches the search value.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define define_has_prev_sub | ( | O, | |
T | |||
) |
Generic function to check if the previous item still matches the search value.
O | Endiannes: be or le. |
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t |
#define FIND_END_LOOP_BLOCK |
#define FIND_FIRST_INNER_CHECK |
#define FIND_LAST_INNER_CHECK |
#define FIND_START_LOOP_BLOCK | ( | T | ) |
#define get_address | ( | blklen, | |
blkpos, | |||
item | |||
) | (((blklen) * (item)) + (blkpos)) |
Returns the absolute file address position of the specified item (binary block).
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the value to search inside a binary block. |
item | Item number to search. |
#define GET_ITEM_TASK | ( | O, | |
T | |||
) | x = GET_MIDDLE_BLOCK(O, T); |
#define GET_MIDDLE_BLOCK | ( | O, | |
T | |||
) | order_##O##_##T(*(get_src_offset(T, src, get_address(blklen, blkpos, middle)))) |
#define get_middle_point | ( | first, | |
last | |||
) | ((first) + (((last) - (first)) >> 1)) |
Returns the middle point between two values.
first | First point (smaller point). |
last | Last point (bigger point). |
#define GET_POS_BLOCK | ( | O, | |
T | |||
) | order_##O##_##T(*(get_src_offset(T, src, get_address(blklen, blkpos, *pos)))) |
#define get_src_offset | ( | T, | |
src, | |||
offset | |||
) | ((const T *)((src) + (offset))) |
Returns the pointer at the specified byte offset.
T | Unsigned integer type, one of: uint8_t, uint16_t, uint32_t, uint64_t. |
src | Memory mapped file address. |
offset | Byte offset. |
#define GET_SUB_ITEM_TASK | ( | O, | |
T | |||
) | x = ((GET_MIDDLE_BLOCK(O, T) >> rshift) & bitmask); |
#define HAS_END_BLOCK | ( | O, | |
T | |||
) | return (GET_POS_BLOCK(O, T) == search); |
#define HAS_NEXT_START_BLOCK |
#define HAS_PREV_START_BLOCK |
#define HAS_SUB_END_BLOCK | ( | O, | |
T | |||
) | return (((GET_POS_BLOCK(O, T) >> rshift) & bitmask) == search); |
#define MAXCOLS 256 |
#define order_be_uint16_t | ( | x | ) | (bswap_16(x)) |
#define order_be_uint32_t | ( | x | ) | (bswap_32(x)) |
#define order_be_uint64_t | ( | x | ) | (bswap_64(x)) |
#define order_be_uint8_t | ( | x | ) | (x) |
Return BE uint8_t
#define order_le_uint16_t | ( | x | ) | (x) |
#define order_le_uint32_t | ( | x | ) | (x) |
#define order_le_uint64_t | ( | x | ) | (x) |
#define order_le_uint8_t | ( | x | ) | (x) |
#define SUB_ITEM_VARS | ( | T | ) |
|
inlinestatic |
Convert bytes in "be" format to uint16_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "be" format to uint32_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "be" format to uint64_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "be" format to uint8_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "le" format to uint16_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "le" format to uint32_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "le" format to uint64_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Convert bytes in "le" format to uint8_t .
src | Memory mapped file address. |
i | Start position. |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory buffer containing contiguos blocks of unsigned integers of the same type. The values must be encoded in Little-Endian format and sorted in ascending order.
src | Memory mapped file address. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_sub_uint16_t to get the next elements that still satisfy the search. The item returned by col_find_first_sub_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_sub_uint32_t to get the next elements that still satisfy the search. The item returned by col_find_first_sub_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_sub_uint64_t to get the next elements that still satisfy the search. The item returned by col_find_first_sub_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_sub_uint8_t to get the next elements that still satisfy the search. The item returned by col_find_first_sub_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_uint16_t to get the next elements that still satisfy the search. The item returned by col_find_first_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_uint32_t to get the next elements that still satisfy the search. The item returned by col_find_first_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_uint64_t to get the next elements that still satisfy the search. The item returned by col_find_first_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_first_uint8_t to get the next elements that still satisfy the search. The item returned by col_find_first_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_sub_uint16_t to get the previous elements that still satisfy the search. The item returned by col_find_last_sub_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_sub_uint32_t to get the previous elements that still satisfy the search. The item returned by col_find_last_sub_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_sub_uint64_t to get the previous elements that still satisfy the search. The item returned by col_find_last_sub_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_sub_uint8_t to get the previous elements that still satisfy the search. The item returned by col_find_last_sub_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_uint16_t to get the previous elements that still satisfy the search. The item returned by col_find_last_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_uint32_t to get the previous elements that still satisfy the search. The item returned by col_find_last_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_uint64_t to get the previous elements that still satisfy the search. The item returned by col_find_last_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory buffer containing contiguos blocks of sorted binary data of the same type still matches the search value. The values must be encoded in Little-Endian format and sorted in ascending order. This function can be used after find_last_uint8_t to get the previous elements that still satisfy the search. The item returned by col_find_last_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the first occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "be" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Search for the last occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data. The values in the file must be encoded in "le" format and sorted in ascending order.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | Pointer to the element from where to start the search (min value = 0). |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Return a pointer to the offset position.
src | Memory mapped file address. |
offset | Start position. |
|
inlinestatic |
Return a pointer to the offset position.
src | Memory mapped file address. |
offset | Start position. |
|
inlinestatic |
Return a pointer to the offset position.
src | Memory mapped file address. |
offset | Start position. |
|
inlinestatic |
Return a pointer to the offset position.
src | Memory mapped file address. |
offset | Start position. |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_uint16_t to get the next elements that still satisfy the search. The item returned by find_first_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_uint32_t to get the next elements that still satisfy the search. The item returned by find_first_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_uint64_t to get the next elements that still satisfy the search. The item returned by find_first_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_uint8_t to get the next elements that still satisfy the search. The item returned by find_first_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_uint16_t to get the next elements that still satisfy the search. The item returned by find_first_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_uint32_t to get the next elements that still satisfy the search. The item returned by find_first_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_uint64_t to get the next elements that still satisfy the search. The item returned by find_first_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_uint8_t to get the next elements that still satisfy the search. The item returned by find_first_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_sub_uint16_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_sub_uint32_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_sub_uint64_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_first_sub_uint8_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_sub_uint16_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_sub_uint32_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_sub_uint64_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the next occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_first_sub_uint8_t to get the next elements that still satisfy the search. The item returned by find_first_sub_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
pos | Pointer to the current item position. This will be updated to point to the next position. |
last | Pointer to the element (up to but not including) where to end the search (max value = nrows). |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_uint16_t to get the previous elements that still satisfy the search. The item returned by find_last_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_uint32_t to get the previous elements that still satisfy the search. The item returned by find_last_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_uint64_t to get the previous elements that still satisfy the search. The item returned by find_last_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_uint8_t to get the previous elements that still satisfy the search. The item returned by find_last_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_uint16_t to get the previous elements that still satisfy the search. The item returned by find_last_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_uint32_t to get the previous elements that still satisfy the search. The item returned by find_last_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_uint64_t to get the previous elements that still satisfy the search. The item returned by find_last_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_uint8_t to get the previous elements that still satisfy the search. The item returned by find_last_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_sub_uint16_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_sub_uint32_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_sub_uint64_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "be" format and sorted in ascending order. This function can be used after find_last_sub_uint8_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_sub_uint16_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint16_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint16_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_sub_uint32_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint32_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint32_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_sub_uint64_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint64_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint64_t ). |
|
inlinestatic |
Check if the previous occurrence of an unsigned integer on a memory mapped binary file containing adjacent blocks of sorted binary data still matches the search value. The values in the file must be encoded in "le" format and sorted in ascending order. This function can be used after find_last_sub_uint8_t to get the previous elements that still satisfy the search. The item returned by find_last_sub_uint8_t should be set as the "pos" parameter in this function.
src | Memory mapped file address. |
blklen | Length of the binary block in bytes. |
blkpos | Indicates the position of the number to search inside a binary block. |
bitstart | First bit position to consider (usually 0). |
bitend | Last bit position to consider (usually the last bit, e.g. 7 for uint8_t, 15 for uint16_t, etc). |
first | First element of the range to search (min value = 0). |
pos | Pointer to the current item position. This will be updated to point to the previous position. |
search | Unsigned number to search (type uint8_t ). |
|
inlinestatic |
Memory map the specified file.
file | Path to the file to map. |
mf | Structure containing the memory mapped file. |
|
inlinestatic |
Unmap and close the memory-mapped file.
mf | Descriptor of memory-mapped file. |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |