DP3
Functions
Data conversion functions

Global functions to convert data values. More...

Functions

unsigned int dp3::common::bitToBool (void *to, const void *from, unsigned int nvalues, unsigned int startbit=0)
 
unsigned int dp3::common::boolToBit (void *to, const void *from, unsigned int nvalues, unsigned int startbit=0)
 

Convert the possible native types.

These functions can be used in templates.

void dp3::common::dataConvert (DataFormat, char *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, int8_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, uint8_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, int16_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, uint16_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, int32_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, uint32_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, int64_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, uint64_t *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, float *inout, unsigned int nrval)
 
void dp3::common::dataConvert (DataFormat, double *inout, unsigned int nrval)
 
template<class T >
void dp3::common::dataConvert (DataFormat, std::complex< T > *inout, unsigned int nrval)
 
LFDC_TMPL_FP void dp3::common::dataConvert (DataFormat, std::complex< float > *inout, unsigned int nrval)
 
LFDC_TMPL_FP void dp3::common::dataConvert (DataFormat, std::complex< double > *inout, unsigned int nrval)
 

Convert char, int8, or uint8.

Currently it simply returns the input.

char dp3::common::dataConvert (DataFormat, char in)
 
int8_t dp3::common::dataConvert (DataFormat, int8_t in)
 
uint8_t dp3::common::dataConvert (DataFormat, uint8_t in)
 

Convert 16 bit integers.

int16_t dp3::common::dataConvert (DataFormat, int16_t in)
 
uint16_t dp3::common::dataConvert (DataFormat, uint16_t in)
 
void dp3::common::dataConvert16 (DataFormat, void *out, const void *in)
 
void dp3::common::dataConvert16 (DataFormat, void *inout)
 
void dp3::common::dataConvert16 (DataFormat, void *out, const void *in, unsigned int nrval)
 
void dp3::common::dataConvert16 (DataFormat, void *inout, unsigned int nrval)
 

Convert 32 bit integers.

int32_t dp3::common::dataConvert (DataFormat, int32_t in)
 
uint32_t dp3::common::dataConvert (DataFormat, uint32_t in)
 
void dp3::common::dataConvert32 (DataFormat, void *out, const void *in)
 
void dp3::common::dataConvert32 (DataFormat, void *inout)
 
void dp3::common::dataConvert32 (DataFormat, void *out, const void *in, unsigned int nrval)
 
void dp3::common::dataConvert32 (DataFormat, void *inout, unsigned int nrval)
 

Convert 64 bit integers.

int64_t dp3::common::dataConvert (DataFormat, int64_t in)
 
uint64_t dp3::common::dataConvert (DataFormat, uint64_t in)
 
void dp3::common::dataConvert64 (DataFormat, void *out, const void *in)
 
void dp3::common::dataConvert64 (DataFormat, void *inout)
 
void dp3::common::dataConvert64 (DataFormat, void *out, const void *in, unsigned int nrval)
 
void dp3::common::dataConvert64 (DataFormat, void *inout, unsigned int nrval)
 

Convert 32 bit floats.

void dp3::common::dataConvertFloat (DataFormat, void *out, const void *in)
 
void dp3::common::dataConvertFloat (DataFormat, void *inout)
 
void dp3::common::dataConvertFloat (DataFormat, void *out, const void *in, unsigned int nrval)
 
void dp3::common::dataConvertFloat (DataFormat, void *inout, unsigned int nrval)
 

Convert 64 bit floats.

void dp3::common::dataConvertDouble (DataFormat, void *out, const void *in)
 
void dp3::common::dataConvertDouble (DataFormat, void *inout)
 
void dp3::common::dataConvertDouble (DataFormat, void *out, const void *in, unsigned int nrval)
 
void dp3::common::dataConvertDouble (DataFormat, void *inout, unsigned int nrval)
 

Swap bytes in 16 bit values.

int16_t dp3::common::byteSwap (int16_t in)
 
uint16_t dp3::common::byteSwap (uint16_t in)
 
void dp3::common::byteSwap16 (void *out, const void *in)
 
void dp3::common::byteSwap16 (void *inout)
 
void dp3::common::byteSwap16 (void *out, const void *in, unsigned int nrval)
 
void dp3::common::byteSwap16 (void *inout, unsigned int nrval)
 

Swap bytes in 32 bit values.

int32_t dp3::common::byteSwap (int32_t in)
 
uint32_t dp3::common::byteSwap (uint32_t in)
 
void dp3::common::byteSwap32 (void *out, const void *in)
 
void dp3::common::byteSwap32 (void *inout)
 
void dp3::common::byteSwap32 (void *out, const void *in, unsigned int nrval)
 
void dp3::common::byteSwap32 (void *inout, unsigned int nrval)
 

Swap bytes in 64 bit values.

int64_t dp3::common::byteSwap (int64_t in)
 
uint64_t dp3::common::byteSwap (uint64_t in)
 
void dp3::common::byteSwap64 (void *out, const void *in)
 
void dp3::common::byteSwap64 (void *inout)
 
void dp3::common::byteSwap64 (void *out, const void *in, unsigned int nrval)
 
void dp3::common::byteSwap64 (void *inout, unsigned int nrval)
 

Detailed Description

Global functions to convert data values.

This file declares functions to convert data from one representation to another, in particular from little endian to big endian (or vice-versa).

The functions are defined in a general way for each standard data type, so in principle every conceivable conversion could be done (for example, from the old VAX format to IEEE format). However, currently byte swap is the only conversion needed, so only that one is implemented.

Furthermore it contains a function to convert bool values to bits and vice-versa.

Function Documentation

◆ bitToBool()

unsigned int dp3::common::bitToBool ( void *  to,
const void *  from,
unsigned int  nvalues,
unsigned int  startbit = 0 
)

Convert bits to bools. startbit gives to first bit to use in the from buffer. It returns the number of bytes used.

◆ boolToBit()

unsigned int dp3::common::boolToBit ( void *  to,
const void *  from,
unsigned int  nvalues,
unsigned int  startbit = 0 
)

Convert bools to bits. startbit gives to first bit to use in the to buffer. It returns the number of bytes used.

◆ byteSwap() [1/6]

int16_t dp3::common::byteSwap ( int16_t  in)
inline

◆ byteSwap() [2/6]

int32_t dp3::common::byteSwap ( int32_t  in)
inline

◆ byteSwap() [3/6]

int64_t dp3::common::byteSwap ( int64_t  in)
inline

◆ byteSwap() [4/6]

uint16_t dp3::common::byteSwap ( uint16_t  in)
inline

◆ byteSwap() [5/6]

uint32_t dp3::common::byteSwap ( uint32_t  in)
inline

◆ byteSwap() [6/6]

uint64_t dp3::common::byteSwap ( uint64_t  in)
inline

◆ byteSwap16() [1/4]

void dp3::common::byteSwap16 ( void *  inout)
inline

◆ byteSwap16() [2/4]

void dp3::common::byteSwap16 ( void *  inout,
unsigned int  nrval 
)

◆ byteSwap16() [3/4]

void dp3::common::byteSwap16 ( void *  out,
const void *  in 
)
inline

◆ byteSwap16() [4/4]

void dp3::common::byteSwap16 ( void *  out,
const void *  in,
unsigned int  nrval 
)

◆ byteSwap32() [1/4]

void dp3::common::byteSwap32 ( void *  inout)
inline

◆ byteSwap32() [2/4]

void dp3::common::byteSwap32 ( void *  inout,
unsigned int  nrval 
)

◆ byteSwap32() [3/4]

void dp3::common::byteSwap32 ( void *  out,
const void *  in 
)
inline

◆ byteSwap32() [4/4]

void dp3::common::byteSwap32 ( void *  out,
const void *  in,
unsigned int  nrval 
)

◆ byteSwap64() [1/4]

void dp3::common::byteSwap64 ( void *  inout)
inline

◆ byteSwap64() [2/4]

void dp3::common::byteSwap64 ( void *  inout,
unsigned int  nrval 
)

◆ byteSwap64() [3/4]

void dp3::common::byteSwap64 ( void *  out,
const void *  in 
)
inline

◆ byteSwap64() [4/4]

void dp3::common::byteSwap64 ( void *  out,
const void *  in,
unsigned int  nrval 
)

◆ dataConvert() [1/23]

void dp3::common::dataConvert ( DataFormat  ,
char *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [2/23]

char dp3::common::dataConvert ( DataFormat  ,
char  in 
)
inline

◆ dataConvert() [3/23]

void dp3::common::dataConvert ( DataFormat  fmt,
double *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [4/23]

void dp3::common::dataConvert ( DataFormat  fmt,
float *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [5/23]

void dp3::common::dataConvert ( DataFormat  fmt,
int16_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [6/23]

int16_t dp3::common::dataConvert ( DataFormat  ,
int16_t  in 
)
inline

◆ dataConvert() [7/23]

void dp3::common::dataConvert ( DataFormat  fmt,
int32_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [8/23]

int32_t dp3::common::dataConvert ( DataFormat  ,
int32_t  in 
)
inline

◆ dataConvert() [9/23]

void dp3::common::dataConvert ( DataFormat  fmt,
int64_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [10/23]

int64_t dp3::common::dataConvert ( DataFormat  ,
int64_t  in 
)
inline

◆ dataConvert() [11/23]

void dp3::common::dataConvert ( DataFormat  ,
int8_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [12/23]

int8_t dp3::common::dataConvert ( DataFormat  ,
int8_t  in 
)
inline

◆ dataConvert() [13/23]

LFDC_TMPL_FP void dp3::common::dataConvert ( DataFormat  fmt,
std::complex< double > *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [14/23]

LFDC_TMPL_FP void dp3::common::dataConvert ( DataFormat  fmt,
std::complex< float > *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [15/23]

template<class T >
void dp3::common::dataConvert ( DataFormat  fmt,
std::complex< T > *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [16/23]

void dp3::common::dataConvert ( DataFormat  fmt,
uint16_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [17/23]

uint16_t dp3::common::dataConvert ( DataFormat  ,
uint16_t  in 
)
inline

◆ dataConvert() [18/23]

void dp3::common::dataConvert ( DataFormat  fmt,
uint32_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [19/23]

uint32_t dp3::common::dataConvert ( DataFormat  ,
uint32_t  in 
)
inline

◆ dataConvert() [20/23]

void dp3::common::dataConvert ( DataFormat  fmt,
uint64_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [21/23]

uint64_t dp3::common::dataConvert ( DataFormat  ,
uint64_t  in 
)
inline

◆ dataConvert() [22/23]

void dp3::common::dataConvert ( DataFormat  ,
uint8_t *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert() [23/23]

uint8_t dp3::common::dataConvert ( DataFormat  ,
uint8_t  in 
)
inline

◆ dataConvert16() [1/4]

void dp3::common::dataConvert16 ( DataFormat  ,
void *  inout 
)
inline

◆ dataConvert16() [2/4]

void dp3::common::dataConvert16 ( DataFormat  ,
void *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert16() [3/4]

void dp3::common::dataConvert16 ( DataFormat  ,
void *  out,
const void *  in 
)
inline

◆ dataConvert16() [4/4]

void dp3::common::dataConvert16 ( DataFormat  ,
void *  out,
const void *  in,
unsigned int  nrval 
)
inline

◆ dataConvert32() [1/4]

void dp3::common::dataConvert32 ( DataFormat  ,
void *  inout 
)
inline

◆ dataConvert32() [2/4]

void dp3::common::dataConvert32 ( DataFormat  ,
void *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert32() [3/4]

void dp3::common::dataConvert32 ( DataFormat  ,
void *  out,
const void *  in 
)
inline

◆ dataConvert32() [4/4]

void dp3::common::dataConvert32 ( DataFormat  ,
void *  out,
const void *  in,
unsigned int  nrval 
)
inline

◆ dataConvert64() [1/4]

void dp3::common::dataConvert64 ( DataFormat  ,
void *  inout 
)
inline

◆ dataConvert64() [2/4]

void dp3::common::dataConvert64 ( DataFormat  ,
void *  inout,
unsigned int  nrval 
)
inline

◆ dataConvert64() [3/4]

void dp3::common::dataConvert64 ( DataFormat  ,
void *  out,
const void *  in 
)
inline

◆ dataConvert64() [4/4]

void dp3::common::dataConvert64 ( DataFormat  ,
void *  out,
const void *  in,
unsigned int  nrval 
)
inline

◆ dataConvertDouble() [1/4]

void dp3::common::dataConvertDouble ( DataFormat  ,
void *  inout 
)
inline

◆ dataConvertDouble() [2/4]

void dp3::common::dataConvertDouble ( DataFormat  ,
void *  inout,
unsigned int  nrval 
)
inline

◆ dataConvertDouble() [3/4]

void dp3::common::dataConvertDouble ( DataFormat  ,
void *  out,
const void *  in 
)
inline

◆ dataConvertDouble() [4/4]

void dp3::common::dataConvertDouble ( DataFormat  ,
void *  out,
const void *  in,
unsigned int  nrval 
)
inline

◆ dataConvertFloat() [1/4]

void dp3::common::dataConvertFloat ( DataFormat  ,
void *  inout 
)
inline

◆ dataConvertFloat() [2/4]

void dp3::common::dataConvertFloat ( DataFormat  ,
void *  inout,
unsigned int  nrval 
)
inline

◆ dataConvertFloat() [3/4]

void dp3::common::dataConvertFloat ( DataFormat  ,
void *  out,
const void *  in 
)
inline

◆ dataConvertFloat() [4/4]

void dp3::common::dataConvertFloat ( DataFormat  ,
void *  out,
const void *  in,
unsigned int  nrval 
)
inline