Project
Loading...
Searching...
No Matches
o2::framework::MessageSet Struct Reference

#include <MessageSet.h>

Classes

struct  Index
 
struct  PairMapping
 

Public Member Functions

 MessageSet ()
 
template<typename F >
 MessageSet (F getter, size_t size)
 
 MessageSet (MessageSet &&other)
 
MessageSetoperator= (MessageSet &&other)
 
size_t size () const
 get number of in-flight O2 messages
 
size_t getNumberOfPairs () const
 get number of header-payload pairs
 
size_t getNumberOfPayloads (size_t mi) const
 get number of payloads for an in-flight message
 
void clear ()
 clear the set
 
void reset (PartRef &&ref)
 
void add (PartRef &&ref)
 
template<typename F >
void add (F getter, size_t size)
 add an O2 message
 
fair::mq::MessagePtr & header (size_t partIndex)
 
fair::mq::MessagePtr & payload (size_t partIndex, size_t payloadIndex=0)
 
fair::mq::MessagePtr const & header (size_t partIndex) const
 
fair::mq::MessagePtr const & payload (size_t partIndex, size_t payloadIndex=0) const
 
fair::mq::MessagePtr const & associatedHeader (size_t pos) const
 
fair::mq::MessagePtr const & associatedPayload (size_t pos) const
 

Public Attributes

std::vector< fair::mq::MessagePtr > messages
 
std::vector< IndexmessageMap
 
std::vector< PairMappingpairMap
 

Detailed Description

A set of inflight messages. The messages are stored in a linear vector. Originally, an O2 message was comprised of a header-payload pair which makes indexing of pairs in the storage simple. To support O2 messages with multiple payloads in a future update of the data model, a message index is needed to store position in the linear storage and number of messages. DPL InputRecord API is providing refs of header-payload pairs, the original O2 message model. For this purpose, also the pair index is filled and can be used to access header and payload associated with a pair

Definition at line 33 of file MessageSet.h.

Constructor & Destructor Documentation

◆ MessageSet() [1/3]

o2::framework::MessageSet::MessageSet ( )
inline

Definition at line 55 of file MessageSet.h.

◆ MessageSet() [2/3]

template<typename F >
o2::framework::MessageSet::MessageSet ( getter,
size_t  size 
)
inline

Definition at line 61 of file MessageSet.h.

◆ MessageSet() [3/3]

o2::framework::MessageSet::MessageSet ( MessageSet &&  other)
inline

Definition at line 67 of file MessageSet.h.

Member Function Documentation

◆ add() [1/2]

template<typename F >
void o2::framework::MessageSet::add ( getter,
size_t  size 
)
inline

add an O2 message

Definition at line 133 of file MessageSet.h.

◆ add() [2/2]

void o2::framework::MessageSet::add ( PartRef &&  ref)
inline

Definition at line 123 of file MessageSet.h.

◆ associatedHeader()

fair::mq::MessagePtr const & o2::framework::MessageSet::associatedHeader ( size_t  pos) const
inline

Definition at line 169 of file MessageSet.h.

◆ associatedPayload()

fair::mq::MessagePtr const & o2::framework::MessageSet::associatedPayload ( size_t  pos) const
inline

Definition at line 174 of file MessageSet.h.

◆ clear()

void o2::framework::MessageSet::clear ( )
inline

clear the set

Definition at line 104 of file MessageSet.h.

◆ getNumberOfPairs()

size_t o2::framework::MessageSet::getNumberOfPairs ( ) const
inline

get number of header-payload pairs

Definition at line 92 of file MessageSet.h.

◆ getNumberOfPayloads()

size_t o2::framework::MessageSet::getNumberOfPayloads ( size_t  mi) const
inline

get number of payloads for an in-flight message

Definition at line 98 of file MessageSet.h.

◆ header() [1/2]

fair::mq::MessagePtr & o2::framework::MessageSet::header ( size_t  partIndex)
inline

Definition at line 145 of file MessageSet.h.

◆ header() [2/2]

fair::mq::MessagePtr const & o2::framework::MessageSet::header ( size_t  partIndex) const
inline

Definition at line 157 of file MessageSet.h.

◆ operator=()

MessageSet & o2::framework::MessageSet::operator= ( MessageSet &&  other)
inline

Definition at line 73 of file MessageSet.h.

◆ payload() [1/2]

fair::mq::MessagePtr & o2::framework::MessageSet::payload ( size_t  partIndex,
size_t  payloadIndex = 0 
)
inline

Definition at line 150 of file MessageSet.h.

◆ payload() [2/2]

fair::mq::MessagePtr const & o2::framework::MessageSet::payload ( size_t  partIndex,
size_t  payloadIndex = 0 
) const
inline

Definition at line 162 of file MessageSet.h.

◆ reset()

void o2::framework::MessageSet::reset ( PartRef &&  ref)
inline

Definition at line 114 of file MessageSet.h.

◆ size()

size_t o2::framework::MessageSet::size ( ) const
inline

get number of in-flight O2 messages

Definition at line 86 of file MessageSet.h.

Member Data Documentation

◆ messageMap

std::vector<Index> o2::framework::MessageSet::messageMap

Definition at line 43 of file MessageSet.h.

◆ messages

std::vector<fair::mq::MessagePtr> o2::framework::MessageSet::messages

Definition at line 40 of file MessageSet.h.

◆ pairMap

std::vector<PairMapping> o2::framework::MessageSet::pairMap

Definition at line 53 of file MessageSet.h.


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