artdaq_core_demo  v1_07_01
demo::UDPFragment::Header Struct Reference

The UDPFragment::Header contains information about the payload size and the "data type" of the UDP data. More...

#include <artdaq-core-demo/Overlays/UDPFragment.hh>

Public Types

typedef uint32_t data_t
 The fundamental unit of Header data.
 
typedef uint32_t event_size_t
 Type of the event_size field.
 
typedef uint32_t data_type_t
 Type of the type field.
 

Public Attributes

event_size_t event_size: 28
 The size of the payload, in words.
 
event_size_t type: 4
 The type of the payload data, 0: Raw, 1: JSON, 2: String.
 

Static Public Attributes

static size_t const size_words = 1ul
 Size of the UDPFragment::Header, in units of Header::data_t.
 

Detailed Description

The UDPFragment::Header contains information about the payload size and the "data type" of the UDP data.

The UDPFragment::Header contains information about the payload size and the "data type" of the UDP data. Currently-defined data types are Raw, String and JSON (defined in demo::DataType enum in artdaq-demo/Generators/UDPReceiver.hh). Note that the UDPFragment::Header is distinct from the UDPFragment::Metadata and the Fragment::Header. UDPFragment::Header is a convienience struct to decode the first 32 bytes of the data payload.

Notice only the first 28 bits of the first 32-bit unsigned integer in the Header is used to hold the event_size; this means that you can't represent a fragment larger than 2**28 units of data_t, or 1,073,741,824 bytes

Definition at line 58 of file UDPFragment.hh.


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