BLPAPI C++  3.24.11
Event::iterator Class Reference

#include <blpapi_event.h>

Public Types

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

Public Member Functions

 iterator ()
 
 iterator (const Event &event)
 
 iterator (const iterator &original)
 
 ~iterator ()
 
iteratoroperator= (const iterator &original)
 
iteratoroperator++ ()
 
iterator operator++ (int)
 
void swap (iterator &other)
 
const Messageoperator * () const noexcept
 
const Messageoperator-> () const noexcept
 

Friends

bool operator== (const iterator &lhs, const iterator &rhs)
 

Detailed Description

An input iterator that iterates the messages in an Event sequentially. It only guarantees validity for single pass algorithms which pass through an iterator position once at most. Once an iterator has been incremented, all copies of its previous value may be invalidated.

Changes to the Event invalidate any iterator obtained from it.

Member Typedef Documentation

◆ difference_type

using difference_type = std::ptrdiff_t

◆ iterator_category

using iterator_category = std::input_iterator_tag

◆ pointer

using pointer = Message *

◆ reference

using reference = Message&

◆ value_type

Constructor & Destructor Documentation

◆ iterator() [1/3]

iterator ( )

Construct an empty iterator.

◆ iterator() [2/3]

iterator ( const Event event)
explicit

Construct an iterator to iterate the messages in the specified event.

◆ iterator() [3/3]

iterator ( const iterator original)

Construct an iterator with the same value as the original iterator. Note that the iterator is a single-pass input iterator, incrementing one of the two copies will impact the other copy.

◆ ~iterator()

~iterator ( )

Member Function Documentation

◆ operator *()

const Message & operator * ( ) const
noexcept

◆ operator++() [1/2]

Event::iterator & operator++ ( )

Iterate over the next message in the event. Note that this operation is relatively expensive as it will decode the next message in the event. Returns a reference to this iterator.

◆ operator++() [2/2]

Event::iterator operator++ ( int  )

Iterate over the next message in the event and return a copy of the original value of this iterator. Note that this operation is relatively expensive as it will decode the next message in the event. Also note that this is a single-pass input iterator, incremeting one of the two copies will impact the other iterator.

◆ operator->()

const Message * operator-> ( ) const
noexcept

◆ operator=()

Event::iterator & operator= ( const iterator original)

Assign the value of the original iterator to this iterator. Note that the iterator is a single-pass input iterator, incrementing one of the two copies will impact the other copy.

◆ swap()

void swap ( iterator other)

Swap the contents of this iterator and the other iterator.

Friends And Related Function Documentation

◆ operator==

bool operator== ( const iterator lhs,
const iterator rhs 
)
friend

Return true if the specified lhs and rhs are the same iterator, or both are end iterators.


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