# OwnershipManagement Class Reference

Ownership Management main class. More...

`#include <OwnershipManagement.hh>`

List of all members.

## Public Member Functions
| OwnershipManagement (Communications *GC, FederationManagement *GF)
| Constructor.
| ~OwnershipManagement ()
| Destructor.
const char * | attributeOwnedByFederate (ObjectHandle theObject, AttributeHandle theAttribute, TypeException &e)
| isAttributeOwnedByFederate.
void | queryAttributeOwnership (ObjectHandle theObject, AttributeHandle theAttribute, TypeException &e)
| queryAttributeOwnership.
void | informAttributeOwnership (ObjectHandle theObject, AttributeHandle theAttribute, FederateHandle theOwner, TypeException &e)
| informAttributeOwnership.
void | attributeIsNotOwned (ObjectHandle theObject, AttributeHandle theAttribute, FederateHandle theOwner, TypeException &e)
| attributeIsNotOwned.
void | negotiatedAttributeOwnershipDivestiture (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, std::string theTag, TypeException &e)
| negotiatedAttributeOwnershipDivestiture.
void | cancelnegotiatedAttributeOwnershipDivestiture (ObjectHandle theObject, std::vector< AttributeHandle > &, UShort attribArraySize, TypeException &e)
| cancelNnegotiatedAttributeOwnershipDivestiture.
void | attributeOwnershipAcquisitionIfAvailable (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, TypeException &e)
| attributeOwnershipAcquisitionIfAvailable.
void | cancelattributeOwnershipAcquisition (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, TypeException &e)
| cancelAttributeOwnershipAcquisition.
void | attributeOwnershipAcquisitionNotification (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, FederateHandle theOwner, TypeException &e)
| attributeOwnershipAcquisitionNotification.
void | attributeOwnershipUnavailable (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, FederateHandle theOwner, TypeException &e)
| attributeOwnershipUnavailable.
void | requestAttributeOwnershipAssumption (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, FederateHandle theOwner, std::string theTag, TypeException &e)
| requestAttributeOwnershipAssumption.
void | unconditionalAttributeOwnershipDivestiture (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, TypeException &e)
| unconditionalAttributeOwnershipDivestiture.
void | attributeOwnershipAcquisition (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, std::string theTag, TypeException &e)
| attributeOwnershipAcquisition.
void | requestAttributeOwnershipRelease (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, std::string theTag, TypeException &e)
| requestAttributeOwnershipRelease.
void | attributeOwnershipDivestitureNotification (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, TypeException &e)
| attributeOwnershipDivestitureNotification.
AttributeHandleSet * | attributeOwnershipRealeaseResponse (ObjectHandle theObject, std::vector< AttributeHandle > &attribArray, UShort attribArraySize, TypeException &e)
| attributeOwnershipRealeaseResponse.
void | confirmAttributeOwnershipAcquisitionCancellation (ObjectHandle theObject, std::vector< AttributeHandle > &, UShort attribArraySize, TypeException &e)
| confirmattributeOwnershipAcquisitionCancellation.
## Protected Attributes
Communications * | comm
Queues * | queues
FederationManagement * | fm

## Detailed Description

Ownership Management main class.

Definition at line 42 of file OwnershipManagement.hh.

## Constructor & Destructor Documentation

OwnershipManagement | ( | Communications * | GC,
|  | FederationManagement * | GF |
| ) |  |  |

Constructor.

Definition at line 48 of file OwnershipManagement.cc.

References OwnershipManagement::comm, and OwnershipManagement::fm.

~OwnershipManagement | ( |  | ) |

Destructor.

Definition at line 57 of file OwnershipManagement.cc.

## Member Function Documentation

const char * attributeOwnedByFederate | ( | ObjectHandle | theObject,
|  | AttributeHandle | theAttribute,
|  | TypeException & | e |
| ) |  |  |

isAttributeOwnedByFederate.

Definition at line 64 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, OwnershipManagement::comm, certi::rtia::D, certi::e_NO_EXCEPTION, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::IS_ATTRIBUTE_OWNED_BY_FEDERATE, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void queryAttributeOwnership | ( | ObjectHandle | theObject,
|  | AttributeHandle | theAttribute,
|  | TypeException & | e |
| ) |  |  |

queryAttributeOwnership.

Definition at line 101 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, NetworkMessage::QUERY_ATTRIBUTE_OWNERSHIP, Communications::sendMessage(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void informAttributeOwnership | ( | ObjectHandle | theObject,
|  | AttributeHandle | theAttribute,
|  | FederateHandle | theOwner,
|  | TypeException & | e |
| ) |  |  |

informAttributeOwnership.

Definition at line 367 of file OwnershipManagement.cc.

References OwnershipManagement::comm, Message::INFORM_ATTRIBUTE_OWNERSHIP, Communications::requestFederateService(), Message::setAttribute(), Message::setFederate(), Message::setObject(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

void attributeIsNotOwned | ( | ObjectHandle | theObject,
|  | AttributeHandle | theAttribute,
|  | FederateHandle | theOwner,
|  | TypeException & | e |
| ) |  |  |

attributeIsNotOwned.

Definition at line 385 of file OwnershipManagement.cc.

References Message::ATTRIBUTE_IS_NOT_OWNED, OwnershipManagement::comm, Communications::requestFederateService(), Message::setAttribute(), Message::setObject(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

void negotiatedAttributeOwnershipDivestiture | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | std::string | theTag,
|  | TypeException & | e |
| ) |  |  |

negotiatedAttributeOwnershipDivestiture.

Definition at line 132 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::NEGOTIATED_ATTRIBUTE_OWNERSHIP_DIVESTITURE, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), NetworkMessage::setLabel(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void cancelnegotiatedAttributeOwnershipDivestiture | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

cancelNnegotiatedAttributeOwnershipDivestiture.

Definition at line 166 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, NetworkMessage::CANCEL_NEGOTIATED_ATTRIBUTE_OWNERSHIP_DIVESTITURE, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void attributeOwnershipAcquisitionIfAvailable | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

attributeOwnershipAcquisitionIfAvailable.

Definition at line 198 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION_IF_AVAILABLE, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void cancelattributeOwnershipAcquisition | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

cancelAttributeOwnershipAcquisition.

Definition at line 338 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, NetworkMessage::CANCEL_ATTRIBUTE_OWNERSHIP_ACQUISITION, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void attributeOwnershipAcquisitionNotification | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | FederateHandle | theOwner,
|  | TypeException & | e |
| ) |  |  |

attributeOwnershipAcquisitionNotification.

Definition at line 423 of file OwnershipManagement.cc.

References Message::ATTRIBUTE_OWNERSHIP_ACQUISITION_NOTIFICATION, OwnershipManagement::comm, Communications::requestFederateService(), Message::setAttributes(), Message::setObject(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

void attributeOwnershipUnavailable | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | FederateHandle | theOwner,
|  | TypeException & | e |
| ) |  |  |

attributeOwnershipUnavailable.

Definition at line 404 of file OwnershipManagement.cc.

References Message::ATTRIBUTE_OWNERSHIP_UNAVAILABLE, OwnershipManagement::comm, Communications::requestFederateService(), Message::setAttributes(), Message::setObject(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

void requestAttributeOwnershipAssumption | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | FederateHandle | theOwner,
|  | std::string | theTag,
|  | TypeException & | e |
| ) |  |  |

requestAttributeOwnershipAssumption.

Definition at line 442 of file OwnershipManagement.cc.

References OwnershipManagement::comm, Message::REQUEST_ATTRIBUTE_OWNERSHIP_ASSUMPTION, Communications::requestFederateService(), Message::setAttributes(), Message::setObject(), Message::setTag(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

void unconditionalAttributeOwnershipDivestiture | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

unconditionalAttributeOwnershipDivestiture.

Definition at line 228 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), NetworkMessage::UNCONDITIONAL_ATTRIBUTE_OWNERSHIP_DIVESTITURE, and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void attributeOwnershipAcquisition | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | std::string | theTag,
|  | TypeException & | e |
| ) |  |  |

attributeOwnershipAcquisition.

Definition at line 259 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, NetworkMessage::ATTRIBUTE_OWNERSHIP_ACQUISITION, OwnershipManagement::comm, certi::rtia::D, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), NetworkMessage::setLabel(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void requestAttributeOwnershipRelease | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | std::string | theTag,
|  | TypeException & | e |
| ) |  |  |

requestAttributeOwnershipRelease.

Definition at line 463 of file OwnershipManagement.cc.

References OwnershipManagement::comm, Message::REQUEST_ATTRIBUTE_OWNERSHIP_RELEASE, Communications::requestFederateService(), Message::setAttributes(), Message::setObject(), Message::setTag(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

void attributeOwnershipDivestitureNotification | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

attributeOwnershipDivestitureNotification.

Definition at line 483 of file OwnershipManagement.cc.

References Message::ATTRIBUTE_OWNERSHIP_DIVESTITURE_NOTIFICATION, OwnershipManagement::comm, Communications::requestFederateService(), Message::setAttributes(), Message::setObject(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

AttributeHandleSet * attributeOwnershipRealeaseResponse | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | attribArray,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

attributeOwnershipRealeaseResponse.

Definition at line 292 of file OwnershipManagement.cc.

References FederationManagement::_numero_federation, AttributeHandleSet::add(), NetworkMessage::ATTRIBUTE_OWNERSHIP_RELEASE_RESPONSE, OwnershipManagement::comm, certi::rtia::D, certi::e_NO_EXCEPTION, FederationManagement::federate, NetworkMessage::federate, NetworkMessage::federation, OwnershipManagement::fm, NetworkMessage::handleArray, NetworkMessage::handleArraySize, NetworkMessage::object, PrettyDebug::Out(), pdDebug, Communications::sendMessage(), and Communications::waitMessage().

Referenced by RTIA::chooseFederateProcessing().

Here is the call graph for this function:

void confirmAttributeOwnershipAcquisitionCancellation | ( | ObjectHandle | theObject,
|  | std::vector< AttributeHandle > & | the_attributes,
|  | UShort | attribArraySize,
|  | TypeException & | e |
| ) |  |  |

confirmattributeOwnershipAcquisitionCancellation.

Definition at line 501 of file OwnershipManagement.cc.

References OwnershipManagement::comm, Message::CONFIRM_ATTRIBUTE_OWNERSHIP_ACQUISITION_CANCELLATION, Communications::requestFederateService(), Message::setAttributes(), Message::setObject(), and Message::type.

Referenced by TimeManagement::executeFederateService().

Here is the call graph for this function:

## Member Data Documentation

Communications* comm`[protected]`

Definition at line 156 of file OwnershipManagement.hh.

Referenced by OwnershipManagement::attributeIsNotOwned(), OwnershipManagement::attributeOwnedByFederate(), OwnershipManagement::attributeOwnershipAcquisition(), OwnershipManagement::attributeOwnershipAcquisitionIfAvailable(), OwnershipManagement::attributeOwnershipAcquisitionNotification(), OwnershipManagement::attributeOwnershipDivestitureNotification(), OwnershipManagement::attributeOwnershipRealeaseResponse(), OwnershipManagement::attributeOwnershipUnavailable(), OwnershipManagement::cancelattributeOwnershipAcquisition(), OwnershipManagement::cancelnegotiatedAttributeOwnershipDivestiture(), OwnershipManagement::confirmAttributeOwnershipAcquisitionCancellation(), OwnershipManagement::informAttributeOwnership(), OwnershipManagement::negotiatedAttributeOwnershipDivestiture(), OwnershipManagement::OwnershipManagement(), OwnershipManagement::queryAttributeOwnership(), OwnershipManagement::requestAttributeOwnershipAssumption(), OwnershipManagement::requestAttributeOwnershipRelease(), and OwnershipManagement::unconditionalAttributeOwnershipDivestiture().

Queues* queues`[protected]`

Definition at line 157 of file OwnershipManagement.hh.

FederationManagement* fm`[protected]`

Definition at line 158 of file OwnershipManagement.hh.

Referenced by OwnershipManagement::attributeOwnedByFederate(), OwnershipManagement::attributeOwnershipAcquisition(), OwnershipManagement::attributeOwnershipAcquisitionIfAvailable(), OwnershipManagement::attributeOwnershipRealeaseResponse(), OwnershipManagement::cancelattributeOwnershipAcquisition(), OwnershipManagement::cancelnegotiatedAttributeOwnershipDivestiture(), OwnershipManagement::negotiatedAttributeOwnershipDivestiture(), OwnershipManagement::OwnershipManagement(), OwnershipManagement::queryAttributeOwnership(), and OwnershipManagement::unconditionalAttributeOwnershipDivestiture().

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

- OwnershipManagement.hh
- OwnershipManagement.cc