TwiceAsNice  2019-02-18
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
Basda::Microgate::DiagnosticRecordReceiverImpl Class Reference

This class creates diagnostic records from received TDP packets. More...

#include <DiagnosticRecordReceiverImpl.h>

Inheritance diagram for Basda::Microgate::DiagnosticRecordReceiverImpl:
Inheritance graph
Collaboration diagram for Basda::Microgate::DiagnosticRecordReceiverImpl:
Collaboration graph

Classes

struct  Config
 

Public Member Functions

 DiagnosticRecordReceiverImpl (const UdpConnectionPtr &connection, const DiagnosticRecordReassemblerPtr &reassembler)
 
virtual MasterBcuDiagnosticRecordPtr getNextDiagnosticRecord ()
 
virtual ~DiagnosticRecordReceiverImpl ()
 
bool greaterThan (uint16_t a, uint16_t b)
 
 DiagnosticRecordReceiverImpl (const UdpConnectionPtr &connection, const DiagnosticRecordReassemblerPtr &reassembler)
 
virtual MasterBcuDiagnosticRecordPtr getNextDiagnosticRecord ()
 
virtual ~DiagnosticRecordReceiverImpl ()
 
bool greaterThan (uint16_t a, uint16_t b)
 
 DiagnosticRecordReceiverImpl (const UdpConnectionPtr &connection, const DiagnosticRecordReassemblerPtr &reassembler)
 
virtual MasterBcuDiagnosticRecordPtr getNextDiagnosticRecord ()
 
virtual ~DiagnosticRecordReceiverImpl ()
 
bool greaterThan (uint16_t a, uint16_t b)
 
- Public Member Functions inherited from Basda::Microgate::DiagnosticRecordReceiver
virtual ~DiagnosticRecordReceiver ()=0
 
virtual ~DiagnosticRecordReceiver ()=0
 
virtual ~DiagnosticRecordReceiver ()=0
 

Static Public Member Functions

static DiagnosticRecordReceiverImplPtr create (Config &c)
 
static DiagnosticRecordReceiverImplPtr create (Config &c)
 
static DiagnosticRecordReceiverImplPtr create (Config &c)
 

Private Member Functions

MasterBcuDiagnosticRecordPtr considerRecordIdAndReassemble (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr reassembleNewRecord (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr reassembleWith (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr considerRecordIdAndReassemble (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr reassembleNewRecord (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr reassembleWith (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr considerRecordIdAndReassemble (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr reassembleNewRecord (const TdpPacketPtr &packet)
 
MasterBcuDiagnosticRecordPtr reassembleWith (const TdpPacketPtr &packet)
 

Private Attributes

UdpConnectionPtr connection_
 
DiagnosticRecordReassemblerPtr reassembler_
 
TdpPacketSequencePtr packets_
 
uint16_t currentRecordId_
 
bool hasReceivedPacketBefore_
 
bool packetsReassemblingPending_
 

Detailed Description

This class creates diagnostic records from received TDP packets.

Warning
When TDP packets with different records arrive out-of-order, old packets are dropped. Therefore, this class might reject several diagnostic records.

Constructor & Destructor Documentation

◆ DiagnosticRecordReceiverImpl() [1/3]

Basda::Microgate::DiagnosticRecordReceiverImpl::DiagnosticRecordReceiverImpl ( const UdpConnectionPtr connection,
const DiagnosticRecordReassemblerPtr reassembler 
)

◆ ~DiagnosticRecordReceiverImpl() [1/3]

Basda::Microgate::DiagnosticRecordReceiverImpl::~DiagnosticRecordReceiverImpl ( )
virtual
Note
overridden

◆ DiagnosticRecordReceiverImpl() [2/3]

Basda::Microgate::DiagnosticRecordReceiverImpl::DiagnosticRecordReceiverImpl ( const UdpConnectionPtr connection,
const DiagnosticRecordReassemblerPtr reassembler 
)

◆ ~DiagnosticRecordReceiverImpl() [2/3]

virtual Basda::Microgate::DiagnosticRecordReceiverImpl::~DiagnosticRecordReceiverImpl ( )
virtual
Note
overridden

◆ DiagnosticRecordReceiverImpl() [3/3]

Basda::Microgate::DiagnosticRecordReceiverImpl::DiagnosticRecordReceiverImpl ( const UdpConnectionPtr connection,
const DiagnosticRecordReassemblerPtr reassembler 
)

◆ ~DiagnosticRecordReceiverImpl() [3/3]

virtual Basda::Microgate::DiagnosticRecordReceiverImpl::~DiagnosticRecordReceiverImpl ( )
virtual
Note
overridden

Member Function Documentation

◆ considerRecordIdAndReassemble() [1/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::considerRecordIdAndReassemble ( const TdpPacketPtr packet)
private

◆ considerRecordIdAndReassemble() [2/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::considerRecordIdAndReassemble ( const TdpPacketPtr packet)
private

◆ considerRecordIdAndReassemble() [3/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::considerRecordIdAndReassemble ( const TdpPacketPtr packet)
private

◆ create() [1/3]

static DiagnosticRecordReceiverImplPtr Basda::Microgate::DiagnosticRecordReceiverImpl::create ( Config c)
static

◆ create() [2/3]

DiagnosticRecordReceiverImplPtr Basda::Microgate::DiagnosticRecordReceiverImpl::create ( DiagnosticRecordReceiverImpl::Config conf)
static

◆ create() [3/3]

static DiagnosticRecordReceiverImplPtr Basda::Microgate::DiagnosticRecordReceiverImpl::create ( Config c)
static

◆ getNextDiagnosticRecord() [1/3]

virtual MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::getNextDiagnosticRecord ( )
virtual
Note
overridden

Implements Basda::Microgate::DiagnosticRecordReceiver.

◆ getNextDiagnosticRecord() [2/3]

virtual MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::getNextDiagnosticRecord ( )
virtual
Note
overridden

Implements Basda::Microgate::DiagnosticRecordReceiver.

◆ getNextDiagnosticRecord() [3/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::getNextDiagnosticRecord ( )
virtual
Note
overridden

Implements Basda::Microgate::DiagnosticRecordReceiver.

◆ greaterThan() [1/3]

bool Basda::Microgate::DiagnosticRecordReceiverImpl::greaterThan ( uint16_t  a,
uint16_t  b 
)

◆ greaterThan() [2/3]

bool Basda::Microgate::DiagnosticRecordReceiverImpl::greaterThan ( uint16_t  a,
uint16_t  b 
)

◆ greaterThan() [3/3]

bool Basda::Microgate::DiagnosticRecordReceiverImpl::greaterThan ( uint16_t  a,
uint16_t  b 
)

◆ reassembleNewRecord() [1/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembleNewRecord ( const TdpPacketPtr packet)
private

◆ reassembleNewRecord() [2/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembleNewRecord ( const TdpPacketPtr packet)
private

◆ reassembleNewRecord() [3/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembleNewRecord ( const TdpPacketPtr packet)
private

◆ reassembleWith() [1/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembleWith ( const TdpPacketPtr packet)
private

◆ reassembleWith() [2/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembleWith ( const TdpPacketPtr packet)
private

◆ reassembleWith() [3/3]

MasterBcuDiagnosticRecordPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembleWith ( const TdpPacketPtr packet)
private

Member Data Documentation

◆ connection_

UdpConnectionPtr Basda::Microgate::DiagnosticRecordReceiverImpl::connection_
private

◆ currentRecordId_

uint16_t Basda::Microgate::DiagnosticRecordReceiverImpl::currentRecordId_
private

◆ hasReceivedPacketBefore_

bool Basda::Microgate::DiagnosticRecordReceiverImpl::hasReceivedPacketBefore_
private

◆ packets_

TdpPacketSequencePtr Basda::Microgate::DiagnosticRecordReceiverImpl::packets_
private

◆ packetsReassemblingPending_

bool Basda::Microgate::DiagnosticRecordReceiverImpl::packetsReassemblingPending_
private

◆ reassembler_

DiagnosticRecordReassemblerPtr Basda::Microgate::DiagnosticRecordReceiverImpl::reassembler_
private

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