HIPO  4.3.0
High Performance Output data format for experimental physics
hipo::ChainIterator Class Reference

Iterator for traversing events across all files in a chain. More...

#include <chain.h>

Classes

struct  EventData
 

Public Types

using iterator_category = std::input_iterator_tag
 
using value_type = EventData
 
using difference_type = std::ptrdiff_t
 
using pointer = EventData *
 
using reference = EventData &
 

Public Member Functions

 ChainIterator ()
 
 ChainIterator (chain *ch, bool at_end)
 
ChainIteratoroperator++ ()
 
void operator++ (int)
 
EventData operator* ()
 
bool operator== (const ChainIterator &other) const noexcept
 
bool operator!= (const ChainIterator &other) const noexcept
 

Detailed Description

Iterator for traversing events across all files in a chain.

Provides sequential access to events with file and event index tracking.

Definition at line 183 of file chain.h.

Member Typedef Documentation

◆ difference_type

using hipo::ChainIterator::difference_type = std::ptrdiff_t

Definition at line 193 of file chain.h.

◆ iterator_category

using hipo::ChainIterator::iterator_category = std::input_iterator_tag

Definition at line 191 of file chain.h.

◆ pointer

Definition at line 194 of file chain.h.

◆ reference

Definition at line 195 of file chain.h.

◆ value_type

Definition at line 192 of file chain.h.

Constructor & Destructor Documentation

◆ ChainIterator() [1/2]

hipo::ChainIterator::ChainIterator ( )
inline

Definition at line 197 of file chain.h.

◆ ChainIterator() [2/2]

hipo::ChainIterator::ChainIterator ( chain ch,
bool  at_end 
)
inline

Definition at line 1038 of file chain.h.

Member Function Documentation

◆ operator!=()

bool hipo::ChainIterator::operator!= ( const ChainIterator other) const
inlinenoexcept

Definition at line 216 of file chain.h.

◆ operator*()

EventData hipo::ChainIterator::operator* ( )
inline

Definition at line 204 of file chain.h.

◆ operator++() [1/2]

ChainIterator & hipo::ChainIterator::operator++ ( )
inline

Definition at line 1049 of file chain.h.

◆ operator++() [2/2]

void hipo::ChainIterator::operator++ ( int  )
inline

Definition at line 202 of file chain.h.

◆ operator==()

bool hipo::ChainIterator::operator== ( const ChainIterator other) const
inlinenoexcept

Definition at line 209 of file chain.h.


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