liba 0.1.15
An algorithm library based on C/C++
|
Data Structures | |
union | a_cast |
Macros | |
#define | A_BUILD_ASSERT(x) |
#define | A_BUILD_BUG_ON(x) |
#define | a_cast_r(T, x) |
#define | a_cast_d(T, x) |
#define | a_cast_s(T, x) |
#define | a_cast_c(T, x) |
#define | A_CAST_3(a, b, c) |
#define | A_CAST_2(a, b) |
#define | A_CAST_1(a) |
#define | A_NULL NULL |
#define | a_void_c(_, x) |
#define | a_void_(_, x) |
#define | a_void void |
#define | A_TRUE true |
#define | A_FALSE false |
#define | A_BOOL bool |
#define | a_bool_c(x) |
#define | a_bool A_BOOL |
#define | A_INT int |
#define | A_INT_MIN INT_MIN |
#define | A_INT_MAX INT_MAX |
#define | a_int_c(x) |
#define | a_int_(_, x) |
#define | a_int A_INT |
#define | A_UINT unsigned int |
#define | A_UINT_MAX UINT_MAX |
#define | a_uint_c(x) |
#define | a_uint_(_, x) |
#define | a_uint A_UINT |
#define | A_SHRT short |
#define | A_SHRT_MIN SHRT_MIN |
#define | A_SHRT_MAX SHRT_MAX |
#define | a_shrt_c(x) |
#define | a_shrt_(_, x) |
#define | a_shrt A_SHRT |
#define | A_USHRT unsigned short |
#define | A_USHRT_MAX USHRT_MAX |
#define | a_ushrt_c(x) |
#define | a_ushrt_(_, x) |
#define | a_ushrt A_USHRT |
#define | A_LONG long |
#define | A_LONG_MIN LONG_MIN |
#define | A_LONG_MAX LONG_MAX |
#define | a_long_c(x) |
#define | a_long_(_, x) |
#define | a_long A_LONG |
#define | A_ULONG unsigned long |
#define | A_ULONG_MAX ULONG_MAX |
#define | a_ulong_c(x) |
#define | a_ulong_(_, x) |
#define | a_ulong A_ULONG |
#define | A_BYTE unsigned char |
#define | A_BYTE_MAX UCHAR_MAX |
#define | a_byte_c(x) |
#define | a_byte_(_, x) |
#define | a_byte A_BYTE |
#define | A_C8 char |
#define | A_C8_MIN CHAR_MIN |
#define | A_C8_MAX CHAR_MAX |
#define | a_c8_c(x) |
#define | a_c8_(_, x) |
#define | a_c8 A_C8 |
#define | A_I8 int8_t |
#define | a_i8_c(x) |
#define | a_i8_(_, x) |
#define | a_i8 A_I8 |
#define | A_U8 uint8_t |
#define | a_u8_c(x) |
#define | a_u8_(_, x) |
#define | a_u8 A_U8 |
#define | A_I16 int16_t |
#define | a_i16_c(x) |
#define | a_i16_(_, x) |
#define | a_i16 A_I16 |
#define | A_U16 uint16_t |
#define | a_u16_c(x) |
#define | a_u16_(_, x) |
#define | a_u16 A_U16 |
#define | A_I32 int32_t |
#define | a_i32_c(x) |
#define | a_i32_(_, x) |
#define | a_i32 A_I32 |
#define | A_U32 uint32_t |
#define | a_u32_c(x) |
#define | a_u32_(_, x) |
#define | a_u32 A_U32 |
#define | A_I64 int64_t |
#define | a_i64_c(x) |
#define | a_i64_(_, x) |
#define | a_i64 A_I64 |
#define | A_U64 uint64_t |
#define | a_u64_c(x) |
#define | a_u64_(_, x) |
#define | a_u64 A_U64 |
#define | A_IMAX intmax_t |
#define | a_imax_c(x) |
#define | a_imax_(_, x) |
#define | a_imax A_IMAX |
#define | A_UMAX uintmax_t |
#define | a_umax_c(x) |
#define | a_umax_(_, x) |
#define | a_umax A_UMAX |
#define | A_IPTR intptr_t |
#define | a_iptr_c(x) |
#define | a_iptr_(_, x) |
#define | a_iptr A_IPTR |
#define | A_UPTR uintptr_t |
#define | a_uptr_c(x) |
#define | a_uptr_(_, x) |
#define | a_uptr A_UPTR |
#define | A_DIFF ptrdiff_t |
#define | a_diff_c(x) |
#define | a_diff_(_, x) |
#define | a_diff A_DIFF |
#define | A_SIZE size_t |
#define | a_size_c(x) |
#define | a_size_(_, x) |
#define | a_size A_SIZE |
#define | A_F16_NNAN A_U16_C(0xFE00) |
#define | A_F16_PNAN A_U16_C(0x7E00) |
#define | A_F16_NINF A_U16_C(0xFC00) |
#define | A_F16_PINF A_U16_C(0x7C00) |
#define | A_F32 float |
#define | A_F32_C(X) |
#define | A_F32_F(F) |
#define | A_F32_DIG FLT_DIG |
#define | A_F32_EPSILON FLT_EPSILON |
#define | A_F32_MANT_DIG FLT_MANT_DIG |
#define | A_F32_MAX FLT_MAX |
#define | A_F32_MAX_10_EXP FLT_MAX_10_EXP |
#define | A_F32_MAX_EXP FLT_MAX_EXP |
#define | A_F32_MIN FLT_MIN |
#define | A_F32_MIN_10_EXP FLT_MIN_10_EXP |
#define | A_F32_MIN_EXP FLT_MIN_EXP |
#define | A_F32_INF a_cast_s(A_F32, A_F64_INF) |
#define | A_F32_NAN (A_F32_C(0.0) * A_F32_INF) |
#define | A_F32_NNAN A_U32_C(0xFFC00000) |
#define | A_F32_PNAN A_U32_C(0x7FC00000) |
#define | A_F32_NINF A_U32_C(0xFF800000) |
#define | A_F32_PINF A_U32_C(0x7F800000) |
#define | A_F32_PRI(F, C) |
#define | A_F32_SCN(F, C) |
#define | a_f32_c(x) |
#define | a_f32_(_, x) |
#define | a_f32 A_F32 |
#define | A_F64 double |
#define | A_F64_C(X) |
#define | A_F64_F(F) |
#define | A_F64_DIG DBL_DIG |
#define | A_F64_EPSILON DBL_EPSILON |
#define | A_F64_MANT_DIG DBL_MANT_DIG |
#define | A_F64_MAX DBL_MAX |
#define | A_F64_MAX_10_EXP DBL_MAX_10_EXP |
#define | A_F64_MAX_EXP DBL_MAX_EXP |
#define | A_F64_MIN DBL_MIN |
#define | A_F64_MIN_10_EXP DBL_MIN_10_EXP |
#define | A_F64_MIN_EXP DBL_MIN_EXP |
#define | A_F64_INF (DBL_MAX * DBL_MAX) |
#define | A_F64_NAN (A_F64_C(0.0) * A_F64_INF) |
#define | A_F64_NNAN A_U64_C(0xFFF8000000000000) |
#define | A_F64_PNAN A_U64_C(0x7FF8000000000000) |
#define | A_F64_NINF A_U64_C(0xFFF0000000000000) |
#define | A_F64_PINF A_U64_C(0x7FF0000000000000) |
#define | A_F64_PRI(F, C) |
#define | A_F64_SCN(F, C) |
#define | a_f64_c(x) |
#define | a_f64_(_, x) |
#define | a_f64 A_F64 |
#define | A_SQ(x) |
square of x, \( x^2 \) | |
#define | A_ABS(x) |
absolute value of x, \( |x| \) | |
#define | A_ABS_(f, g) |
absolute value of f-g, \( |f-g| \) | |
#define | A_MIN(x, y) |
minimum value between x and y | |
#define | A_MAX(x, y) |
maximum value between x and y | |
#define | A_SGN(x) |
signum function, \( \texttt{sgn}(x)=\begin{cases}+1&x>0\\0&0\\-1&x<0\end{cases} \) | |
#define | A_SGN_(f, g) |
signum function, \( \texttt{sgn}(f,g)=\begin{cases}+1&f>g\\0&f=g\\-1&f<g\end{cases} \) | |
#define | A_SAT(x, min, max) |
saturation value of x, \( \texttt{sat}(x,min,max)=\begin{cases}min&min>x\\max&x>max\\x&else\end{cases} \) | |
#define | A_LEN(a) |
number of elements in a visible array | |
#define | a_offsetof(type, member) |
offset of a structure member | |
#define | a_container_of(ptr, type, member) |
container of a structure member | |
#define | a_size_down(a, n) |
round down size n to be a multiple of a | |
#define | a_size_up(a, n) |
round up size n to be a multiple of a | |
#define | a_align_down(a, p) |
round pointer p down to the closest a , aligned address <= p | |
#define | a_align_up(a, p) |
round pointer p up to the closest a , aligned address >= p | |
#define | a_forenum(I, i, n) |
iterate from 0 to n and not include n | |
#define | a_forenum_reverse(I, i, n) |
iterate from n to 0 and not include n | |
#define | a_foreach(T, P, it, ptr, num) |
iterate over an array | |
#define | a_forsafe(T, P, it, ptr, num) |
iterate over an array | |
#define | a_foreach_reverse(T, P, it, ptr, num) |
iterate over an array in reverse | |
#define | a_forsafe_reverse(T, P, it, ptr, num) |
iterate over an array in reverse | |
#define | a_iterate(T, P, it, ptr, end) |
iterate over an array | |
#define | a_iterate_reverse(T, P, it, ptr, end) |
iterate over an array in reverse | |
#define | A_ALLOC(alloc, addr, size) |
declare allocation function | |
#define | a_new(T, ptr, num) |
#define | a_die(ptr) |
Typedefs | |
typedef union a_cast | a_cast |
Enumerations | |
enum | { A_SUCCESS , A_FAILURE , A_INVALID } |
enumeration for return values More... | |
Functions | |
uint8_t | a_u8_rev (uint8_t x) |
reverse the bits in an 8-bit unsigned integer | |
uint16_t | a_u16_rev (uint16_t x) |
reverse the bits in a 16-bit unsigned integer | |
uint16_t | a_u16_getl (void const *b) |
uint16_t | a_u16_getb (void const *b) |
void | a_u16_setl (void *b, uint16_t x) |
void | a_u16_setb (void *b, uint16_t x) |
uint32_t | a_u32_rev (uint32_t x) |
reverse the bits in a 32-bit unsigned integer | |
uint32_t | a_u32_getl (void const *b) |
uint32_t | a_u32_getb (void const *b) |
void | a_u32_setl (void *b, uint32_t x) |
void | a_u32_setb (void *b, uint32_t x) |
uint64_t | a_u64_rev (uint64_t x) |
reverse the bits in a 64-bit unsigned integer | |
uint64_t | a_u64_getl (void const *b) |
uint64_t | a_u64_getb (void const *b) |
void | a_u64_setl (void *b, uint64_t x) |
void | a_u64_setb (void *b, uint64_t x) |
void * | a_copy (void *__restrict dst, void const *__restrict src, size_t siz) |
copy one buffer to another | |
void * | a_move (void *dst, void const *src, size_t siz) |
move one buffer to another | |
void * | a_fill (void *ptr, size_t siz, int val) |
fill a buffer with a character | |
void * | a_zero (void *ptr, size_t siz) |
fill a buffer with zero | |
void | a_swap (void *lhs, void *rhs, size_t siz) |
swap two different memory blocks of the same size | |
uint32_t | a_hash_bkdr (void const *str, uint32_t val) |
a hash function whose prime number is 131 | |
uint32_t | a_hash_bkdr_ (void const *ptr, size_t siz, uint32_t val) |
a hash function whose prime number is 131 | |
uint32_t | a_hash_sdbm (void const *str, uint32_t val) |
a hash function whose prime number is 65599 | |
uint32_t | a_hash_sdbm_ (void const *ptr, size_t siz, uint32_t val) |
a hash function whose prime number is 65599 | |
void | a_float_push_fore (double *p, size_t n, double x) |
push an element into the front of a float array | |
void | a_float_push_back (double *p, size_t n, double x) |
push an element into the end of a float array | |
void | a_float_push_fore_ (double *block_p, size_t block_n, double const *cache_p, size_t cache_n) |
push the elements into the front of a float array | |
void | a_float_push_back_ (double *block_p, size_t block_n, double const *cache_p, size_t cache_n) |
push the elements into the end of a float array | |
void | a_float_roll_fore (double *p, size_t n) |
roll forward the elements of a float array circularly | |
void | a_float_roll_back (double *p, size_t n) |
roll backward the elements of a float array circularly | |
void | a_float_roll_fore_ (double *block_p, size_t block_n, double *shift_p, size_t shift_n) |
roll forward the elements of a float array circularly | |
void | a_float_roll_back_ (double *block_p, size_t block_n, double *shift_p, size_t shift_n) |
roll backward the elements of a float array circularly | |
double | a_float_mean (double const *p, size_t n) |
calculate the mean of a float array | |
double | a_float_sum (double const *p, size_t n) |
calculate the sum of a float array | |
double | a_float_sum1 (double const *p, size_t n) |
calculate the absolute sum of a float array | |
double | a_float_sum2 (double const *p, size_t n) |
calculate the sum of squares of a float array | |
void * | a_alloc_ (void *addr, size_t size) |
default allocation function | |
Variables | |
void *(* | a_alloc )(void *addr, size_t size) |
allocation function pointer | |
#define A_ABS | ( | x | ) |
absolute value of x, \( |x| \)
#define A_ABS_ | ( | f, | |
g ) |
absolute value of f-g, \( |f-g| \)
#define a_align_down | ( | a, | |
p ) |
#define a_align_up | ( | a, | |
p ) |
#define A_ALLOC | ( | alloc, | |
addr, | |||
size ) |
#define a_bool A_BOOL |
type, capable of holding one of the two values: 1 and 0
#define a_bool_c | ( | x | ) |
static cast to a_bool
#define A_BUILD_ASSERT | ( | x | ) |
assert a build-time dependency, as an expression
#define A_BUILD_BUG_ON | ( | x | ) |
#define a_byte A_BYTE |
type for unsigned character representation
#define a_byte_ | ( | _, | |
x ) |
#define a_byte_c | ( | x | ) |
static cast to a_byte
#define a_c8 A_C8 |
type for character representation
#define a_c8_ | ( | _, | |
x ) |
#define a_c8_c | ( | x | ) |
static cast to a_c8
#define A_CAST_1 | ( | a | ) |
#define A_CAST_2 | ( | a, | |
b ) |
#define A_CAST_3 | ( | a, | |
b, | |||
c ) |
#define a_cast_c | ( | T, | |
x ) |
#define a_cast_d | ( | T, | |
x ) |
#define a_cast_r | ( | T, | |
x ) |
#define a_cast_s | ( | T, | |
x ) |
#define a_container_of | ( | ptr, | |
type, | |||
member ) |
container of a structure member
ptr | pointer to a member variable |
type | structure type |
member | member variable |
#define a_die | ( | ptr | ) |
#define a_diff A_DIFF |
signed integer type returned when subtracting two pointers
#define a_diff_ | ( | _, | |
x ) |
#define a_diff_c | ( | x | ) |
static cast to a_diff
#define a_f32 A_F32 |
single precision floating point type. Matches IEEE-754 binary32 format if supported.
#define a_f32_ | ( | _, | |
x ) |
#define A_F32_C | ( | X | ) |
#define a_f32_c | ( | x | ) |
static cast to a_f32
#define A_F32_F | ( | F | ) |
#define A_F32_PRI | ( | F, | |
C ) |
format constants for the fprintf family of functions
#define A_F32_SCN | ( | F, | |
C ) |
format constants for the fscanf family of functions
#define a_f64 A_F64 |
double precision floating point type. Matches IEEE-754 binary64 format if supported.
#define a_f64_ | ( | _, | |
x ) |
#define A_F64_C | ( | X | ) |
#define a_f64_c | ( | x | ) |
static cast to a_f64
#define A_F64_F | ( | F | ) |
#define A_F64_PRI | ( | F, | |
C ) |
format constants for the fprintf family of functions
#define A_F64_SCN | ( | F, | |
C ) |
format constants for the fscanf family of functions
#define a_foreach | ( | T, | |
P, | |||
it, | |||
ptr, | |||
num ) |
iterate over an array
T | the prefix of the element type |
P | the suffix of the element type |
it | pointer to the current element |
ptr | starting address of this array |
num | number of elements in this array |
#define a_foreach_reverse | ( | T, | |
P, | |||
it, | |||
ptr, | |||
num ) |
iterate over an array in reverse
T | the prefix of the element type |
P | the suffix of the element type |
it | pointer to the current element |
ptr | starting address of this array |
num | number of elements in this array |
#define a_forenum | ( | I, | |
i, | |||
n ) |
iterate from 0 to n and not include n
I | index type of the iteration |
i | index variable of the iteration |
n | final value of the iteration |
#define a_forenum_reverse | ( | I, | |
i, | |||
n ) |
iterate from n to 0 and not include n
I | index type of the iteration |
i | index variable of the iteration |
n | final value of the iteration |
#define a_forsafe | ( | T, | |
P, | |||
it, | |||
ptr, | |||
num ) |
iterate over an array
T | the prefix of the element type |
P | the suffix of the element type |
it | pointer to the current element |
ptr | starting address of this array |
num | number of elements in this array |
#define a_forsafe_reverse | ( | T, | |
P, | |||
it, | |||
ptr, | |||
num ) |
iterate over an array in reverse
T | the prefix of the element type |
P | the suffix of the element type |
it | pointer to the current element |
ptr | starting address of this array |
num | number of elements in this array |
#define a_i16 A_I16 |
signed integer type with width of exactly 16 bits
#define a_i16_ | ( | _, | |
x ) |
#define a_i16_c | ( | x | ) |
static cast to a_i16
#define a_i32 A_I32 |
signed integer type with width of exactly 32 bits
#define a_i32_ | ( | _, | |
x ) |
#define a_i32_c | ( | x | ) |
static cast to a_i32
#define a_i64 A_I64 |
signed integer type with width of exactly 64 bits
#define a_i64_ | ( | _, | |
x ) |
#define a_i64_c | ( | x | ) |
static cast to a_i64
#define a_i8 A_I8 |
signed integer type with width of exactly 8 bits
#define a_i8_ | ( | _, | |
x ) |
#define a_i8_c | ( | x | ) |
static cast to a_i8
#define a_imax A_IMAX |
maximum-width signed integer type
#define a_imax_ | ( | _, | |
x ) |
#define a_imax_c | ( | x | ) |
static cast to a_imax
#define a_int A_INT |
signed integer type is guaranteed to be at least 16 bits
#define a_int_ | ( | _, | |
x ) |
#define a_int_c | ( | x | ) |
static cast to a_int
#define a_iptr A_IPTR |
signed integer type capable of holding a pointer to void
#define a_iptr_ | ( | _, | |
x ) |
#define a_iptr_c | ( | x | ) |
static cast to a_iptr
#define a_iterate | ( | T, | |
P, | |||
it, | |||
ptr, | |||
end ) |
iterate over an array
T | the prefix of the element type |
P | the suffix of the element type |
it | pointer to the current element |
ptr | starting address of this array |
end | the end address of this array |
#define a_iterate_reverse | ( | T, | |
P, | |||
it, | |||
ptr, | |||
end ) |
iterate over an array in reverse
T | the prefix of the element type |
P | the suffix of the element type |
it | pointer to the current element |
ptr | starting address of this array |
end | the end address of this array |
#define A_LEN | ( | a | ) |
number of elements in a visible array
a | must be a visible array |
#define a_long A_LONG |
signed integer type is guaranteed to be at least 32 bits
#define a_long_ | ( | _, | |
x ) |
#define a_long_c | ( | x | ) |
static cast to a_long
#define A_MAX | ( | x, | |
y ) |
maximum value between x and y
#define A_MIN | ( | x, | |
y ) |
minimum value between x and y
#define a_new | ( | T, | |
ptr, | |||
num ) |
#define a_offsetof | ( | type, | |
member ) |
offset of a structure member
type | structure type |
member | member variable |
#define A_SAT | ( | x, | |
min, | |||
max ) |
saturation value of x, \( \texttt{sat}(x,min,max)=\begin{cases}min&min>x\\max&x>max\\x&else\end{cases} \)
#define A_SGN | ( | x | ) |
signum function, \( \texttt{sgn}(x)=\begin{cases}+1&x>0\\0&0\\-1&x<0\end{cases} \)
#define A_SGN_ | ( | f, | |
g ) |
signum function, \( \texttt{sgn}(f,g)=\begin{cases}+1&f>g\\0&f=g\\-1&f<g\end{cases} \)
#define a_shrt A_SHRT |
signed integer type is guaranteed to be at least 16 bits
#define a_shrt_ | ( | _, | |
x ) |
#define a_shrt_c | ( | x | ) |
static cast to a_shrt
#define a_size A_SIZE |
unsigned integer type returned by the sizeof operator
#define a_size_ | ( | _, | |
x ) |
#define a_size_c | ( | x | ) |
static cast to a_size
#define a_size_down | ( | a, | |
n ) |
#define a_size_up | ( | a, | |
n ) |
#define A_SQ | ( | x | ) |
square of x, \( x^2 \)
#define a_u16 A_U16 |
unsigned integer type with width of exactly 16 bits
#define a_u16_ | ( | _, | |
x ) |
#define a_u16_c | ( | x | ) |
static cast to a_u16
#define a_u32 A_U32 |
unsigned integer type with width of exactly 32 bits
#define a_u32_ | ( | _, | |
x ) |
#define a_u32_c | ( | x | ) |
static cast to a_u32
#define a_u64 A_U64 |
unsigned integer type with width of exactly 64 bits
#define a_u64_ | ( | _, | |
x ) |
#define a_u64_c | ( | x | ) |
static cast to a_u64
#define a_u8 A_U8 |
unsigned integer type with width of exactly 8 bits
#define a_u8_ | ( | _, | |
x ) |
#define a_u8_c | ( | x | ) |
static cast to a_u8
#define a_uint A_UINT |
unsigned integer type is guaranteed to be at least 16 bits
#define a_uint_ | ( | _, | |
x ) |
#define a_uint_c | ( | x | ) |
static cast to a_uint
#define a_ulong A_ULONG |
unsigned integer type is guaranteed to be at least 32 bits
#define a_ulong_ | ( | _, | |
x ) |
#define a_ulong_c | ( | x | ) |
static cast to a_ulong
#define a_umax A_UMAX |
maximum-width unsigned integer type
#define a_umax_ | ( | _, | |
x ) |
#define a_umax_c | ( | x | ) |
static cast to a_umax
#define a_uptr A_UPTR |
unsigned integer type capable of holding a pointer to void
#define a_uptr_ | ( | _, | |
x ) |
#define a_uptr_c | ( | x | ) |
static cast to a_uptr
#define a_ushrt A_USHRT |
unsigned integer type is guaranteed to be at least 16 bits
#define a_ushrt_ | ( | _, | |
x ) |
#define a_ushrt_c | ( | x | ) |
static cast to a_ushrt
#define a_void void |
incomplete type or no parameter or no return value
#define a_void_ | ( | _, | |
x ) |
#define a_void_c | ( | _, | |
x ) |
static cast to a_void
anonymous enum |
void * a_alloc_ | ( | void * | addr, |
size_t | size ) |
default allocation function
[in] | addr | address of memory block |
[in] | size | new size of memory block |
void * a_copy | ( | void *__restrict | dst, |
void const *__restrict | src, | ||
size_t | siz ) |
copy one buffer to another
[in] | dst | pointer to the object to copy to |
[in] | src | pointer to the object to copy from |
[in] | siz | number of bytes to copy |
void * a_fill | ( | void * | ptr, |
size_t | siz, | ||
int | val ) |
fill a buffer with a character
[in] | ptr | pointer to the object to fill |
[in] | siz | number of bytes to fill |
[in] | val | fill byte |
double a_float_mean | ( | double const * | p, |
size_t | n ) |
calculate the mean of a float array
[in] | p | points to a float array |
[in] | n | number of a float array |
void a_float_push_back | ( | double * | p, |
size_t | n, | ||
double | x ) |
push an element into the end of a float array
[in] | p | points to a float array |
[in] | n | number of a float array |
[in] | x | value |
void a_float_push_back_ | ( | double * | block_p, |
size_t | block_n, | ||
double const * | cache_p, | ||
size_t | cache_n ) |
push the elements into the end of a float array
[in] | block_p | points to a float array |
[in] | block_n | number of a float array |
[in] | cache_p | points to a cache array |
[in] | cache_n | number of a cache array |
void a_float_push_fore | ( | double * | p, |
size_t | n, | ||
double | x ) |
push an element into the front of a float array
[in] | p | points to a float array |
[in] | n | number of a float array |
[in] | x | value |
void a_float_push_fore_ | ( | double * | block_p, |
size_t | block_n, | ||
double const * | cache_p, | ||
size_t | cache_n ) |
push the elements into the front of a float array
[in] | block_p | points to a float array |
[in] | block_n | number of a float array |
[in] | cache_p | points to a cache array |
[in] | cache_n | number of a cache array |
void a_float_roll_back | ( | double * | p, |
size_t | n ) |
roll backward the elements of a float array circularly
[in] | p | points to a float array |
[in] | n | number of a float array |
void a_float_roll_back_ | ( | double * | block_p, |
size_t | block_n, | ||
double * | shift_p, | ||
size_t | shift_n ) |
roll backward the elements of a float array circularly
[in] | block_p | points to a float array |
[in] | block_n | number of a float array |
[in] | shift_p | points to a shift array |
[in] | shift_n | number of a shift array |
void a_float_roll_fore | ( | double * | p, |
size_t | n ) |
roll forward the elements of a float array circularly
[in] | p | points to a float array |
[in] | n | number of a float array |
void a_float_roll_fore_ | ( | double * | block_p, |
size_t | block_n, | ||
double * | shift_p, | ||
size_t | shift_n ) |
roll forward the elements of a float array circularly
[in] | block_p | points to a float array |
[in] | block_n | number of a float array |
[in] | shift_p | points to a shift array |
[in] | shift_n | number of a shift array |
double a_float_sum | ( | double const * | p, |
size_t | n ) |
calculate the sum of a float array
[in] | p | points to a float array |
[in] | n | number of a float array |
double a_float_sum1 | ( | double const * | p, |
size_t | n ) |
calculate the absolute sum of a float array
[in] | p | points to a float array |
[in] | n | number of a float array |
double a_float_sum2 | ( | double const * | p, |
size_t | n ) |
calculate the sum of squares of a float array
[in] | p | points to a float array |
[in] | n | number of a float array |
uint32_t a_hash_bkdr | ( | void const * | str, |
uint32_t | val ) |
a hash function whose prime number is 131
[in] | str | string to be processed |
[in] | val | initial value |
uint32_t a_hash_bkdr_ | ( | void const * | ptr, |
size_t | siz, | ||
uint32_t | val ) |
a hash function whose prime number is 131
[in] | ptr | points to string to be processed |
[in] | siz | length of string to be processed |
[in] | val | initial value |
uint32_t a_hash_sdbm | ( | void const * | str, |
uint32_t | val ) |
a hash function whose prime number is 65599
[in] | str | string to be processed |
[in] | val | initial value |
uint32_t a_hash_sdbm_ | ( | void const * | ptr, |
size_t | siz, | ||
uint32_t | val ) |
a hash function whose prime number is 65599
[in] | ptr | points to string to be processed |
[in] | siz | length of string to be processed |
[in] | val | initial value |
void * a_move | ( | void * | dst, |
void const * | src, | ||
size_t | siz ) |
move one buffer to another
[in] | dst | pointer to the object to copy to |
[in] | src | pointer to the object to copy from |
[in] | siz | number of bytes to copy |
void a_swap | ( | void * | lhs, |
void * | rhs, | ||
size_t | siz ) |
swap two different memory blocks of the same size
[in] | siz | the size of memory block being swapped |
[in,out] | lhs | points to memory block on the left |
[in,out] | rhs | points to memory block on the right |
uint16_t a_u16_rev | ( | uint16_t | x | ) |
reverse the bits in a 16-bit unsigned integer
x | a 16-bit unsigned integer to be reversed |
uint32_t a_u32_rev | ( | uint32_t | x | ) |
reverse the bits in a 32-bit unsigned integer
x | a 32-bit unsigned integer to be reversed |
uint64_t a_u64_rev | ( | uint64_t | x | ) |
reverse the bits in a 64-bit unsigned integer
x | a 64-bit unsigned integer to be reversed |
uint8_t a_u8_rev | ( | uint8_t | x | ) |
reverse the bits in an 8-bit unsigned integer
x | an 8-bit unsigned integer to be reversed |
void * a_zero | ( | void * | ptr, |
size_t | siz ) |
fill a buffer with zero
[in] | ptr | pointer to the object to fill |
[in] | siz | number of bytes to fill |
void *(* a_alloc) (void *addr, size_t size) | ( | void * | addr, |
size_t | size ) |
allocation function pointer
[in] | addr | address of memory block |
[in] | size | new size of memory block |