tdaq-develop-2025-02-12
ots::BinaryStringMacros Struct Reference

Static Public Member Functions

static std::string binaryStringToHexString (const void *binaryBuffer, unsigned int numberOfBytes, const std::string &resultPreamble="", const std::string &resultDelimiter="")
 
template<class T >
static std::string binaryNumberToHexString (const T &binaryBuffer, const std::string &resultPreamble="0x", const std::string &resultDelimiter=" ")
 
static std::string binaryNumberToHexString (const std::string &binaryBuffer, const std::string &resultPreamble="0x", const std::string &resultDelimiter=" ")
 
static std::string binaryNumberToHexString (const void *binaryBuffer, unsigned int numberOfBytes, const std::string &resultPreamble="0x", const std::string &resultDelimiter=" ")
 
template<class T >
static void insertValueInBinaryString (std::string &binaryBuffer, T value, unsigned int bitIndex=0)
 
static void insertValueInBinaryString (std::string &binaryBuffer, const std::string &value, unsigned int bitIndex=0)
 specialized for string value More...
 
template<class T >
static void extractValueFromBinaryString (const std::string &binaryBuffer, T &value, unsigned int bitIndex=0)
 
static void extractValueFromBinaryString (const std::string &binaryBuffer, std::string &value, unsigned int valueNumberOfBits, unsigned int bitIndex=0)
 specialized for string value More...
 
static void extractValueFromBinaryString (const void *binaryBuffer, unsigned int bufferNumberOfBytes, void *value, unsigned int valueNumberOfBits, unsigned int bitIndex=0)
 specialized for generic void* handling (actually does the work) More...
 

Detailed Description

Definition at line 14 of file BinaryStringMacros.h.

Member Function Documentation

◆ binaryNumberToHexString() [1/2]

std::string BinaryStringMacros::binaryNumberToHexString ( const std::string &  binaryBuffer,
const std::string &  resultPreamble = "0x",
const std::string &  resultDelimiter = " " 
)
static

binaryNumberToHexString convert a data buffer string a hex string 8 bytes at a time with the least significant byte last.

Definition at line 35 of file BinaryStringMacros.cc.

◆ binaryNumberToHexString() [2/2]

std::string BinaryStringMacros::binaryNumberToHexString ( const void *  binaryBuffer,
unsigned int  numberOfBytes,
const std::string &  resultPreamble = "0x",
const std::string &  resultDelimiter = " " 
)
static

binaryNumberToHexString convert a data buffer string a hex string 8 bytes at a time with the least significant byte last.

Definition at line 48 of file BinaryStringMacros.cc.

◆ binaryStringToHexString()

std::string BinaryStringMacros::binaryStringToHexString ( const void *  binaryBuffer,
unsigned int  numberOfBytes,
const std::string &  resultPreamble = "",
const std::string &  resultDelimiter = "" 
)
static

Here is the list of static helper functions:

binaryStringToHexString
binaryNumberToHexString

binaryToHexString convert a data buffer of <len> bytes to a hex string 2*len characters long Note: no preamble is applied by default (but "0x" could be nice)

Note: this is used with defaults by VisualSupervisor

Definition at line 11 of file BinaryStringMacros.cc.

◆ extractValueFromBinaryString() [1/3]

void BinaryStringMacros::extractValueFromBinaryString ( const std::string &  binaryBuffer,
std::string &  value,
unsigned int  valueNumberOfBits,
unsigned int  bitIndex = 0 
)
static

specialized for string value

extractValueFromBinaryString static template function Extract value from buffer starting at bitIndex position

Definition at line 203 of file BinaryStringMacros.cc.

◆ extractValueFromBinaryString() [2/3]

template<class T >
static void ots::BinaryStringMacros::extractValueFromBinaryString ( const std::string &  binaryBuffer,
T &  value,
unsigned int  bitIndex = 0 
)
static
Parameters
binaryBufferdefined in included .icc source

◆ extractValueFromBinaryString() [3/3]

void BinaryStringMacros::extractValueFromBinaryString ( const void *  binaryBufferVoid,
unsigned int  bufferNumberOfBytes,
void *  valueVoid,
unsigned int  valueNumberOfBits,
unsigned int  bitIndex = 0 
)
static

specialized for generic void* handling (actually does the work)

extractValueFromBinaryString static template function Extract value from buffer starting at bitIndex position

Definition at line 128 of file BinaryStringMacros.cc.

◆ insertValueInBinaryString() [1/2]

void BinaryStringMacros::insertValueInBinaryString ( std::string &  binaryBuffer,
const std::string &  value,
unsigned int  bitIndex = 0 
)
static

specialized for string value

insertValueInBinaryString static and specialized for string value

Definition at line 88 of file BinaryStringMacros.cc.

◆ insertValueInBinaryString() [2/2]

template<class T >
static void ots::BinaryStringMacros::insertValueInBinaryString ( std::string &  binaryBuffer,
value,
unsigned int  bitIndex = 0 
)
static
Parameters
binaryBufferdefined in included .icc source

The documentation for this struct was generated from the following files: