MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes
DtConnectionFaultProcessor Class Reference

The DtConnectionFaultProcessor class is a message processor responsible for responding to lost connections by initiating and participating in the RTI Exec's fault resolution algorithm. More...

+ Collaboration diagram for DtConnectionFaultProcessor:

Public Types

typedef bool(DtConnectionFaultProcessor::* HandshakeMsgHandlerMemberCb )(MAKRti::DtInetAddr src, const DtConnectionFaultMsg &msg)
 

Public Member Functions

 DtConnectionFaultProcessor (DtForwarderNode *parent)
 Default Ctor. More...
 
virtual ~DtConnectionFaultProcessor ()
 Default Dtor. More...
 
virtual bool gotForwarderStatusRequest (const MAKRti::DtInetAddr &src, const DtForwarderStatusRequestMsg msg)
 Got Forwarder Status Request Message. More...
 
virtual bool gotRemoteRtiExecConnect (const MAKRti::DtInetAddr &src, const DtRtiExecConnectMsg &msg)
 Got Remote rtiexec Connect Message from IN Port. More...
 
virtual bool gotLocalRtiExecConnect (const MAKRti::DtInetAddr &src, const DtRtiExecConnectMsg &msg)
 Got Local rtiexec Connect Message from LAN Port. More...
 
virtual bool gotRtiExecDisconnect (const MAKRti::DtInetAddr &src, const DtDisconnectMsg &msg)
 Got Local rtiexec Disconnect Message (local or remote) More...
 
virtual bool processResignForwarderMsgDestinations (const MAKRti::DtInetAddr &src, DtForwarderPort::DtAddressPortList &destinations)
 Set forwarding destination list based on source (eg. More...
 

Protected Attributes

DtForwarderNodemyParent
 

Detailed Description

The DtConnectionFaultProcessor class is a message processor responsible for responding to lost connections by initiating and participating in the RTI Exec's fault resolution algorithm.

When rtiexec receives ConnectionLostMsg( myForwarderID, droppedForwarderID ) rtiexec sends PingForwarderMsg( droppedForwarderID ) Forwarders aggregate all downstream PingForwarderResps and return upstream (=> return NoConnection( droppedForwarderID ) by default If rtiexec receives PingForwarderResp = NoConnection Then Forwarder has been lost no additional action required Else Both myForwarderID and droppedForwarderID are connected rtiexec sends ForwarderStatusRequestMsg( myConnectionID ) rtiexec sends ForwarderStatusRequestMsg( droppedConnectionID ) rtiexec waits for ForwarderStatusMsg (contains downstream federate count) Compare ForwarderStatusMsg( myConnectionID ).numFederates to ForwarderStatusMsg( droppedConnectionID ).numFederates rtiexec Sends ResignForwarder( ID ) where ID = either forwarder with fewer attached federates or (if equal) forwarder with lower ID (arbitrary) Required Processors (basically implement the algorithms required for fault recovery): 1) CountDownstreamFederates Processor

2) PingResponse Processor

3) ConnectionLossDetection Processor

4) ResignForwarder Processor

Member Typedef Documentation

typedef bool(DtConnectionFaultProcessor::* DtConnectionFaultProcessor::HandshakeMsgHandlerMemberCb)(MAKRti::DtInetAddr src, const DtConnectionFaultMsg &msg)

Constructor & Destructor Documentation

DtConnectionFaultProcessor::DtConnectionFaultProcessor ( DtForwarderNode parent)

Default Ctor.

virtual DtConnectionFaultProcessor::~DtConnectionFaultProcessor ( )
virtual

Default Dtor.

Member Function Documentation

virtual bool DtConnectionFaultProcessor::gotForwarderStatusRequest ( const MAKRti::DtInetAddr &  src,
const DtForwarderStatusRequestMsg  msg 
)
virtual

Got Forwarder Status Request Message.

virtual bool DtConnectionFaultProcessor::gotLocalRtiExecConnect ( const MAKRti::DtInetAddr &  src,
const DtRtiExecConnectMsg msg 
)
virtual

Got Local rtiexec Connect Message from LAN Port.

virtual bool DtConnectionFaultProcessor::gotRemoteRtiExecConnect ( const MAKRti::DtInetAddr &  src,
const DtRtiExecConnectMsg msg 
)
virtual

Got Remote rtiexec Connect Message from IN Port.

virtual bool DtConnectionFaultProcessor::gotRtiExecDisconnect ( const MAKRti::DtInetAddr &  src,
const DtDisconnectMsg msg 
)
virtual

Got Local rtiexec Disconnect Message (local or remote)

virtual bool DtConnectionFaultProcessor::processResignForwarderMsgDestinations ( const MAKRti::DtInetAddr &  src,
DtForwarderPort::DtAddressPortList destinations 
)
virtual

Set forwarding destination list based on source (eg.

which inlet the message was received on) and forwarder network configuration

Member Data Documentation

DtForwarderNode* DtConnectionFaultProcessor::myParent
protected

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

Document ID: Generated on Wed Jul 8 16:20:32 EDT 2026 from SVN revision 291616
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)