![]() |
Project
|
O2 data header classes and API, v0.1. More...
Namespaces | |
namespace | internal |
namespace | lhc_clock_parameter |
namespace | test |
Classes | |
struct | BaseHeader |
the base header struct Every header type must begin (i.e. derive) with this. Don't use this struct directly. The derived header must initialize BaseHeader fields with appropriate values More... | |
class | DAQID |
struct | DataHeader |
the main header struct More... | |
struct | DataIdentifier |
Helper struct to encode origin and description of data. More... | |
struct | Descriptor |
struct | HeartbeatFrameEnvelope |
struct | HeartbeatHeader |
struct | HeartbeatStatistics |
struct | HeartbeatTrailer |
struct | is_descriptor |
struct | is_descriptor< o2::header::Descriptor< S > > |
class | LHCClock |
struct | NameHeader |
an example data header containing a name of an object as a null terminated char arr. this is a template! at instantiation the template parameter determines the size of the held string array. a caveat with decoding is (if length of string is not known) you have to use header::get<NameHeader<0>>(buffer) to get it out of a buffer. May improve in the future if enough people complain. If the compiler decides to pad the end of struct, the length of padding is stored in the last byte More... | |
struct | RAWDataHeaderV2 |
struct | RAWDataHeaderV4 |
struct | RAWDataHeaderV5 |
struct | RAWDataHeaderV6 |
struct | RAWDataHeaderV7 |
struct | RDHAny |
struct | Stack |
a move-only header stack with serialized headers This is the flat buffer where all the headers in a multi-header go. This guy knows how to move the serialized content to FairMQ and inform it how to release when all is sent. methods to construct a multi-header intended use: More... | |
struct | STFHeader |
class | TimeStamp |
Typedefs | |
using | HeaderType = Descriptor< gSizeHeaderDescriptionString > |
using | SerializationMethod = Descriptor< gSizeSerializationMethodString > |
using | DataOrigin = Descriptor< gSizeDataOriginString > |
using | DataDescription = Descriptor< gSizeDataDescriptionString > |
using | RAWDataHeader = RAWDataHeaderV7 |
using | RDHLowest = RAWDataHeaderV4 |
using | RDHHighest = RAWDataHeaderV7 |
using | LHCOrbitClock = LHCClock< std::chrono::system_clock::time_point, lhc_clock_parameter::OrbitPrecision > |
using | LHCBunchClock = LHCClock< std::chrono::system_clock::time_point, lhc_clock_parameter::BunchPrecision > |
Functions | |
void | hexDump (const char *desc, const void *voidaddr, size_t len, size_t max=0) |
helper function to print a hex/ASCII dump of some memory | |
template<typename T , typename... Targs> | |
constexpr T | String2 (char c, Targs... Fargs) |
template<typename T , std::size_t N, std::size_t pos = 0, bool suppressAssert = false> | |
constexpr T | String2 (const char(&str)[N]) |
template<typename HeaderType , typename std::enable_if_t< std::is_pointer< HeaderType >::value, int > = 0> | |
auto | get (const std::byte *buffer, size_t=0) |
template<typename HeaderType , typename std::enable_if_t< std::is_pointer< HeaderType >::value, int > = 0> | |
auto | get (const void *buffer, size_t len=0) |
template<typename T > | |
T | strtoui (const char *str, char **str_end, int base) noexcept |
template<typename T > | |
T | stoui (const std::string &str, size_t *pos=nullptr, int base=10) |
BOOST_AUTO_TEST_CASE (Descriptor_test) | |
BOOST_AUTO_TEST_CASE (DataDescription_test) | |
BOOST_AUTO_TEST_CASE (DataOrigin_test) | |
BOOST_AUTO_TEST_CASE (BaseHeader_test) | |
BOOST_AUTO_TEST_CASE (DataHeader_test) | |
BOOST_AUTO_TEST_CASE (headerStack_test) | |
BOOST_AUTO_TEST_CASE (Descriptor_benchmark) | |
BOOST_AUTO_TEST_CASE (Descriptor_formatting) | |
BOOST_AUTO_TEST_CASE (LHCClock_test) | |
BOOST_AUTO_TEST_CASE (TimeStamp_test) | |
std::ostream & | operator<< (std::ostream &os, const o2::header::RDHAny &rdh) |
std::ostream & | operator<< (std::ostream &, const o2::header::RAWDataHeaderV4 &) |
O2 data header classes and API, v0.1.
License text in a separate file.
In applying this license, CERN does not waive the privileges and immunities granted to it by virtue of its status as an Intergovernmental Organization or submit itself to any jurisdiction.
origin: CWG4
using o2::header::DataDescription = typedef Descriptor<gSizeDataDescriptionString> |
Definition at line 551 of file DataHeader.h.
using o2::header::DataOrigin = typedef Descriptor<gSizeDataOriginString> |
Definition at line 550 of file DataHeader.h.
using o2::header::HeaderType = typedef Descriptor<gSizeHeaderDescriptionString> |
Definition at line 321 of file DataHeader.h.
using o2::header::LHCBunchClock = typedef LHCClock<std::chrono::system_clock::time_point, lhc_clock_parameter::BunchPrecision> |
Definition at line 114 of file TimeStamp.h.
using o2::header::LHCOrbitClock = typedef LHCClock<std::chrono::system_clock::time_point, lhc_clock_parameter::OrbitPrecision> |
Definition at line 113 of file TimeStamp.h.
using o2::header::RAWDataHeader = typedef RAWDataHeaderV7 |
Definition at line 524 of file RAWDataHeader.h.
using o2::header::RDHHighest = typedef RAWDataHeaderV7 |
Definition at line 526 of file RAWDataHeader.h.
using o2::header::RDHLowest = typedef RAWDataHeaderV4 |
Definition at line 525 of file RAWDataHeader.h.
using o2::header::SerializationMethod = typedef Descriptor<gSizeSerializationMethodString> |
Definition at line 322 of file DataHeader.h.
o2::header::BOOST_AUTO_TEST_CASE | ( | BaseHeader_test | ) |
Definition at line 205 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | DataDescription_test | ) |
Definition at line 106 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | DataHeader_test | ) |
Definition at line 215 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | DataOrigin_test | ) |
Definition at line 146 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | Descriptor_benchmark | ) |
Definition at line 336 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | Descriptor_formatting | ) |
Definition at line 355 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | Descriptor_test | ) |
Definition at line 56 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | headerStack_test | ) |
Definition at line 258 of file testDataHeader.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | LHCClock_test | ) |
Definition at line 24 of file testTimeStamp.cxx.
o2::header::BOOST_AUTO_TEST_CASE | ( | TimeStamp_test | ) |
Definition at line 47 of file testTimeStamp.cxx.
auto o2::header::get | ( | const std::byte * | buffer, |
size_t | = 0 |
||
) |
find a header of type HeaderType in a buffer use like this: HeaderType* h = get<HeaderType*>(buffer)
Definition at line 454 of file DataHeader.h.
auto o2::header::get | ( | const void * | buffer, |
size_t | len = 0 |
||
) |
Definition at line 493 of file DataHeader.h.
helper function to print a hex/ASCII dump of some memory
Definition at line 107 of file DataHeader.cxx.
|
extern |
std::ostream & o2::header::operator<< | ( | std::ostream & | os, |
const o2::header::RDHAny & | rdh | ||
) |
Definition at line 84 of file RDHManip.cxx.
T o2::header::stoui | ( | const std::string & | str, |
size_t * | pos = nullptr , |
||
int | base = 10 |
||
) |
Definition at line 528 of file DataHeader.h.
|
constexpr |
constexpr intializer, evaluated at compile time generic intializer for variable char argument list
Definition at line 162 of file DataHeader.h.
|
constexpr |
constexpr intializer, evaluated at compile time generic initializer, convert a string to unsigned integer of different width Example usage: String2<uint64_t>("IDENTIFY")
Definition at line 180 of file DataHeader.h.
|
noexcept |
Definition at line 503 of file DataHeader.h.
|
extern |
|
constexpr |
const uint32_t o2::header::gInvalidToken32 = 0xFFFFFFFF |
default int representation of 'invalid' token for 4-byte char field
Definition at line 317 of file DataHeader.h.
const uint64_t o2::header::gInvalidToken64 = 0xFFFFFFFFFFFFFFFF |
default int representation of 'invalid' token for 8-byte char field
Definition at line 319 of file DataHeader.h.
|
constexpr |
Definition at line 325 of file DataHeader.h.
|
constexpr |
Definition at line 331 of file DataHeader.h.
|
constexpr |
Definition at line 329 of file DataHeader.h.
|
constexpr |
Definition at line 330 of file DataHeader.h.
|
constexpr |
Definition at line 326 of file DataHeader.h.
|
constexpr |
Definition at line 327 of file DataHeader.h.
|
constexpr |
Definition at line 328 of file DataHeader.h.