Public Member Functions |
| virtual | ~DtInOutForwarderPort () |
| virtual bool | isReady () const |
| | Is the Port fully usable and available?
|
| virtual DtAddressMsgPair | getNextMsg () |
| | Get the next message to forward and the source connection.
|
| virtual bool | getInitializationMsgs (DtForwarderPort::DtSocketSet &socks, std::list< DtAddressMsgPair > &msgs, bool printBeDestMetadata) |
| | Get the next initialization messages off of a set of pending TCP sockets.
|
| virtual bool | getInitializationMsg (DtMsgSocket *sock, DtAddressMsgPair &msg, bool printBeDestMetadata) |
| | Get the next initialization message off of a pending TCP socket.
|
| virtual void | sendByTransport (const DtForwarderMsg &msg) const |
| | Check transport metadata and send message to appropriate destinations.
|
| virtual void | sendToAllReliable (const DtForwarderMsg &msg) const |
| | Send a message to all available destinations.
|
| virtual void | sendToListReliable (const DtForwarderMsg &msg, const DtAddressPortList &destinations) const |
| | Send a message to the specified list of destinations excluding the list of filtered destinations.
|
| virtual void | selectParams (MAKRti::DtSelectParamWithWrite &selectParams) |
| | Add this port's current select() notification set to the passed set.
|
| virtual void | updateRoutes () |
| | Handle changes to the Routing map.
|
| virtual void | processInitializationMessages () |
| virtual int | checkConnectionStatus (const DtInetAddrAndPort *target=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 () |
| | Clear the list of needed forwarder connections.
|
| virtual unsigned int | abortPendingConnections () |
| | Abort any embryonic connections.
|
| virtual unsigned int | pendingConnectionsAborted () |
| | Return a count of aborted or failed connection attempts.
|
| virtual DtAddressPortList | connections () const |
| | Get the list of all current connections to this port.
|
| virtual void | listenToMulticastGroup (const MAKRti::DtInetAddr &mcastAddr) |
| | Listen / drop multicast groups (not implemented in this class)
|
| virtual void | dropMulticastGroup (const MAKRti::DtInetAddr &mcastAddr) |
| virtual bool | updateFederateConnectionId (unsigned long orig, unsigned long final) |
| | Update locally connected federate connection ID (LAN-port-only)
|
| virtual bool | flush () |
| | Flush any pending messages.
|
| virtual bool | flushOnly () |
| | Flush any pending messages. Does not do any socket disconnect processing.
|
| virtual MAKRti::DtString | connectionListToString (const char *separator=" : ") const |
| | Print the current connection list.
|
| virtual bool | populateConnectionInformation (unsigned int &numForwarderToForwarderConns, std::vector< MAKRti::DtString > &forwarderIdentifiers, std::vector< MAKRti::DtString > &forwarderConnectionHostNames, std::vector< DtInetAddrAndPort > &forwarderConnectionAddrs) const |
| virtual void | socketAdditionCb (DtTcpMsgSocket *sock) |
| virtual void | sendMacAddrMsg (DtTcpMsgSocket *sock) |
| | Send a populated DtMacAddrMsg to the specified socket.
|
| virtual void | sendPortMsg (DtTcpMsgSocket *sock) |
| | Send a message indicating our local socket port for the given socket.
|
| virtual void | socketEstablishedCb (DtTcpMsgSocket *sock) |
| virtual void | socketRemovalCb (DtTcpMsgSocket *sock) |
| virtual void | processForwarderNodeInfoMsg (const DtForwarderPort::DtAddressMsgPair &msg) |
| virtual void | processMacAddrMsg (const DtForwarderPort::DtAddressMsgPair &msg) |
| virtual void | processPortMsg (const DtForwarderPort::DtAddressMsgPair &msgPair) |
| | Process a message indicating the listening port of the forwarder on the other end of a socket.
|
| void | sendForwarderNodeInfoMsg (DtTcpMsgSocket *sock) |
| void | sendForwarderNodeInfoMsg () |
| virtual | ~DtForwarderPort () |
| virtual bool | isOk () const |
| | Is the Port still alive?
|
| 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 |
| | DtInOutForwarderPort (const DtRIDParameters *params, DtBoost::shared_ptr< DtRouteMap > routes, const MAKRti::DtInetAddr &host, int forwarderPort, const MAKRti::DtInetAddr &forwarderAddrToConnectTo) |
| | Base Ctor - called by default creator.
|
| virtual void | initializeConnections () |
| | Initiates a connection to each adjacent node.
|
| virtual bool | connectToPeer (const DtInetAddrAndPort &addrToConnectTo) |
| | Returns whether sock was ok()
|
| virtual int | processLostConnection (DtTcpMsgSocket *sock) |
| | Handle lost connections.
|
| void | connectionCompleted (const DtInetAddrAndPort &addrAndPort, DtTcpMsgSocket *sock) |
| | The new socket has been processed (either via routes files or dynamically).
|
| void | addSocketUsingRoutesFile (DtTcpMsgSocket *sock, const DtInetAddrAndPort &addrAndPort) |
| | Add this socket to connection using routes file information.
|
| bool | addSocketDynamically (DtTcpMsgSocket *sock) |
| | Add socket to connections dynamically.
|
| void | addConnection (const DtInetAddrAndPort &newConn, DtTcpMsgSocket *sock) |
| void | removeConnection (DtAddrToConnMap::iterator pos) |
| | DtInOutForwarderPort () |
| | Default Ctor, Copy Ctor, Assignment - unimplemented.
|
| | DtInOutForwarderPort (const DtInOutForwarderPort &orig) |
| DtInOutForwarderPort & | operator= (const DtInOutForwarderPort &orig) |
| bool | removeFromPendingList (DtTcpMsgSocket *addr) |
| | Remove a connection from the pending list (return true if found and removed)
|
| void | becomeRootForwarderNode () |
| | Sets this forwarder node as the root.
|
| | 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) |
Additional Inherited Members |
| 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 |
| 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) |
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.