ITCH 5.0 Market Data Handler 1.0.0
NASDAQ ITCH 5.0 Market Data Feed Handler
Loading...
Searching...
No Matches
b2bits::nasdaq::moldudp64 Namespace Reference

Classes

struct  Settings
 MoldUDP64 session settings. More...
class  Session
 MoldUDP64 session manager. More...
class  UDPPacket
 MoldUDP64 packet parser and message iterator. More...
struct  SequencerImpl
 MoldUDP64 sequencer implementation traits and operations. More...
class  PacketHeader
 MoldUDP64 packet header. More...
class  RequestPacket
 Compile-time validation of PacketHeader wire format size. More...
class  MessageBlock
 Compile-time validation of RequestPacket wire format size. More...

Typedefs

using MessageCache = b2bits::MessageCacheT<CacheTraits>
using Sequencer = b2bits::Sequencer<SequencerImpl>
 MoldUDP64 message sequencer.

Functions

std::ostream & operator<< (std::ostream &os, const Settings &)
 Stream output operator for Settings.

Variables

constexpr UInt16 EOS_COUNT = 0xFFFF
 Special count value indicating end of session.

Typedef Documentation

◆ MessageCache

◆ Sequencer

MoldUDP64 message sequencer.

Type alias for the generic Sequencer specialized for MoldUDP64 protocol. The sequencer provides:

  • Sequential message delivery (ensures in-order processing)
  • Gap detection (identifies missing sequence numbers)
  • Out-of-order buffering (stores future messages until gaps are filled)
  • Memory-efficient storage using memory pools

The sequencer maintains a sliding window of sequence numbers and buffers messages that arrive out of order. When gaps are detected, the application can request recovery from the MoldUDP64 server.

See also
SequencerImpl
b2bits::Sequencer
Example:
SequencerParams params;
params.expected_seqnum_ = 1; // Starting sequence number
Sequencer sequencer(params);
// Process incoming packet
UDPPacket packet(header, size);
sequencer.process(packet, [](auto seqnum, auto* msg) {
// This callback is invoked for each in-sequence message
process_in_order_message(seqnum, msg);
});
// Check for gaps
if (auto gap = sequencer.get_gap()) {
request_recovery(gap->start, gap->count);
}
MoldUDP64 packet parser and message iterator.
Definition Packet.h:56
b2bits::Sequencer< SequencerImpl > Sequencer
MoldUDP64 message sequencer.
Definition Sequencer.h:145

Function Documentation

◆ operator<<()

std::ostream & b2bits::nasdaq::moldudp64::operator<< ( std::ostream & os,
const Settings &  )

Stream output operator for Settings.

Parameters
osOutput stream
settingsSettings to output
Returns
Reference to the output stream

Variable Documentation

◆ EOS_COUNT

UInt16 b2bits::nasdaq::moldudp64::EOS_COUNT = 0xFFFF
constexpr

Special count value indicating end of session.