#include "../internal/Utilities.hpp"
#include <boost/cstdint.hpp>
#include <memory>
#include <string>
Go to the source code of this file.
Functions | |
template<typename X> | |
static finline X | bitblk (size_t index, size_t length, bool value, if_uint(X)) |
template<typename X, bool value> | |
static finline X | bitblk (size_t index, size_t length, if_uint(X)) |
template<typename X, bool value> | |
static finline X | bitblk (size_t length, if_uint(X)) |
template<typename X, typename Y> | |
static finline Y | bitcpy (X src, size_t srcIdx, Y dst, size_t dstIdx, size_t len=sizeof(X)*8, bool srcInvert=false, bool dstInvert=false, if_uint(X), if_uint(Y)) |
template<typename X> | |
static finline void | bitcpy (X *src, size_t srcIdx, X *dst, size_t dstIdx, size_t len) |
template<typename X, typename Y> | |
static finline void | bitcpy (X *src, size_t srcIdx, Y &dst, size_t dstIdx, size_t len=sizeof(Y)*8, if_uint(Y), if_uint(X)) |
template<typename X> | |
static finline void | bitcpy (X src, size_t srcIdx, X *dst, size_t dstIdx, size_t len=sizeof(X)*8, bool srcInvert=false, if_uint(X)) |
template<typename Y, typename X> | |
static finline void | bitcpy (Y src, size_t srcIdx, X *dst, size_t dstIdx, size_t len=sizeof(Y)*8, bool srcInvert=false, if_uint(X), if_uint(Y)) |
template<typename T, typename X> | |
static finline T | bitget (X *src, size_t idx, size_t len=sizeof(T)*8, if_uint(X), if_uint(T)) |
template<typename T, typename X> | |
static finline T | bitget (X src, size_t idx, size_t len=sizeof(T)*8, if_uint(X), if_uint(T)) |
template<typename X> | |
static finline bool | bitget (X *src, size_t index, if_uint(X)) |
template<typename X> | |
static finline bool | bitget (X src, size_t index, if_uint(X)) |
template<typename T, typename X> | |
static finline void | bitset (T src, X *dst, size_t index, if_uint(X), if_uint(T)) |
template<typename X> | |
static finline void | bitset (bool src, X *dst, size_t index, if_uint(X)) |
template<typename X> | |
static finline X | bitset (bool src, X dst, size_t index, if_uint(X)) |
template<typename X> | |
static finline X | bitrev (X src, if_uint(X)) |
template<typename X> | |
static finline void | bitrev (X *src, size_t len, if_uint(X)) |
template<typename X> | |
static finline X | switch_endian (X src, if_uint(X)) |
template<typename X> | |
static finline std::string | bitstr (X src, int log2base=4, if_uint(X)) |
template<typename X> | |
static finline std::string | bitstr (X *src, size_t len, int log2base=4, bool dot=false, if_uint(X)) |
static finline X bitblk | ( | size_t | length, | |
if_uint(X) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 95 of file DataUtilities.hpp.
static finline X bitblk | ( | size_t | index, | |
size_t | length, | |||
if_uint(X) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 87 of file DataUtilities.hpp.
static finline X bitblk | ( | size_t | index, | |
size_t | length, | |||
bool | value, | |||
if_uint(X) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 77 of file DataUtilities.hpp.
static finline void bitcpy | ( | Y | src, | |
size_t | srcIdx, | |||
X * | dst, | |||
size_t | dstIdx, | |||
size_t | len = sizeof(Y) * 8 , |
|||
bool | srcInvert = false , |
|||
if_uint(X) | , | |||
if_uint(Y) | ||||
) | [inline, static] |
static finline void bitcpy | ( | X | src, | |
size_t | srcIdx, | |||
X * | dst, | |||
size_t | dstIdx, | |||
size_t | len = sizeof(X) * 8 , |
|||
bool | srcInvert = false , |
|||
if_uint(X) | ||||
) | [inline, static] |
static finline void bitcpy | ( | X * | src, | |
size_t | srcIdx, | |||
Y & | dst, | |||
size_t | dstIdx, | |||
size_t | len = sizeof(Y) * 8 , |
|||
if_uint(Y) | , | |||
if_uint(X) | ||||
) | [inline, static] |
array -> integral
Definition at line 189 of file DataUtilities.hpp.
static finline void bitcpy | ( | X * | src, | |
size_t | srcIdx, | |||
X * | dst, | |||
size_t | dstIdx, | |||
size_t | len | |||
) | [inline, static] |
This method copies bits from an array to another of the same integral type.
Definition at line 119 of file DataUtilities.hpp.
References bitcpy().
static finline Y bitcpy | ( | X | src, | |
size_t | srcIdx, | |||
Y | dst, | |||
size_t | dstIdx, | |||
size_t | len = sizeof(X) * 8 , |
|||
bool | srcInvert = false , |
|||
bool | dstInvert = false , |
|||
if_uint(X) | , | |||
if_uint(Y) | ||||
) | [inline, static] |
This method copies bits from one integral to another
Definition at line 104 of file DataUtilities.hpp.
Referenced by DataStreamTpl< __mode, __variant, T >::add(), _vint::detail::vint_big< __length, __sign >::assign(), bitcpy(), bitget(), bitset(), DefaultDataModel< _T >::clone(), and DataTpl< T, DataModel >::DataManipulator::set().
static finline bool bitget | ( | X | src, | |
size_t | index, | |||
if_uint(X) | ||||
) | [inline, static] |
static finline bool bitget | ( | X * | src, | |
size_t | index, | |||
if_uint(X) | ||||
) | [inline, static] |
static finline T bitget | ( | X | src, | |
size_t | idx, | |||
size_t | len = sizeof(T) * 8 , |
|||
if_uint(X) | , | |||
if_uint(T) | ||||
) | [inline, static] |
static finline T bitget | ( | X * | src, | |
size_t | idx, | |||
size_t | len = sizeof(T) * 8 , |
|||
if_uint(X) | , | |||
if_uint(T) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 297 of file DataUtilities.hpp.
References bitcpy().
Referenced by bitrev(), and DataTpl< T, DataModel >::DataManipulator::get().
static finline void bitrev | ( | X * | src, | |
size_t | len, | |||
if_uint(X) | ||||
) | [inline, static] |
static finline X bitrev | ( | X | src, | |
if_uint(X) | ||||
) | [inline, static] |
static finline X bitset | ( | bool | src, | |
X | dst, | |||
size_t | index, | |||
if_uint(X) | ||||
) | [inline, static] |
static finline void bitset | ( | bool | src, | |
X * | dst, | |||
size_t | index, | |||
if_uint(X) | ||||
) | [inline, static] |
static finline void bitset | ( | T | src, | |
X * | dst, | |||
size_t | index, | |||
if_uint(X) | , | |||
if_uint(T) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 337 of file DataUtilities.hpp.
References bitcpy().
Referenced by bitrev(), and DataTpl< T, DataModel >::DataManipulator::operator=().
static finline std::string bitstr | ( | X * | src, | |
size_t | len, | |||
int | log2base = 4 , |
|||
bool | dot = false , |
|||
if_uint(X) | ||||
) | [inline, static] |
static finline std::string bitstr | ( | X | src, | |
int | log2base = 4 , |
|||
if_uint(X) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 401 of file DataUtilities.hpp.
Referenced by bitstr(), and operator<<().
static finline X switch_endian | ( | X | src, | |
if_uint(X) | ||||
) | [inline, static] |
TODO: Doc
Definition at line 386 of file DataUtilities.hpp.