Project
Loading...
Searching...
No Matches
o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T > Class Template Reference

#include <DPLRawParser.h>

Classes

struct  Fmt
 

Public Types

using iterator_category = std::forward_iterator_tag
 
using self_type = Iterator
 
using value_type = T
 
using reference = T &
 
using pointer = T *
 
using input_iterator = decltype(std::declval< InputRecord >().begin())
 
using parser_type = rawparser_type const
 

Public Member Functions

 Iterator ()=delete
 
 Iterator (InputRecord &parent, input_iterator it, input_iterator end, std::vector< InputSpec > const &filterSpecs, fair::Severity sev=fair::Severity::alarm, size_t maxErrMsg=-1, size_t *cntErrMsg=nullptr)
 
 ~Iterator ()=default
 
self_typeoperator++ ()
 
self_type operator++ (int)
 
reference operator* ()
 
bool operator== (const self_type &other) const
 
bool operator!= (const self_type &rh) const
 
o2::header::DataHeader const * o2DataHeader () const
 get DataHeader of the current input message
 
o2::framework::DataProcessingHeader const * o2DataProcessingHeader () const
 get DataProcessingHeader of the current input message
 
buffer_type const * raw () const
 get pointer to raw block at current position, rdh starts here
 
buffer_type const * data () const
 get pointer to payload at current position
 
size_t offset () const
 offset of payload at current position
 
size_t size () const
 get size of payload at current position
 
size_t sizeTotal () const
 get size of header + payload at current position
 
template<typename U >
U const * get_if () const
 

Friends

std::ostream & operator<< (std::ostream &os, self_type const &it)
 
template<raw_parser::FormatSpec FmtCtrl>
std::ostream & operator<< (std::ostream &os, Fmt< FmtCtrl > const &fmt)
 

Detailed Description

template<bool BOUNDS_CHECKS = true>
template<typename T>
class o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >

Iterator implementation Supports the following operations:

  • increment (there is no decrement, its not a bidirectional parser)
  • dereference operator returns RawDataHeaderInfo as common header
  • member function data() returns pointer to payload at current position
  • member function size() return size of payload at current position

Definition at line 91 of file DPLRawParser.h.

Member Typedef Documentation

◆ input_iterator

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::input_iterator = decltype(std::declval<InputRecord>().begin())

Definition at line 100 of file DPLRawParser.h.

◆ iterator_category

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::iterator_category = std::forward_iterator_tag

Definition at line 94 of file DPLRawParser.h.

◆ parser_type

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::parser_type = rawparser_type const

Definition at line 102 of file DPLRawParser.h.

◆ pointer

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::pointer = T*

Definition at line 98 of file DPLRawParser.h.

◆ reference

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::reference = T&

Definition at line 97 of file DPLRawParser.h.

◆ self_type

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::self_type = Iterator

Definition at line 95 of file DPLRawParser.h.

◆ value_type

template<bool BOUNDS_CHECKS = true>
template<typename T >
using o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::value_type = T

Definition at line 96 of file DPLRawParser.h.

Constructor & Destructor Documentation

◆ Iterator() [1/2]

template<bool BOUNDS_CHECKS = true>
template<typename T >
o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::Iterator ( )
delete

◆ Iterator() [2/2]

template<bool BOUNDS_CHECKS = true>
template<typename T >
o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::Iterator ( InputRecord parent,
input_iterator  it,
input_iterator  end,
std::vector< InputSpec > const &  filterSpecs,
fair::Severity  sev = fair::Severity::alarm,
size_t  maxErrMsg = -1,
size_t *  cntErrMsg = nullptr 
)
inline

Definition at line 106 of file DPLRawParser.h.

◆ ~Iterator()

template<bool BOUNDS_CHECKS = true>
template<typename T >
o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::~Iterator ( )
default

Member Function Documentation

◆ data()

template<bool BOUNDS_CHECKS = true>
template<typename T >
buffer_type const * o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::data ( ) const
inline

get pointer to payload at current position

Definition at line 174 of file DPLRawParser.h.

◆ get_if()

template<bool BOUNDS_CHECKS = true>
template<typename T >
template<typename U >
U const * o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::get_if ( ) const
inline

get header as specific type

Returns
pointer to header of the specified type, or nullptr if type does not match to actual type

Definition at line 200 of file DPLRawParser.h.

◆ o2DataHeader()

template<bool BOUNDS_CHECKS = true>
template<typename T >
o2::header::DataHeader const * o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::o2DataHeader ( ) const
inline

get DataHeader of the current input message

Definition at line 150 of file DPLRawParser.h.

◆ o2DataProcessingHeader()

template<bool BOUNDS_CHECKS = true>
template<typename T >
o2::framework::DataProcessingHeader const * o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::o2DataProcessingHeader ( ) const
inline

get DataProcessingHeader of the current input message

Definition at line 159 of file DPLRawParser.h.

◆ offset()

template<bool BOUNDS_CHECKS = true>
template<typename T >
size_t o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::offset ( ) const
inline

offset of payload at current position

Definition at line 180 of file DPLRawParser.h.

◆ operator!=()

template<bool BOUNDS_CHECKS = true>
template<typename T >
bool o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::operator!= ( const self_type rh) const
inline

Definition at line 144 of file DPLRawParser.h.

◆ operator*()

template<bool BOUNDS_CHECKS = true>
template<typename T >
reference o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::operator* ( )
inline

Definition at line 129 of file DPLRawParser.h.

◆ operator++() [1/2]

template<bool BOUNDS_CHECKS = true>
template<typename T >
self_type & o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::operator++ ( )
inline

Definition at line 116 of file DPLRawParser.h.

◆ operator++() [2/2]

template<bool BOUNDS_CHECKS = true>
template<typename T >
self_type o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::operator++ ( int  )
inline

Definition at line 122 of file DPLRawParser.h.

◆ operator==()

template<bool BOUNDS_CHECKS = true>
template<typename T >
bool o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::operator== ( const self_type other) const
inline

Definition at line 134 of file DPLRawParser.h.

◆ raw()

template<bool BOUNDS_CHECKS = true>
template<typename T >
buffer_type const * o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::raw ( ) const
inline

get pointer to raw block at current position, rdh starts here

Definition at line 168 of file DPLRawParser.h.

◆ size()

template<bool BOUNDS_CHECKS = true>
template<typename T >
size_t o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::size ( ) const
inline

get size of payload at current position

Definition at line 186 of file DPLRawParser.h.

◆ sizeTotal()

template<bool BOUNDS_CHECKS = true>
template<typename T >
size_t o2::framework::DPLRawParser< BOUNDS_CHECKS >::Iterator< T >::sizeTotal ( ) const
inline

get size of header + payload at current position

Definition at line 192 of file DPLRawParser.h.

Friends And Related Symbol Documentation

◆ operator<< [1/2]

template<bool BOUNDS_CHECKS = true>
template<typename T >
template<raw_parser::FormatSpec FmtCtrl>
std::ostream & operator<< ( std::ostream &  os,
Fmt< FmtCtrl > const &  fmt 
)
friend

Definition at line 222 of file DPLRawParser.h.

◆ operator<< [2/2]

template<bool BOUNDS_CHECKS = true>
template<typename T >
std::ostream & operator<< ( std::ostream &  os,
self_type const &  it 
)
friend

Definition at line 205 of file DPLRawParser.h.


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