15 enum DtOwnershipAction
22 typedef void (*DtAcquireOwnershipCb)(DtHlaObject* hlaObject,
void* usr);
23 typedef void (*DtDivestOwnershipCb)(DtHlaObject* hlaObject,
void* usr);
25 typedef bool (*DtAcquireOwnershipRequestCb)(DtHlaObject* hlaObject,
void* usr);
26 typedef bool (*DtDivestOwnershipRequestCb)(DtHlaObject* hlaObject,
void* usr);
28 struct DtAcquireOwnershipCbInfo
30 DtAcquireOwnershipCb cbFunction;
34 struct DtDivestOwnershipCbInfo
36 DtDivestOwnershipCb cbFunction;
40 struct DtAcquireOwnershipRequestCbInfo
42 DtAcquireOwnershipRequestCb cbFunction;
46 struct DtDivestOwnershipRequestCbInfo
48 DtDivestOwnershipRequestCb cbFunction;
57 class DT_DLL_VL DtDefaultOwnershipHandler :
public DtOwnershipHandler
61 DtDefaultOwnershipHandler();
64 virtual ~DtDefaultOwnershipHandler();
67 virtual DtOwnershipHandler* clone()
const;
70 DtDefaultOwnershipHandler(
const DtDefaultOwnershipHandler& other);
73 DtDefaultOwnershipHandler& operator=(
const DtDefaultOwnershipHandler& other);
78 virtual void setOwnershipAcquisitionAction(DtOwnershipAction);
83 virtual void setOwnershipDivestitudeAction(DtOwnershipAction);
88 virtual void gainOwnership(
const RTI::AttributeHandleSet&
set);
94 virtual void loseOwnership(
const RTI::AttributeHandleSet&
set);
99 virtual void addAcquireOwnershipCallback(DtAcquireOwnershipCb cb,
void* usr,
const DtObjClassDesc* desc = 0);
100 virtual void removeAcquireOwnershipCallback(DtAcquireOwnershipCb cb,
void* usr,
const DtObjClassDesc* desc = 0);
106 virtual void addDivestOwnershipCallback(DtDivestOwnershipCb cb,
void* usr,
const DtObjClassDesc* desc = 0);
107 virtual void removeDivestOwnershipCallback(DtDivestOwnershipCb cb,
void* usr,
const DtObjClassDesc* desc = 0);
114 virtual void addAcquireOwnershipRequestCallback(DtAcquireOwnershipRequestCb cb,
void* usr);
115 virtual void removeAcquireOwnershipRequestCallback(DtAcquireOwnershipRequestCb cb,
void* usr);
117 virtual void addDivestOwnershipRequestCallback(DtDivestOwnershipRequestCb cb,
void* usr);
118 virtual void removeDivestOwnershipRequestCallback(DtDivestOwnershipRequestCb cb,
void* usr);
121 virtual bool requestAttributeOwnershipRelease (
122 const RTI::AttributeHandleSet& candidateAttributes,
124 const RTI::VariableLengthData &theTag
130 virtual void requestAttributeOwnershipAssumption (
131 const RTI::AttributeHandleSet& offeredAttributes,
133 const RTI::VariableLengthData &theTag
140 DtOwnershipAction myAcquisitionAction;
141 DtOwnershipAction myDivestAction;
143 std::map<RTI::ObjectClassHandle, std::list<DtAcquireOwnershipCbInfo> > myAcquireOwnershipCbList;
144 std::map<RTI::ObjectClassHandle, std::list<DtDivestOwnershipCbInfo> > myDivestOwnershipCbList;
145 std::list<DtAcquireOwnershipCbInfo> myDefaultAcquireOwnershipCb;
146 std::list<DtDivestOwnershipCbInfo> myDefaultDivestOwnershipCb;
147 std::list<DtAcquireOwnershipRequestCbInfo> myAcquireOwnershipRequestCbList;
148 std::list<DtDivestOwnershipRequestCbInfo> myDivestOwnershipRequestCbList;