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 92 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 101 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 95 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 103 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 99 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 98 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 96 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 97 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 107 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 175 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 201 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 151 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 160 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 181 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 145 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 130 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 117 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 123 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 135 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 169 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 187 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 193 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 223 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 206 of file DPLRawParser.h.


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