OnixS C++ Eurex T7 Market and Reference Data Interface (EMDI, RDI, EOBI) Handlers  8.1.0
API documentation
EobiPacketProcessor Class Reference

#include </work/src/EOBI/EobiPacketProcessor.h>

Collaboration diagram for EobiPacketProcessor:

Public Types

typedef boost::function< void(DataSource &dataSource, const char *data, size_t length)> OnPacketData
typedef boost::function< void()> OnGap
typedef boost::function< void()> OnInactivity
typedef boost::function< void(FE::NetFeedRole::Enum)> OnFeedInactivity
typedef boost::function< void()> OnApplSeqReset

Public Member Functions

 EobiPacketProcessor (unsigned int maxPacketWaitingTimeInMs, unsigned int inactivityWaitingTimeInSec, unsigned int outOfOrderMaxInterval, Concurrency::RecursiveMutex *lock)
virtual ~EobiPacketProcessor ()
void reset () override
bool tryAcquire () override
void release () override
void onPacket (FE::PacketContainer &) override
void onTimeout (const FE::NetFeed &) override
void onFailure (const FE::NetFeed &, const char *) override
void processHoldOnPackets (const FE::Timestamp &now)
void subscribeOnPacketData (const OnPacketData callback)
void subscribeOnGap (const OnGap callback)
void subscribeOnApplSeqReset (const OnApplSeqReset callback)
void subscribeOnInactivity (const OnInactivity callback)
void subscribeOnFeedInactivity (const OnFeedInactivity callback)

Protected Member Functions

DataSource createDataSource (FE::PacketContainer &packetContainer, SequenceNumber packetSeqNum)

Protected Attributes

OnPacketData onPacketData_
OnGap onGap_
OnApplSeqReset onApplSeqReset_
OnInactivity onInactivity_
OnFeedInactivity onFeedInactivity_
SequenceNumber nextPacketSeqNum_
const FE::TimeSpan maxPacketWaitingTimeSpan_
const FE::TimeSpan inactivityWaitingTimeSpan_
const UInt32 outOfOrderMaxInterval_
bool inactivityFlag_
bool inactivityFlagA_
bool inactivityFlagB_
bool applSeqResetting_
FE::Timestamp lastReceptionTimeFe_
FE::Timestamp lastReceptionTimeFeA_
FE::Timestamp lastReceptionTimeFeB_
FE::SortedPackets< PacketHelperoutOfOrder_
OnixS::Concurrency::RecursiveMutex * lock_

Detailed Description

Definition at line 69 of file EobiPacketProcessor.h.

Member Typedef Documentation

typedef boost::function<void()> OnApplSeqReset

Definition at line 78 of file EobiPacketProcessor.h.

typedef boost::function<void(FE::NetFeedRole::Enum)> OnFeedInactivity

Definition at line 77 of file EobiPacketProcessor.h.

typedef boost::function<void()> OnGap

Definition at line 75 of file EobiPacketProcessor.h.

typedef boost::function<void()> OnInactivity

Definition at line 76 of file EobiPacketProcessor.h.

typedef boost::function<void(DataSource& dataSource, const char* data, size_t length)> OnPacketData

Definition at line 74 of file EobiPacketProcessor.h.

Constructor & Destructor Documentation

EobiPacketProcessor ( unsigned int  maxPacketWaitingTimeInMs,
unsigned int  inactivityWaitingTimeInSec,
unsigned int  outOfOrderMaxInterval,
Concurrency::RecursiveMutex *  lock 

Definition at line 72 of file EobiPacketProcessor.cpp.

virtual ~EobiPacketProcessor ( )

Definition at line 86 of file EobiPacketProcessor.h.

Member Function Documentation

DataSource createDataSource ( FE::PacketContainer &  packetContainer,
SequenceNumber  packetSeqNum 

Definition at line 273 of file EobiPacketProcessor.cpp.

void onFailure ( const FE::NetFeed &  ,
const char *   

Definition at line 93 of file EobiPacketProcessor.h.

void onPacket ( FE::PacketContainer &  packetContainer)

Definition at line 103 of file EobiPacketProcessor.cpp.

void onTimeout ( const FE::NetFeed &  feed)

Definition at line 154 of file EobiPacketProcessor.cpp.

void processHoldOnPackets ( const FE::Timestamp &  now)

Definition at line 192 of file EobiPacketProcessor.cpp.

void release ( )

Definition at line 97 of file EobiPacketProcessor.cpp.

void reset ( )

Definition at line 234 of file EobiPacketProcessor.cpp.

void subscribeOnApplSeqReset ( const OnApplSeqReset  callback)

Definition at line 257 of file EobiPacketProcessor.cpp.

void subscribeOnFeedInactivity ( const OnFeedInactivity  callback)

Definition at line 267 of file EobiPacketProcessor.cpp.

void subscribeOnGap ( const OnGap  callback)

Definition at line 252 of file EobiPacketProcessor.cpp.

void subscribeOnInactivity ( const OnInactivity  callback)

Definition at line 262 of file EobiPacketProcessor.cpp.

void subscribeOnPacketData ( const OnPacketData  callback)

Definition at line 247 of file EobiPacketProcessor.cpp.

bool tryAcquire ( )

Definition at line 91 of file EobiPacketProcessor.cpp.

Member Data Documentation

bool applSeqResetting_

Definition at line 122 of file EobiPacketProcessor.h.

bool inactivityFlag_

Definition at line 119 of file EobiPacketProcessor.h.

bool inactivityFlagA_

Definition at line 120 of file EobiPacketProcessor.h.

bool inactivityFlagB_

Definition at line 121 of file EobiPacketProcessor.h.

const FE::TimeSpan inactivityWaitingTimeSpan_

Definition at line 116 of file EobiPacketProcessor.h.

FE::Timestamp lastReceptionTimeFe_

Definition at line 124 of file EobiPacketProcessor.h.

FE::Timestamp lastReceptionTimeFeA_

Definition at line 125 of file EobiPacketProcessor.h.

FE::Timestamp lastReceptionTimeFeB_

Definition at line 126 of file EobiPacketProcessor.h.

OnixS::Concurrency::RecursiveMutex* lock_

Definition at line 129 of file EobiPacketProcessor.h.

const FE::TimeSpan maxPacketWaitingTimeSpan_

Definition at line 115 of file EobiPacketProcessor.h.

SequenceNumber nextPacketSeqNum_

Definition at line 113 of file EobiPacketProcessor.h.

OnApplSeqReset onApplSeqReset_

Definition at line 108 of file EobiPacketProcessor.h.

OnFeedInactivity onFeedInactivity_

Definition at line 110 of file EobiPacketProcessor.h.

OnGap onGap_

Definition at line 107 of file EobiPacketProcessor.h.

OnInactivity onInactivity_

Definition at line 109 of file EobiPacketProcessor.h.

OnPacketData onPacketData_

Definition at line 106 of file EobiPacketProcessor.h.

FE::SortedPackets<PacketHelper> outOfOrder_

Definition at line 128 of file EobiPacketProcessor.h.

const UInt32 outOfOrderMaxInterval_

Definition at line 117 of file EobiPacketProcessor.h.

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