OnixS C++ B3 Binary UMDF Market Data Handler 1.10.0
Users' manual and API documentation
Loading...
Searching...
No Matches
SbeGroup< EntryType, DimensionType, GroupSizeType > Class Template Reference

#include <OnixS/B3/MarketData/UMDF/messaging/SbeMessage.h>

Public Types

enum  
typedef DimensionType Dimension
typedef GroupSizeType BinarySize
typedef DimensionType::BlockLength EntrySize
typedef SbeGroupEntries< EntryType, typename Dimension::BlockLength, typename Dimension::NumInGroup, GroupSizeType > Entries
typedef Entries::Iterator Iterator
typedef Entries::Entry Entry
typedef Entries::Size Size

Public Member Functions

 SbeGroup () noexcept
 __attribute__ ((__hot__)) SbeGroup(void *data
 __attribute__ ((__unused__)) BinarySize size
SchemaVersion version entries_ (advanceByBytes(data, Dimension::Size))
SchemaVersion version version_ (version)
bool valid () const noexcept
bool empty () const noexcept
 __attribute__ ((__hot__)) Size size() const noexcept
 __attribute__ ((__hot__)) Iterator begin() const noexcept
 __attribute__ ((__hot__)) Iterator end() const noexcept
 __attribute__ ((__hot__)) Entry operator[](Size index) const
 __attribute__ ((__warn_unused_result__)) Entries entries() const noexcept
const void * encoded () const noexcept
const void * tail () const noexcept
 __attribute__ ((__hot__)) void *binary() const noexcept
 __attribute__ ((__hot__)) BinarySize binarySize() const noexcept
 __attribute__ ((__hot__)) EntrySize entrySize() const noexcept

Public Attributes

SchemaVersion version noexcept: header_(static_cast <Dimension*>(data))

Friends

class SbeMessage

Detailed Description

template<class EntryType, class DimensionType, class GroupSizeType>
class OnixS::B3::MarketData::UMDF::Messaging::SbeGroup< EntryType, DimensionType, GroupSizeType >

Definition at line 630 of file SbeMessage.h.

Member Typedef Documentation

◆ BinarySize

template<class EntryType, class DimensionType, class GroupSizeType>
typedef GroupSizeType BinarySize

Length of group data.

Definition at line 637 of file SbeMessage.h.

◆ Dimension

template<class EntryType, class DimensionType, class GroupSizeType>
typedef DimensionType Dimension

Repeating group dimension type.

Definition at line 634 of file SbeMessage.h.

◆ Entries

template<class EntryType, class DimensionType, class GroupSizeType>
typedef SbeGroupEntries<EntryType, typename Dimension::BlockLength, typename Dimension::NumInGroup, GroupSizeType > Entries

Binary group blocks.

Definition at line 646 of file SbeMessage.h.

◆ Entry

template<class EntryType, class DimensionType, class GroupSizeType>
typedef Entries::Entry Entry

Group entry type.

Definition at line 652 of file SbeMessage.h.

◆ EntrySize

template<class EntryType, class DimensionType, class GroupSizeType>
typedef DimensionType::BlockLength EntrySize

Length of group entry data.

Definition at line 643 of file SbeMessage.h.

◆ Iterator

template<class EntryType, class DimensionType, class GroupSizeType>
typedef Entries::Iterator Iterator

The iterator type for group entries.

Definition at line 649 of file SbeMessage.h.

◆ Size

template<class EntryType, class DimensionType, class GroupSizeType>
typedef Entries::Size Size

Number of entries in the group.

Definition at line 655 of file SbeMessage.h.

Member Enumeration Documentation

◆ anonymous enum

template<class EntryType, class DimensionType, class GroupSizeType>
anonymous enum

Length of an empty group.

Enumerator
EmptySize Dimension::Size 

Definition at line 640 of file SbeMessage.h.

Constructor & Destructor Documentation

◆ SbeGroup()

template<class EntryType, class DimensionType, class GroupSizeType>
SbeGroup ( )
inlinenoexcept

Initializes a blank instance referencing to nothing.

Definition at line 658 of file SbeMessage.h.

Member Function Documentation

◆ __attribute__() [1/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inlinenoexcept
Returns
the size of SBE-encoded data that represents the repeating group.

Definition at line 766 of file SbeMessage.h.

◆ __attribute__() [2/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inline

Provides access to a repeating group entry by the given index.

Note
Index validness is not checked due to performance considerations.

Definition at line 727 of file SbeMessage.h.

◆ __attribute__() [3/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inlinenoexcept
Returns
the size of a single repeating group entry.

Definition at line 773 of file SbeMessage.h.

◆ __attribute__() [4/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inlinenoexcept
Returns
an iterator pointing to the first repeating group entry.

Definition at line 707 of file SbeMessage.h.

◆ __attribute__() [5/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inlinenoexcept
Returns
an iterator pointing to the entry behind the end of the group.

Definition at line 716 of file SbeMessage.h.

◆ __attribute__() [6/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) )

Initializes an instance referencing to a valid group of a given message.

◆ __attribute__() [7/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inlinenoexcept
Returns
the number of entries in the repeating group.

Definition at line 695 of file SbeMessage.h.

◆ __attribute__() [8/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__hot__) ) const
inlinenoexcept
Returns
SBE-encoded data that represents the repeating group.

Definition at line 759 of file SbeMessage.h.

◆ __attribute__() [9/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__unused__) )

◆ __attribute__() [10/10]

template<class EntryType, class DimensionType, class GroupSizeType>
__attribute__ ( (__warn_unused_result__) ) const
inlinenoexcept
Returns
Repeating group entries.

Definition at line 737 of file SbeMessage.h.

◆ empty()

template<class EntryType, class DimensionType, class GroupSizeType>
bool empty ( ) const
inlinenoexcept
Returns
true if the repeating group is empty, otherwise - false.

Definition at line 687 of file SbeMessage.h.

◆ encoded()

template<class EntryType, class DimensionType, class GroupSizeType>
const void * encoded ( ) const
inlinenoexcept
Returns
SBE-encoded data that represents the repeating group.

Definition at line 747 of file SbeMessage.h.

◆ entries_()

template<class EntryType, class DimensionType, class GroupSizeType>
SchemaVersion version entries_ ( advanceByBytes(data, Dimension::Size) )

◆ tail()

template<class EntryType, class DimensionType, class GroupSizeType>
const void * tail ( ) const
inlinenoexcept
Returns
the end of SBE-encoded data that represents the repeating group.

Definition at line 753 of file SbeMessage.h.

◆ valid()

template<class EntryType, class DimensionType, class GroupSizeType>
bool valid ( ) const
inlinenoexcept
Returns
true if the instance refers to a valid repeating group, otherwise - false.

Definition at line 681 of file SbeMessage.h.

◆ version_()

template<class EntryType, class DimensionType, class GroupSizeType>
SchemaVersion version version_ ( version )
inline

Definition at line 671 of file SbeMessage.h.

◆ SbeMessage

template<class EntryType, class DimensionType, class GroupSizeType>
friend class SbeMessage
friend

Definition at line 882 of file SbeMessage.h.

Member Data Documentation

◆ noexcept

template<class EntryType, class DimensionType, class GroupSizeType>
SchemaVersion version noexcept

Definition at line 668 of file SbeMessage.h.