# ObjectAttribute Class Reference

Object attribute information. More...

`#include <ObjectAttribute.hh>`

List of all members.

## Public Member Functions
| ObjectAttribute ()
| Declared by not defined (Don't call it).
| ObjectAttribute (AttributeHandle, FederateHandle, ObjectClassAttribute *)
| Constructor that sets handle and attribute owner.
| ~ObjectAttribute ()
| Destructor (nothing to do).
void | display () const
| Displays the object attribute information.
FederateHandle | getOwner () const
| Returns the owner.
void | setOwner (FederateHandle NewOwner)
| Change the federate owner.
void | setDivesting (bool divesting_state)
| Put object attribute in divesting state.
bool | beingDivested () const
| Returns attribute divesting state.
int | isCandidate (FederateHandle candidate) const
| Return the candidate position in list, null otherwise.
void | addCandidate (FederateHandle candidate)
| Add a new candidate to list.
void | removeCandidate (FederateHandle candidate)
FederateHandle | getCandidate (unsigned int) const throw (RTIinternalError)
bool | hasCandidates () const
AttributeHandle | getHandle () const
void | setHandle (AttributeHandle h)
SpaceHandle | getSpace () const
void | setSpace (SpaceHandle)
ObjectClassAttribute * | getObjectClassAttribute () const
void | associate (RTIRegion *)
void | unassociate (RTIRegion *)
const RTIRegion * | getRegion () const
## Private Attributes
AttributeHandle | handle
| The object attribute handle.
FederateHandle | owner
| Federate who owns the attribute.
bool | divesting
| Divesting state.
std::list< FederateHandle > | ownerCandidates
| Federates candidate.
SpaceHandle | space
| Associated routing space.
ObjectClassAttribute * | source
| The associated class attribute.
RTIRegion * | region

## Detailed Description

Object attribute information.

This class maintains information about an attribute:

- handle,
- ownerCandidates,
- current owner,
- divesting state.

Definition at line 46 of file ObjectAttribute.hh.

## Constructor & Destructor Documentation

ObjectAttribute | ( |  | ) |

Declared by not defined (Don't call it).

ObjectAttribute | ( | AttributeHandle | new_handle,
|  | FederateHandle | new_owner,
|  | ObjectClassAttribute * | associated_attribute |
| ) |  |  |

Constructor that sets handle and attribute owner.

Definition at line 43 of file ObjectAttribute.cc.

~ObjectAttribute | ( |  | ) |

Destructor (nothing to do).

Definition at line 53 of file ObjectAttribute.cc.

## Member Function Documentation

void display | ( |  | ) | const

Displays the object attribute information.

Definition at line 60 of file ObjectAttribute.cc.

References ObjectAttribute::handle, and ObjectAttribute::owner.

FederateHandle getOwner | ( |  | ) | const

Returns the owner.

Definition at line 69 of file ObjectAttribute.cc.

References ObjectAttribute::owner.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipAcquisitionIfAvailable(), ObjectClass::attributeOwnershipReleaseResponse(), ObjectClass::cancelAttributeOwnershipAcquisition(), ObjectSet::cancelNegotiatedAttributeOwnershipDivestiture(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), ObjectSet::queryAttributeOwnership(), ObjectClass::unconditionalAttributeOwnershipDivestiture(), and ObjectClass::updateAttributeValues().

void setOwner | ( | FederateHandle | NewOwner | ) |

Change the federate owner.

Definition at line 77 of file ObjectAttribute.cc.

References ObjectAttribute::owner.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipAcquisitionIfAvailable(), ObjectClass::attributeOwnershipReleaseResponse(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), ObjectClass::registerObjectInstance(), and ObjectClass::unconditionalAttributeOwnershipDivestiture().

void setDivesting | ( | bool | divesting_state | ) |

Put object attribute in divesting state.

Definition at line 93 of file ObjectAttribute.cc.

References ObjectAttribute::divesting.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipAcquisitionIfAvailable(), ObjectClass::attributeOwnershipReleaseResponse(), ObjectSet::cancelNegotiatedAttributeOwnershipDivestiture(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), and ObjectClass::unconditionalAttributeOwnershipDivestiture().

bool beingDivested | ( |  | ) | const

Returns attribute divesting state.

Definition at line 85 of file ObjectAttribute.cc.

References ObjectAttribute::divesting.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipAcquisitionIfAvailable(), ObjectSet::cancelNegotiatedAttributeOwnershipDivestiture(), and ObjectClass::negotiatedAttributeOwnershipDivestiture().

int isCandidate | ( | FederateHandle | candidate | ) | const

Return the candidate position in list, null otherwise.

Definition at line 101 of file ObjectAttribute.cc.

References ObjectAttribute::ownerCandidates.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipAcquisitionIfAvailable(), and ObjectClass::cancelAttributeOwnershipAcquisition().

void addCandidate | ( | FederateHandle | candidate | ) |

Add a new candidate to list.

Definition at line 115 of file ObjectAttribute.cc.

References ObjectAttribute::ownerCandidates.

Referenced by ObjectClass::attributeOwnershipAcquisition(), and ObjectClass::attributeOwnershipAcquisitionIfAvailable().

void removeCandidate | ( | FederateHandle | candidate | ) |

Definition at line 123 of file ObjectAttribute.cc.

References ObjectAttribute::ownerCandidates.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipReleaseResponse(), ObjectClass::cancelAttributeOwnershipAcquisition(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), and ObjectClass::unconditionalAttributeOwnershipDivestiture().

FederateHandle getCandidate | ( | unsigned int | indice | ) | const throw (RTIinternalError)

Definition at line 131 of file ObjectAttribute.cc.

References ObjectAttribute::ownerCandidates.

Referenced by ObjectClass::attributeOwnershipReleaseResponse(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), and ObjectClass::unconditionalAttributeOwnershipDivestiture().

bool hasCandidates | ( |  | ) | const

Definition at line 147 of file ObjectAttribute.cc.

References ObjectAttribute::ownerCandidates.

Referenced by ObjectClass::attributeOwnershipReleaseResponse(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), and ObjectClass::unconditionalAttributeOwnershipDivestiture().

AttributeHandle getHandle | ( |  | ) | const

Definition at line 154 of file ObjectAttribute.cc.

References ObjectAttribute::handle.

Referenced by ObjectClass::attributeOwnershipAcquisition(), ObjectClass::attributeOwnershipAcquisitionIfAvailable(), ObjectClass::attributeOwnershipReleaseResponse(), ObjectClass::negotiatedAttributeOwnershipDivestiture(), and ObjectClass::unconditionalAttributeOwnershipDivestiture().

void setHandle | ( | AttributeHandle | h | ) |

Definition at line 161 of file ObjectAttribute.cc.

References ObjectAttribute::handle.

SpaceHandle getSpace | ( |  | ) | const

Definition at line 168 of file ObjectAttribute.cc.

References ObjectAttribute::space.

void setSpace | ( | SpaceHandle | h | ) |

Definition at line 175 of file ObjectAttribute.cc.

References ObjectAttribute::space.

ObjectClassAttribute* getObjectClassAttribute | ( |  | ) | const`[inline]`

Definition at line 76 of file ObjectAttribute.hh.

Referenced by RootObject::getObjectClassAttribute().

void associate | ( | RTIRegion * | r | ) |

Definition at line 184 of file ObjectAttribute.cc.

References ObjectAttribute::region.

Referenced by Federation::associateRegion(), DataDistribution::associateRegion(), DataDistribution::registerObject(), and Federation::registerObjectWithRegion().

void unassociate | ( | RTIRegion * | r | ) |

Definition at line 194 of file ObjectAttribute.cc.

References ObjectAttribute::region.

const RTIRegion* getRegion | ( |  | ) | const`[inline]`

Definition at line 81 of file ObjectAttribute.hh.

Referenced by ObjectClass::broadcastClassMessage().

## Member Data Documentation

AttributeHandle handle`[private]`

The object attribute handle.

Definition at line 81 of file ObjectAttribute.hh.

Referenced by ObjectAttribute::display(), ObjectAttribute::getHandle(), and ObjectAttribute::setHandle().

FederateHandle owner`[private]`

Federate who owns the attribute.

Definition at line 86 of file ObjectAttribute.hh.

Referenced by ObjectAttribute::display(), ObjectAttribute::getOwner(), and ObjectAttribute::setOwner().

bool divesting`[private]`

Divesting state.

Definition at line 87 of file ObjectAttribute.hh.

Referenced by ObjectAttribute::beingDivested(), and ObjectAttribute::setDivesting().

std::list<FederateHandle> ownerCandidates`[private]`

Federates candidate.

Definition at line 88 of file ObjectAttribute.hh.

Referenced by ObjectAttribute::addCandidate(), ObjectAttribute::getCandidate(), ObjectAttribute::hasCandidates(), ObjectAttribute::isCandidate(), and ObjectAttribute::removeCandidate().

SpaceHandle space`[private]`

Associated routing space.

Definition at line 89 of file ObjectAttribute.hh.

Referenced by ObjectAttribute::getSpace(), and ObjectAttribute::setSpace().

ObjectClassAttribute* source`[private]`

The associated class attribute.

Definition at line 90 of file ObjectAttribute.hh.

RTIRegion* region`[private]`

Definition at line 91 of file ObjectAttribute.hh.

Referenced by ObjectAttribute::associate(), and ObjectAttribute::unassociate().

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

- ObjectAttribute.hh
- ObjectAttribute.cc