MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
fixedGridObjDdmMgr.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2006 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: fixedGridObjDdmMgr.h,v $ $Revision: 1.5 $ $State: Exp $
7 *********************************************************************/
8 
9 #ifndef fixedGridObjectDataDistMgr_H_
10 #define fixedGridObjectDataDistMgr_H_
11 #ifdef DDM
12 
15 
16 #include "rtiMsConfig.h"
17 #include "objMgr.h"
18 
19 class DtFixedGridRegion;
20 class DtFixedGridDataDistMgr;
21 
24 
25 class DT_DLL_LRC DtFixedGridObjectDataDistMgr : public DtObjectMgr
26 {
27 protected:
28 
30  DtFixedGridObjectDataDistMgr(DtFederateMgr* fedMgrPtr);
31 
32 public:
33 
35  virtual ~DtFixedGridObjectDataDistMgr();
36 
37 private:
38 
40  DtFixedGridObjectDataDistMgr(DtFixedGridObjectDataDistMgr const& );
41 
43  DtFixedGridObjectDataDistMgr& operator= (DtFixedGridObjectDataDistMgr const& );
44 
45 public:
46 
48  virtual DtFixedGridDataDistMgr* ddmMgr();
49  virtual DtFixedGridDataDistMgr* ddmMgr() const;
50 
52  virtual void subscribe(
53  DtObjectClassHandle theClass,
54  const DtAttributeHandleSet& attributeList,
55  bool active);
56 
59  virtual void registerAssociateRegionForUpdates(DtRtiObject& object,
60  DtAttributeHandleSet const& attributes, DtRegion& region);
61 
64  virtual void sendRequestMsg(DtRequestType type, unsigned long idOrClass, const DtAttributeHandleSet& theSet,
65  DtRtiApiTagConstRef tag, bool anonymous, DtHandle regionHandle = 0);
66 
68  virtual void deleteRegion(DtRegion& region);
69 
70 protected:
71 
73  virtual void associateRegionWithObject(DtObjectInstanceHandle handle,
74  DtFixedGridRegion* region);
75 
78  virtual void unassociateRegionFromObject(DtObjectInstanceHandle handle,
79  DtFixedGridRegion* region=0);
80 
82  virtual DtFixedGridRegion* regionAssociatedWithObject(DtObjectInstanceHandle handle);
83 
89  virtual void checkForRegionalSubscribe(DtObjectClassInfo& info);
90 
95  virtual void acquireAssociateRegionForUpdates(
96  DtObjectInstanceHandle theObject,
97  const DtAttributeHandleSet& theAttributes);
98 
101  virtual void unassociateRegionForDivested(
102  DtRtiObject& obj, const DtAttributeHandleSet& set, bool atomic);
103 
107  virtual bool acceptObjectChannel(unsigned long channel);
108 
111  virtual bool acceptRequestChannel(unsigned long channel);
112 
114  virtual void deleteObj(DtRtiObject* obj, bool isLocalDelete);
115 
117  virtual void sendRegisterMsg(DtRtiObject* object);
118 
120  virtual void sendUpdateMessage( DtUpdateMsg* update,
121  DtObjectClassInfo* classDesc, DtUpdateType updateType,
122  MAKRti::DtTransportType trans, unsigned int numberAttrs,
123  MAKRti::DtInetAddr destAddr = MAKRti::DtInetAddr::inaddrAny(),
124  unsigned int offset = 0);
125 
126 
128  virtual void sendPublishMsg(DtObjectClassHandle handle,
129  const DtAttributeHandleSet& theSet);
130 
132  virtual void sendUnpublishMsg(DtObjectInstanceHandle handle,
133  const DtAttributeHandleSet& theSet);
134 
136  virtual void sendSubscribeMsg(DtObjectClassHandle theObj,
137  bool isPassive, bool replacement,
138  const DtAttributeHandleSet& theSet);
139 
141  virtual void sendUnsubscribeMsg(DtObjectClassHandle handle,
142  const DtAttributeHandleSet& theSet);
143 
144 #if 0
145  virtual unsigned long sendDeleteMsg(DtObjectInstanceHandle handle,
146  DtOrderHandle orderType,
147  RTI::FedTime const * theTime,
148  char const * tag);
149 
151  virtual void sendDiscoverMsg(DtObjectInstanceHandle objHandle,
152  DtObjectClassHandle classHandle);
153  virtual void sendRequestDiscoverMsg(DtObjectInstanceHandle objHandle);
154  virtual void sendRemoveDiscoverMsg(DtObjectInstanceHandle objHandle);
155 #endif
156 
157 protected:
158 
160  typedef std::set<DtFixedGridRegion*> DtFixedGridRegionSet;
161 
163  typedef std::map<DtObjectClassHandle, DtFixedGridRegionSet> DtFixedGridObjectClassRegionMap;
164 
166  typedef std::map<DtObjectInstanceHandle, DtFixedGridRegion*> DtFixedGridObjectRegionMap;
167 
168 protected:
169 
171  DtFixedGridObjectRegionMap myObjectRegionMap;
172 
174  DtFixedGridObjectClassRegionMap myObjectClassRegionMap;
175 
177  DtFixedGridRegion* myRegisterRegion;
178 };
179 
180 #endif
181 #endif
182 
183 
virtual void sendSubscribeMsg(DtObjectClassHandle theObj, bool isPassive, bool replacement, const DtAttributeHandleSet &theSet, DtFederateHandle fedHandle)
Send various types of RTI messages.
DtObjectMgr & operator=(DtObjectMgr const &)
Assignment not implemented – Assignment Not Allowed!
The declaration of the object manager class.
virtual void sendRemoveDiscoverMsg(DtObjectInstanceHandle objHandle, DtObjectClassHandle classHandle, DtFederateHandle fedHandle)
Send various types of RTI messages.
virtual void subscribe(DtObjectClassHandle theClass, const DtAttributeHandleSet &attributeList, bool active, MAKRti::DtString updateRateDesignator)
Subscribe specified class attributes.
virtual void sendDiscoverMsg(DtObjectInstanceHandle objHandle, DtObjectClassHandle classHandle, DtFederateHandle owner)
Send various types of RTI messages.
virtual void sendUnpublishMsg(DtObjectInstanceHandle handle, const DtAttributeHandleSet &theSet)
Send various types of RTI messages.
DtRequestType
Definition: reqObjMsg.h:24
virtual void sendPublishMsg(DtObjectClassHandle handle, const DtAttributeHandleSet &theSet)
Send various types of RTI messages.
virtual void sendUnsubscribeMsg(DtObjectClassHandle handle, const DtAttributeHandleSet &theSet)
Send various types of RTI messages.
DtHandle DtObjectClassHandle
Definition: internalTypes.h:48
virtual bool acceptRequestChannel(unsigned long channel)
Return true if the channel (region set handle) should be accepted NOTE: This always returns true when...
DtUpdateType
Update type for object.
Definition: rtiObject.h:94
virtual void sendUpdateMessage(DtUpdateMsg *update, DtObjectClassInfo *classDesc, DtUpdateType updateType, MAKRti::DtTransportType trans, unsigned int numberAttrs, MAKRti::DtInetAddr destAddr=DtInetAddr::inaddrAny(), unsigned int offset=0)
Send update message.
DtRtiApiVariableLengthData const & DtRtiApiTagConstRef
Definition: rtiApiTypes.h:98
virtual void sendRequestDiscoverMsg(DtObjectInstanceHandle objHandle, DtObjectClassHandle classHandle)
Send various types of RTI messages.
virtual bool acceptObjectChannel(unsigned long channel)
Return true if the channel (region set handle) should be accepted NOTE: This always returns true when...
Instances of DtFederateMgr process federation-level messages (such as create, destroy, join, resign, and sync points) and manages the objects responsible for handling general communication, objects, interactions, the FOM, MOM, and data distribution mmg.
Definition: fedMgr.h:93
Defines the internal representation of attribute/parameter handle sets.
Definition: attrHandSet.h:30
virtual void sendRegisterMsg(DtRtiObject *object, DtBitMask *sendMask=0)
Send various types of RTI messages.
virtual void sendRequestMsg(DtRequestType type, unsigned long idOrClass, const DtAttributeHandleSet &theSet, DtRtiApiTagConstRef tag, bool anonymous, DtHandle regionSetHandle=DtRtiMsg::theDefaultRegionSetHandle, DtFederateHandle fedHandle=0)
Send a request message for the attributes by object or class.
DtHandle DtObjectInstanceHandle
Definition: internalTypes.h:50
The RTI object maintains the internal RTI object state.
Definition: rtiObject.h:123
virtual unsigned long deleteObj(DtObjectInstanceHandle objectID, DtRtiApiTime const *theTime, DtRtiApiTagConstRef theTag)
Delete a locally simulated object Return retraction handle serial number.
virtual unsigned long sendDeleteMsg(DtObjectInstanceHandle handle, DtOrderHandle orderType, DtRtiApiTime const *theTime, DtRtiApiTagConstRef tag)
Send various types of RTI messages.
The object manager class processes the object management services.
Definition: objMgr.h:81
unsigned long DtHandle
The internal types.
Definition: internalTypes.h:41
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
Definition: updateMsg.h:28
Definition: objClassInfo.h:36
DtHandle DtOrderHandle
Definition: internalTypes.h:58

Document ID: Generated on Wed Jul 8 16:20:32 EDT 2026 from SVN revision 291616
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)