![]() |
MAK RTIspy API Documentation for HLA 1.3
|
Instances of DtPartnerMgr process partner messages to establish federate partners in an unlicensed federation execution. More...
Collaboration diagram for DtPartnerMgr:Public Member Functions | |
| DtPartnerMgr (DtConnectionMgr *connectMgr) | |
| Constructor. | |
| ~DtPartnerMgr () | |
| Destructor. | |
| virtual void | joinFederationExecution (const char *federateType, const char *executionName, const char *federateName, unsigned long flags) |
| Start up partner management. | |
| virtual void | resign () |
| Shut down partner management. | |
| virtual bool | acceptMessage (const DtRtiMsg &msg) |
| Return boolean: message should be accepted? | |
Protected Member Functions | |
| virtual void | sendJoinMessage (MAKRti::DtString federateType, MAKRti::DtString fedexName, MAKRti::DtString federateName) |
| Send a lightweight join message. | |
| virtual void | sendPartnerMessage (DtFederateHandle partnerFederate, DtPartnerResponse response) |
| Send a partner response message. | |
| virtual void | processOtherMessage (DtRtiMsg const &msg) |
| Process all other messages. | |
| virtual void | processResignMessage (const DtResignMsg &msg) |
| Process resign message. | |
| virtual void | processPartnerMessage (const DtPartnerFederateMsg &msg) |
| Partner federate message callback. | |
| virtual void | processPartnerAccept (const DtPartnerFederateMsg &msg) |
| Process partner federate message callback for accept response. | |
| virtual void | processPartnerConfirm (const DtPartnerFederateMsg &msg) |
| Process partner federate message callback for confirm response. | |
| virtual void | processPartnerReject (const DtPartnerFederateMsg &msg) |
| Process partner federate message callback for reject response. | |
| virtual bool | partnerSlotAvailable () const |
| Return boolean: Is a partner slot available? | |
| virtual bool | waitingForConfirm () const |
| Return boolean: Is there any partner that needs to be confirmed? | |
| virtual bool | isPartner (DtFederateHandle federate) const |
| Return boolean: Is the given federate a partner? | |
| virtual bool | isPending (DtFederateHandle federate) const |
| Return boolean: Is the given federate a pending partner? (false if not a partner or partner but confirmed) | |
| virtual bool | isConfirmed (DtFederateHandle federate) const |
| Return boolean: Is the given federate a confirmed partner? (false if not a partner or partner but pending) | |
| virtual void | acceptPartner (DtFederateHandle federate, bool confirmed=false) |
| Accept the given federate as a partner. Partner may either be pending or confirmed. | |
| virtual void | confirmPartner (DtFederateHandle federate) |
| Change the status of a partner to confirmed. | |
| virtual void | removePartner (DtFederateHandle federate) |
| Remove the given federate as a partner. | |
| virtual void | removePendingPartner (DtFederateHandle federate) |
| Remove the given federate as a pending partner. | |
| virtual void | removeConfirmedPartner (DtFederateHandle federate) |
| Remove the given federate as a confirmed partner. | |
| virtual bool | isMe (DtFederateHandle federate) const |
| Return boolean: given federate handle is mine. | |
| virtual DtFederateHandle | federateHandle () const |
| Return federate handle. | |
Protected Attributes | |
| DtConnectionMgr * | myConnectMgr |
| Access to connection manager. | |
| bool | myIsJoined |
| Join status. | |
| DtPartnerState | myPartnerState |
| Partnering acceptance/confirm state. | |
| std::vector< DtFederateHandle > | myPartners |
| List of partners. | |
| std::vector< DtFederateHandle > | myPendingPartners |
| List of pending partners. | |
| std::vector< DtFederateHandle > | myConfirmedPartners |
| List of confirmed partners. | |
| DtFederateHandleStdSet | myFilteredFederates |
| List of license opposites that are being filtered. | |
Private Member Functions | |
| DtPartnerMgr (DtPartnerMgr const &) | |
| Copy Constructor not implemented – Copy Not Allowed! | |
| DtPartnerMgr & | operator= (DtPartnerMgr const &) |
| Assignment not implemented – Assignment Not Allowed! | |
Instances of DtPartnerMgr process partner messages to establish federate partners in an unlicensed federation execution.
| DtPartnerMgr::DtPartnerMgr | ( | DtConnectionMgr * | connectMgr | ) |
Constructor.
References DtMAX_PARTNERS, and DtUseFedObservers.
| DtPartnerMgr::~DtPartnerMgr | ( | ) |
Destructor.
|
private |
Copy Constructor not implemented – Copy Not Allowed!
|
virtual |
Return boolean: message should be accepted?
References DtPartnerFederateMsgKind, DtResignMsgKind, DtResignRespMsgKind, DtUseFedObservers, DtRtiMsg::federateHandle(), DtNetMsgHeader::flags, isPartner(), DtRtiMsg::msgKind(), myFilteredFederates, myIsJoined, DtRtiMsg::netHeader(), processOtherMessage(), processPartnerMessage(), and processResignMessage().
Referenced by DtConnectionMgr::processMsg().
|
protectedvirtual |
Accept the given federate as a partner. Partner may either be pending or confirmed.
References DtUseFedObservers, isConfirmed(), isPartner(), isPending(), myConfirmedPartners, myPartners, myPendingPartners, removeConfirmedPartner(), and removePendingPartner().
Referenced by confirmPartner(), processOtherMessage(), and processPartnerAccept().
|
protectedvirtual |
Change the status of a partner to confirmed.
References acceptPartner(), isConfirmed(), and isPending().
Referenced by processPartnerConfirm().
|
protectedvirtual |
Return federate handle.
References DtConnectionMgr::fedHandle(), and myConnectMgr.
Referenced by isMe().
|
protectedvirtual |
Return boolean: Is the given federate a confirmed partner? (false if not a partner or partner but pending)
References myConfirmedPartners.
Referenced by acceptPartner(), and confirmPartner().
|
protectedvirtual |
Return boolean: given federate handle is mine.
References federateHandle().
Referenced by processOtherMessage(), processPartnerAccept(), processPartnerConfirm(), processPartnerMessage(), and processPartnerReject().
|
protectedvirtual |
Return boolean: Is the given federate a partner?
References myPartners.
Referenced by acceptMessage(), acceptPartner(), processOtherMessage(), processPartnerAccept(), processPartnerConfirm(), and processResignMessage().
|
protectedvirtual |
Return boolean: Is the given federate a pending partner? (false if not a partner or partner but confirmed)
References myPendingPartners.
Referenced by acceptPartner(), and confirmPartner().
|
virtual |
Start up partner management.
References DtPartnerAccepting, myConnectMgr, myIsJoined, myPartnerState, DtConnectionMgr::params(), and sendJoinMessage().
Referenced by DtSimpleFederateMgr::joinFederationExecution().
|
private |
Assignment not implemented – Assignment Not Allowed!
|
protectedvirtual |
Return boolean: Is a partner slot available?
References DtUseFedObservers, and myPartners.
Referenced by processOtherMessage(), processPartnerAccept(), processPartnerConfirm(), and processResignMessage().
|
protectedvirtual |
Process all other messages.
References acceptPartner(), DtPartnerAccepting, DtPartnerConfirmed, DtPartnerPendingConfirm, DtPartnerResponseAccept, DtPartnerResponseReject, DtRtiMsg::federateHandle(), isMe(), isPartner(), myPartnerState, partnerSlotAvailable(), and sendPartnerMessage().
Referenced by acceptMessage().
|
protectedvirtual |
Process partner federate message callback for accept response.
References acceptPartner(), DtPartnerAccepting, DtPartnerConfirmed, DtPartnerPendingConfirm, DtPartnerResponseConfirm, DtPartnerResponseReject, DtUseFedObservers, DtRtiMsg::federateHandle(), isMe(), isPartner(), myPartnerState, DtPartnerFederateMsg::partnerFederate(), partnerSlotAvailable(), sendPartnerMessage(), and waitingForConfirm().
Referenced by processPartnerMessage().
|
protectedvirtual |
Process partner federate message callback for confirm response.
References confirmPartner(), DtPartnerConfirmed, DtPartnerPendingConfirm, DtPartnerResponseReject, DtUseFedObservers, DtRtiMsg::federateHandle(), isMe(), isPartner(), myPartnerState, DtPartnerFederateMsg::partnerFederate(), partnerSlotAvailable(), sendPartnerMessage(), and waitingForConfirm().
Referenced by processPartnerMessage().
|
protectedvirtual |
Partner federate message callback.
References DtPartnerResponseAccept, DtPartnerResponseConfirm, DtPartnerResponseInvalid, DtPartnerResponseReject, DtRtiMsg::federateHandle(), isMe(), DtPartnerFederateMsg::partnerResponse(), processPartnerAccept(), processPartnerConfirm(), and processPartnerReject().
Referenced by acceptMessage().
|
protectedvirtual |
Process partner federate message callback for reject response.
References rti1516::CANCEL_THEN_DELETE_THEN_DIVEST, rti1516e::CANCEL_THEN_DELETE_THEN_DIVEST, RTI::DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES, DtPartnerResponseReject, DtToWString(), DtUseFedObservers, DtRtiMsg::federateHandle(), DtConnectionMgr::fedMgr(), isMe(), myConnectMgr, DtPartnerFederateMsg::partnerFederate(), DtAssistantPopupHelper::popupAssistantMessage(), DtFederateMgr::resignFederationExecution(), and sendPartnerMessage().
Referenced by processPartnerMessage().
|
protectedvirtual |
Process resign message.
References DtPartnerAccepting, DtRtiMsg::federateHandle(), isPartner(), myPartnerState, partnerSlotAvailable(), and removePartner().
Referenced by acceptMessage().
|
protectedvirtual |
Remove the given federate as a confirmed partner.
noop if federate was not confirmed.
References myConfirmedPartners.
Referenced by acceptPartner(), and removePartner().
|
protectedvirtual |
Remove the given federate as a partner.
noop if federate was not partner.
References myPartners, removeConfirmedPartner(), and removePendingPartner().
Referenced by processResignMessage().
|
protectedvirtual |
Remove the given federate as a pending partner.
noop if federate was not pending.
References myPendingPartners.
Referenced by acceptPartner(), and removePartner().
|
virtual |
Shut down partner management.
References DtPartnerAccepting, myConfirmedPartners, myIsJoined, myPartners, myPartnerState, and myPendingPartners.
|
protectedvirtual |
Send a lightweight join message.
References DtConnectionMgr::create(), DtJoinLightWeightMsgKind, DtConnectionMgr::internalTransportType(), myConnectMgr, DtRIDParameters::networkInterfaceAddr(), DtConnectionMgr::params(), DtConnectionMgr::sendStampedAndDelete(), DtJoinLightWeightMsg::set(), and DtJoinLightWeightMsg::setIpAddress().
Referenced by joinFederationExecution().
|
protectedvirtual |
Send a partner response message.
References DtConnectionMgr::create(), DtPartnerFederateMsgKind, DtConnectionMgr::internalTransportType(), myConnectMgr, DtConnectionMgr::sendStampedAndDelete(), and DtPartnerFederateMsg::set().
Referenced by processOtherMessage(), processPartnerAccept(), processPartnerConfirm(), and processPartnerReject().
|
protectedvirtual |
Return boolean: Is there any partner that needs to be confirmed?
References DtUseFedObservers, and myConfirmedPartners.
Referenced by processPartnerAccept(), and processPartnerConfirm().
|
protected |
List of confirmed partners.
Referenced by acceptPartner(), isConfirmed(), removeConfirmedPartner(), resign(), and waitingForConfirm().
|
protected |
Access to connection manager.
Referenced by federateHandle(), joinFederationExecution(), processPartnerReject(), sendJoinMessage(), and sendPartnerMessage().
|
protected |
List of license opposites that are being filtered.
Referenced by acceptMessage().
|
protected |
Join status.
Referenced by acceptMessage(), joinFederationExecution(), and resign().
|
protected |
List of partners.
Referenced by acceptPartner(), isPartner(), partnerSlotAvailable(), removePartner(), and resign().
|
protected |
Partnering acceptance/confirm state.
Referenced by joinFederationExecution(), processOtherMessage(), processPartnerAccept(), processPartnerConfirm(), processResignMessage(), and resign().
|
protected |
List of pending partners.
Referenced by acceptPartner(), isPending(), removePendingPartner(), and resign().