MAK RTIspy API Documentation for HLA 1516
Classes | Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes

The DtForwarderPort is an Abstract Base Class which provides the interface to a collection of connections from which messages may be read and to which messages may be sent. More...

+ Inheritance diagram for DtForwarderPort:
+ Collaboration diagram for DtForwarderPort:

List of all members.

Classes

struct  DtForwarderMsg

Public Types

typedef DtForwarderPort *(* DtForwarderPortCreatorFcn )(const DtRIDParameters *, const DtBoost::shared_ptr< DtRouteMap >, const MAKRti::DtInetAddr &, int, const MAKRti::DtInetAddr &)
 DtForwarderPort creator signature.
typedef
DtRouteMap::DtAddressPortList 
DtAddressPortList
typedef DtRouteMap::DtAddressList DtAddressList
typedef
DtRouteMap::DtInterfaceAddrSet 
DtInterfaceAddrSet
typedef std::vector
< DtTcpMsgSocket * > 
DtSocketList
typedef std::set
< DtTcpMsgSocket * > 
DtSocketSet
typedef std::pair
< DtInetAddrAndPort,
DtForwarderMsg
DtAddressMsgPair
typedef std::pair
< DtTcpMsgSocket
*, DtForwarderMsg
DtSockMsgPair
typedef std::map
< DtInetAddrAndPort,
DtTcpMsgSocket * > 
DtAddrToConnMap
typedef std::map
< DtInetAddrAndPort,
MAKRti::DtString > 
DtConnAndNameMap
typedef int(* DtConnectionChangeCb )(const MAKRti::DtString &, unsigned int, const DtInetAddrAndPort &, void *)
typedef void(* DtFederateAddedCb )(const MAKRti::DtString &, const MAKRti::DtString &, const MAKRti::DtString &, unsigned int, unsigned int, const DtInetAddrAndPort &, const MAKRti::DtString &, unsigned int, const MAKRti::DtString &, const MAKRti::DtString &, DtHlaVersionId, void *)
typedef void(* DtFederateRemovedCb )(const MAKRti::DtString &, const MAKRti::DtString &, unsigned int, unsigned int, const DtInetAddrAndPort &, void *)
typedef void(* DtPortReadyCb )(unsigned long, void *)
typedef int(* DtExecAddChangeCb )(const MAKRti::DtString &, unsigned int, const DtInetAddrAndPort &, const MAKRti::DtString &, bool, void *)
typedef int(* DtExecRemovedChangeCb )(const MAKRti::DtString &, unsigned int, const DtInetAddrAndPort &, void *)
typedef int(* DtSocketQueueCb )(unsigned int, int, void *)
typedef void(* DtWaitingForFwsCb )(const DtConnAndNameMap &, const DtConnAndNameMap &, void *)
typedef void(* DtNotWaitingForFwsCb )(void *)
typedef std::vector< std::pair
< DtConnectionChangeCb, void * > > 
DtCallbackList
typedef std::vector< std::pair
< DtFederateAddedCb, void * > > 
DtFederateAddedCallbackList
typedef std::vector< std::pair
< DtFederateRemovedCb, void * > > 
DtFederateRemovedCallbackList
typedef std::vector< std::pair
< DtPortReadyCb, void * > > 
DtPortReadyCallbackList
typedef std::vector< std::pair
< DtExecAddChangeCb, void * > > 
DtExecAddedCallbackList
typedef std::vector< std::pair
< DtExecRemovedChangeCb, void * > > 
DtExecRemovedCallbackList
typedef std::vector< std::pair
< DtSocketQueueCb, void * > > 
DtSocketQueueCallbackList
typedef std::vector< std::pair
< DtWaitingForFwsCb, void * > > 
DtWaitingForFwsCallbackList
typedef std::vector< std::pair
< DtNotWaitingForFwsCb, void * > > 
DtNotWaitingForFwsCallbackList

Public Member Functions

virtual ~DtForwarderPort ()
virtual bool isOk () const
 Is the Port still alive?
virtual bool isReady () const =0
 Is the Port fully usable and available?
virtual DtAddressMsgPair getNextMsg ()=0
 Get the next message to forward and the source connection.
virtual void sendByTransport (const DtForwarderMsg &msg) const =0
 Check transport metadata and send message to appropriate socket(s)
virtual void sendToAllReliable (const DtForwarderMsg &msg) const =0
 Send a message to all available destinations.
virtual void sendToListReliable (const DtForwarderMsg &msg, const DtRouteMap::DtAddressPortList &destinations) const =0
 Send a message to the specified list of destinations excluding the list of filtered destinations.
virtual bool flush ()
 Flush any unsent/buffered packets; return true if flush sent data.
virtual void selectParams (MAKRti::DtSelectParamWithWrite &selectParams)=0
 Add this port's current select() notification set to the passed set.
virtual void updateRoutes ()=0
 Handle changes to the Routing map.
virtual int checkConnectionStatus (const DtInetAddrAndPort *target=0)=0
 Test for lost connections - returns true if targeted connection is active or, if no target specified, returns false if at least one drop detected.
virtual void clearNeededConnections ()=0
 Clear the list of connections that this forwarder needs to establish.
virtual unsigned int abortPendingConnections ()=0
 Abort any embryonic connections.
virtual unsigned int pendingConnectionsAborted ()=0
 Return count of aborted connections.
virtual DtAddressPortList connections () const =0
 Get the list of all current connections to this port.
virtual void listenToMulticastGroup (const MAKRti::DtInetAddr &mcastAddr)=0
 Listen / drop multicast groups (LAN-port-only)
virtual void dropMulticastGroup (const MAKRti::DtInetAddr &mcastAddr)=0
virtual bool updateFederateConnectionId (unsigned long orig, unsigned long final)=0
 Update locally connected federate connection ID (LAN-port-only)
virtual void addConnectionEstablishedCb (DtConnectionChangeCb callback, void *usr)
 Register/Unregister a callback for new connections.
virtual void removeConnectionEstablishedCb (DtConnectionChangeCb callback, void *usr)
virtual void addConnectionLostCb (DtConnectionChangeCb callback, void *usr)
 Register/Unregister a callback for dropped connections.
virtual void removeConnectionLostCb (DtConnectionChangeCb callback, void *usr)
virtual void addForwarderPortReadyCb (DtPortReadyCb callback, void *usr)
virtual void removeForwarderPortReadyCb (DtPortReadyCb callback, void *usr)
virtual void addFederateJoinedCb (DtFederateAddedCb callback, void *usr)
virtual void removeFederateJoinedCb (DtFederateAddedCb callback, void *usr)
virtual void addFederateResignedCb (DtFederateRemovedCb callback, void *usr)
virtual void removeFederateResignedCb (DtFederateRemovedCb callback, void *usr)
virtual void addSocketQueueCb (DtSocketQueueCb callback, void *usr)
 Register/Unregister a callback for socket queuing.
virtual void removeSocketQueueCb (DtSocketQueueCb callback, void *usr)
virtual void addWaitingForForwarderConnectionsCb (DtWaitingForFwsCb callback, void *usr)
 Register/Unregister a callback for entrance to the "waiting for forwarder connections" state.
virtual void removeWaitingForForwarderConnectionsCb (DtWaitingForFwsCb callback, void *usr)
virtual void addNotWaitingForForwarderConnectionsCb (DtNotWaitingForFwsCb callback, void *usr)
 Register/Unregister a callback for exit from the "waiting for forwarder connections" state.
virtual void removeNotWaitingForForwarderConnectionsCb (DtNotWaitingForFwsCb callback, void *usr)
virtual void addExecConnectionEstablishedCb (DtExecAddChangeCb callback, void *usr)
virtual void removeExecConnectionEstablishedCb (DtExecAddChangeCb callback, void *usr)
virtual void addExecDisconnectedCb (DtExecRemovedChangeCb callback, void *usr)
virtual void removeExecDisconnectedCb (DtExecRemovedChangeCb callback, void *usr)
virtual int execConnected (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr, const MAKRti::DtString &hostName, bool fullyCompliant)
virtual int execDisconnected (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr)
virtual int socketQueueStatus (unsigned int connId, int connQueueStatus)
virtual void forwarderNodeIsReady (unsigned long id)
virtual void waitingForForwarderConnections (const DtConnAndNameMap &allNeededFws, const DtConnAndNameMap &stillNeededFws)
 Specifies that this port is waiting for other forwarder connections.
virtual void notWaitingForForwarderConnections ()
virtual void setForwarderId (unsigned long id)
 Set forwarder ID.

Protected Member Functions

 DtForwarderPort (const DtRIDParameters *params, DtBoost::shared_ptr< DtRouteMap > routes, MAKRti::DtInetAddr host, int forwarderPort, MAKRti::DtInetAddr addnlConnection)
virtual int connectionEstablished (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr)
 Call the appropriate callbacks for New or Lost connections.
virtual int connectionLost (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr)
virtual void federateResigned (const MAKRti::DtString &connName, const MAKRti::DtString &connType, unsigned int connID, unsigned int fedHandle, const DtInetAddrAndPort &addr)
virtual void federateJoined (const MAKRti::DtString &connName, const MAKRti::DtString &connType, const MAKRti::DtString &federationName, unsigned int connID, unsigned int fedHandle, const DtInetAddrAndPort &addr, const MAKRti::DtString &hostName, unsigned int processId, const MAKRti::DtString &processName, const MAKRti::DtString &commandArgs, DtHlaVersionId hlaVersion)

Static Protected Member Functions

static int connectionEstablished (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr, void *usr)
static int connectionLost (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr, void *usr)
static void federateJoined (const MAKRti::DtString &connName, const MAKRti::DtString &connType, const MAKRti::DtString &federationName, unsigned int connID, unsigned int fedHandle, const DtInetAddrAndPort &addr, const MAKRti::DtString &hostName, unsigned int processId, const MAKRti::DtString &processName, const MAKRti::DtString &commandArgs, DtHlaVersionId hlaVersion, void *usr)
static void federateResigned (const MAKRti::DtString &connName, const MAKRti::DtString &connType, unsigned int connID, unsigned int fedHandle, const DtInetAddrAndPort &addr, void *usr)
static int execConnected (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr, const MAKRti::DtString &hostName, bool fullyCompliant, void *usr)
static int execDisconnected (const MAKRti::DtString &connName, unsigned int connID, const DtInetAddrAndPort &addr, void *usr)
static int socketQueueStatus (unsigned int connId, int connQueueStatus, void *usr)
static void forwarderNodeIsReady (unsigned long id, void *usr)

Protected Attributes

const DtRIDParametersmyParams
DtBoost::shared_ptr< DtRouteMapmyRoutes
const MAKRti::DtInetAddr myAddress
bool myOk
int myPortToUse
MAKRti::DtInetAddr myAdditionalAddrToConnectTo
DtCallbackList myConnectionEstablishedCbs
DtCallbackList myConnectionLostCbs
DtFederateAddedCallbackList myFederateJoinedCbs
DtFederateRemovedCallbackList myFederateResignedCbs
DtPortReadyCallbackList myPortReadyCbs
DtExecAddedCallbackList myExecConnectedCbs
DtExecRemovedCallbackList myExecDisconnectedCbs
DtSocketQueueCallbackList mySocketQueueCbs
DtWaitingForFwsCallbackList myWaitingForFwsCbs
DtNotWaitingForFwsCallbackList myNotWaitingForFwsCbs

Detailed Description

The DtForwarderPort is an Abstract Base Class which provides the interface to a collection of connections from which messages may be read and to which messages may be sent.


Member Typedef Documentation

typedef std::vector< std::pair< DtConnectionChangeCb, void* > > DtForwarderPort::DtCallbackList
typedef std::map<DtInetAddrAndPort, MAKRti::DtString> DtForwarderPort::DtConnAndNameMap
typedef int(* DtForwarderPort::DtConnectionChangeCb)(const MAKRti::DtString &, unsigned int, const DtInetAddrAndPort &, void *)
typedef int(* DtForwarderPort::DtExecAddChangeCb)(const MAKRti::DtString &, unsigned int, const DtInetAddrAndPort &, const MAKRti::DtString &, bool, void *)
typedef std::vector< std::pair< DtExecAddChangeCb, void* > > DtForwarderPort::DtExecAddedCallbackList
typedef std::vector< std::pair< DtExecRemovedChangeCb, void* > > DtForwarderPort::DtExecRemovedCallbackList
typedef int(* DtForwarderPort::DtExecRemovedChangeCb)(const MAKRti::DtString &, unsigned int, const DtInetAddrAndPort &, void *)
typedef std::vector< std::pair< DtFederateAddedCb, void* > > DtForwarderPort::DtFederateAddedCallbackList
typedef void(* DtForwarderPort::DtFederateAddedCb)(const MAKRti::DtString &, const MAKRti::DtString &, const MAKRti::DtString &, unsigned int, unsigned int, const DtInetAddrAndPort &, const MAKRti::DtString &, unsigned int, const MAKRti::DtString &, const MAKRti::DtString &, DtHlaVersionId, void *)
typedef std::vector< std::pair< DtFederateRemovedCb, void* > > DtForwarderPort::DtFederateRemovedCallbackList
typedef void(* DtForwarderPort::DtFederateRemovedCb)(const MAKRti::DtString &, const MAKRti::DtString &, unsigned int, unsigned int, const DtInetAddrAndPort &, void *)
typedef DtForwarderPort*(* DtForwarderPort::DtForwarderPortCreatorFcn)(const DtRIDParameters *, const DtBoost::shared_ptr< DtRouteMap >, const MAKRti::DtInetAddr &, int, const MAKRti::DtInetAddr &)

DtForwarderPort creator signature.

typedef std::vector< std::pair< DtNotWaitingForFwsCb, void* > > DtForwarderPort::DtNotWaitingForFwsCallbackList
typedef void(* DtForwarderPort::DtNotWaitingForFwsCb)(void *)
typedef std::vector< std::pair< DtPortReadyCb, void*> > DtForwarderPort::DtPortReadyCallbackList
typedef void(* DtForwarderPort::DtPortReadyCb)(unsigned long, void *)
typedef std::vector< std::pair< DtSocketQueueCb, void* > > DtForwarderPort::DtSocketQueueCallbackList
typedef int(* DtForwarderPort::DtSocketQueueCb)(unsigned int, int, void *)
typedef std::vector< std::pair< DtWaitingForFwsCb, void* > > DtForwarderPort::DtWaitingForFwsCallbackList
typedef void(* DtForwarderPort::DtWaitingForFwsCb)(const DtConnAndNameMap &, const DtConnAndNameMap &, void *)

Constructor & Destructor Documentation

DtForwarderPort::DtForwarderPort ( const DtRIDParameters params,
DtBoost::shared_ptr< DtRouteMap routes,
MAKRti::DtInetAddr  host,
int  forwarderPort,
MAKRti::DtInetAddr  addnlConnection 
) [inline, protected]
virtual DtForwarderPort::~DtForwarderPort ( ) [inline, virtual]

Member Function Documentation

virtual unsigned int DtForwarderPort::abortPendingConnections ( ) [pure virtual]
void DtForwarderPort::addConnectionEstablishedCb ( DtConnectionChangeCb  callback,
void *  usr 
) [inline, virtual]

Register/Unregister a callback for new connections.

References myConnectionEstablishedCbs.

Referenced by DtForwarderFaultProcessor::DtForwarderFaultProcessor(), and DtForwarderNode::DtForwarderNode().

void DtForwarderPort::addConnectionLostCb ( DtConnectionChangeCb  callback,
void *  usr 
) [inline, virtual]

Register/Unregister a callback for dropped connections.

References myConnectionLostCbs.

Referenced by DtForwarderFaultProcessor::DtForwarderFaultProcessor(), and DtForwarderNode::DtForwarderNode().

void DtForwarderPort::addExecConnectionEstablishedCb ( DtExecAddChangeCb  callback,
void *  usr 
) [inline, virtual]

References myExecConnectedCbs.

void DtForwarderPort::addExecDisconnectedCb ( DtExecRemovedChangeCb  callback,
void *  usr 
) [inline, virtual]

References myExecDisconnectedCbs.

void DtForwarderPort::addFederateJoinedCb ( DtFederateAddedCb  callback,
void *  usr 
) [inline, virtual]

References myFederateJoinedCbs.

void DtForwarderPort::addFederateResignedCb ( DtFederateRemovedCb  callback,
void *  usr 
) [inline, virtual]

References myFederateResignedCbs.

void DtForwarderPort::addForwarderPortReadyCb ( DtPortReadyCb  callback,
void *  usr 
) [inline, virtual]
void DtForwarderPort::addNotWaitingForForwarderConnectionsCb ( DtNotWaitingForFwsCb  callback,
void *  usr 
) [inline, virtual]

Register/Unregister a callback for exit from the "waiting for forwarder connections" state.

References myNotWaitingForFwsCbs.

void DtForwarderPort::addSocketQueueCb ( DtSocketQueueCb  callback,
void *  usr 
) [inline, virtual]

Register/Unregister a callback for socket queuing.

References mySocketQueueCbs.

void DtForwarderPort::addWaitingForForwarderConnectionsCb ( DtWaitingForFwsCb  callback,
void *  usr 
) [inline, virtual]

Register/Unregister a callback for entrance to the "waiting for forwarder connections" state.

References myWaitingForFwsCbs.

virtual int DtForwarderPort::checkConnectionStatus ( const DtInetAddrAndPort target = 0) [pure virtual]

Test for lost connections - returns true if targeted connection is active or, if no target specified, returns false if at least one drop detected.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::abortPendingConnections(), DtForwarderNode::nextForwarderOnRoute(), and DtForwarderNode::refreshConnections().

virtual void DtForwarderPort::clearNeededConnections ( ) [pure virtual]

Clear the list of connections that this forwarder needs to establish.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::continueWithoutUnconnectedFws().

int DtForwarderPort::connectionEstablished ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr 
) [inline, protected, virtual]

Call the appropriate callbacks for New or Lost connections.

References myConnectionEstablishedCbs.

Referenced by DtInOutForwarderPort::connectionCompleted(), and DtLanForwarderPort::DtLanForwarderPort().

int DtForwarderPort::connectionEstablished ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr,
void *  usr 
) [inline, static, protected]
int DtForwarderPort::connectionLost ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr 
) [inline, protected, virtual]
int DtForwarderPort::connectionLost ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr,
void *  usr 
) [inline, static, protected]
virtual DtAddressPortList DtForwarderPort::connections ( ) const [pure virtual]

Get the list of all current connections to this port.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

virtual void DtForwarderPort::dropMulticastGroup ( const MAKRti::DtInetAddr &  mcastAddr) [pure virtual]
int DtForwarderPort::execConnected ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr,
const MAKRti::DtString &  hostName,
bool  fullyCompliant 
) [inline, virtual]
int DtForwarderPort::execConnected ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr,
const MAKRti::DtString &  hostName,
bool  fullyCompliant,
void *  usr 
) [inline, static, protected]
int DtForwarderPort::execDisconnected ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr 
) [inline, virtual]
int DtForwarderPort::execDisconnected ( const MAKRti::DtString &  connName,
unsigned int  connID,
const DtInetAddrAndPort addr,
void *  usr 
) [inline, static, protected]
void DtForwarderPort::federateJoined ( const MAKRti::DtString &  connName,
const MAKRti::DtString &  connType,
const MAKRti::DtString &  federationName,
unsigned int  connID,
unsigned int  fedHandle,
const DtInetAddrAndPort addr,
const MAKRti::DtString &  hostName,
unsigned int  processId,
const MAKRti::DtString &  processName,
const MAKRti::DtString &  commandArgs,
DtHlaVersionId  hlaVersion 
) [inline, protected, virtual]
void DtForwarderPort::federateJoined ( const MAKRti::DtString &  connName,
const MAKRti::DtString &  connType,
const MAKRti::DtString &  federationName,
unsigned int  connID,
unsigned int  fedHandle,
const DtInetAddrAndPort addr,
const MAKRti::DtString &  hostName,
unsigned int  processId,
const MAKRti::DtString &  processName,
const MAKRti::DtString &  commandArgs,
DtHlaVersionId  hlaVersion,
void *  usr 
) [inline, static, protected]
void DtForwarderPort::federateResigned ( const MAKRti::DtString &  connName,
const MAKRti::DtString &  connType,
unsigned int  connID,
unsigned int  fedHandle,
const DtInetAddrAndPort addr 
) [inline, protected, virtual]
void DtForwarderPort::federateResigned ( const MAKRti::DtString &  connName,
const MAKRti::DtString &  connType,
unsigned int  connID,
unsigned int  fedHandle,
const DtInetAddrAndPort addr,
void *  usr 
) [inline, static, protected]
bool DtForwarderPort::flush ( ) [inline, virtual]

Flush any unsent/buffered packets; return true if flush sent data.

Reimplemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::tick().

void DtForwarderPort::forwarderNodeIsReady ( unsigned long  id) [inline, virtual]
void DtForwarderPort::forwarderNodeIsReady ( unsigned long  id,
void *  usr 
) [inline, static, protected]
virtual DtAddressMsgPair DtForwarderPort::getNextMsg ( ) [pure virtual]

Get the next message to forward and the source connection.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::tick().

virtual bool DtForwarderPort::isOk ( ) const [inline, virtual]

Is the Port still alive?

Referenced by DtForwarderNode::DtForwarderNode().

virtual bool DtForwarderPort::isReady ( ) const [pure virtual]

Is the Port fully usable and available?

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::abortPendingConnections(), and DtForwarderNode::refreshConnections().

virtual void DtForwarderPort::listenToMulticastGroup ( const MAKRti::DtInetAddr &  mcastAddr) [pure virtual]

Listen / drop multicast groups (LAN-port-only)

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::lanPortListenToMulticastGroup().

virtual unsigned int DtForwarderPort::pendingConnectionsAborted ( ) [pure virtual]

Return count of aborted connections.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

void DtForwarderPort::removeConnectionEstablishedCb ( DtConnectionChangeCb  callback,
void *  usr 
) [inline, virtual]
void DtForwarderPort::removeConnectionLostCb ( DtConnectionChangeCb  callback,
void *  usr 
) [inline, virtual]
void DtForwarderPort::removeExecConnectionEstablishedCb ( DtExecAddChangeCb  callback,
void *  usr 
) [inline, virtual]

References myExecConnectedCbs.

void DtForwarderPort::removeExecDisconnectedCb ( DtExecRemovedChangeCb  callback,
void *  usr 
) [inline, virtual]

References myExecDisconnectedCbs.

void DtForwarderPort::removeFederateJoinedCb ( DtFederateAddedCb  callback,
void *  usr 
) [inline, virtual]

References myFederateJoinedCbs.

void DtForwarderPort::removeFederateResignedCb ( DtFederateRemovedCb  callback,
void *  usr 
) [inline, virtual]

References myFederateResignedCbs.

void DtForwarderPort::removeForwarderPortReadyCb ( DtPortReadyCb  callback,
void *  usr 
) [inline, virtual]
void DtForwarderPort::removeNotWaitingForForwarderConnectionsCb ( DtNotWaitingForFwsCb  callback,
void *  usr 
) [inline, virtual]

References myNotWaitingForFwsCbs.

void DtForwarderPort::removeSocketQueueCb ( DtSocketQueueCb  callback,
void *  usr 
) [inline, virtual]

References mySocketQueueCbs.

void DtForwarderPort::removeWaitingForForwarderConnectionsCb ( DtWaitingForFwsCb  callback,
void *  usr 
) [inline, virtual]

References myWaitingForFwsCbs.

virtual void DtForwarderPort::selectParams ( MAKRti::DtSelectParamWithWrite &  selectParams) [pure virtual]

Add this port's current select() notification set to the passed set.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::selectParams().

virtual void DtForwarderPort::sendByTransport ( const DtForwarderMsg msg) const [pure virtual]

Check transport metadata and send message to appropriate socket(s)

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::sendToLanPort().

virtual void DtForwarderPort::sendToAllReliable ( const DtForwarderMsg msg) const [pure virtual]

Send a message to all available destinations.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

virtual void DtForwarderPort::sendToListReliable ( const DtForwarderMsg msg,
const DtRouteMap::DtAddressPortList destinations 
) const [pure virtual]

Send a message to the specified list of destinations excluding the list of filtered destinations.

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderFaultProcessor::newConnection(), and DtForwarderNode::sendToOutPort().

void DtForwarderPort::setForwarderId ( unsigned long  id) [inline, virtual]

Set forwarder ID.

When forwarder is configured via routes files, forwarderID is known at construction, but when configured dynamically it is determined by interactions between peer forwarders and must be set.

Reimplemented in DtLanForwarderPort.

Referenced by DtForwarderNode::inOutForwarderPortReady().

int DtForwarderPort::socketQueueStatus ( unsigned int  connId,
int  connQueueStatus 
) [inline, virtual]

References mySocketQueueCbs.

int DtForwarderPort::socketQueueStatus ( unsigned int  connId,
int  connQueueStatus,
void *  usr 
) [inline, static, protected]
virtual bool DtForwarderPort::updateFederateConnectionId ( unsigned long  orig,
unsigned long  final 
) [pure virtual]

Update locally connected federate connection ID (LAN-port-only)

Implemented in DtInOutForwarderPort, and DtLanForwarderPort.

Referenced by DtForwarderNode::lanPortUpdateFederateConnectionId().

virtual void DtForwarderPort::updateRoutes ( ) [pure virtual]
void DtForwarderPort::waitingForForwarderConnections ( const DtConnAndNameMap allNeededFws,
const DtConnAndNameMap stillNeededFws 
) [inline, virtual]

Specifies that this port is waiting for other forwarder connections.

Lists the full set of expected forwarders, and the set we are still waiting for.

References myWaitingForFwsCbs.

Referenced by DtInOutForwarderPort::updateRoutes().


Member Data Documentation

MAKRti::DtInetAddr DtForwarderPort::myAdditionalAddrToConnectTo [protected]
const MAKRti::DtInetAddr DtForwarderPort::myAddress [protected]
DtBoost::shared_ptr<DtRouteMap> DtForwarderPort::myRoutes [protected]

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

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)