MAK RTIspy API Documentation for HLA 1516
 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 
62 #ifdef DtIFSPEC1516
63 
64 
65  virtual void sendRequestMsg(
66  DtRequestType type, unsigned long idOrClass,
67  const DtAttributeHandleSet& theSet,
68  rti1516::VariableLengthData const & tag,
69  bool anonymous,
70  DtHandle regionHandle = 0);
71 #elif defined(DtIFSPEC1516E)
72 
73 
74  virtual void sendRequestMsg(
75  DtRequestType type, unsigned long idOrClass,
76  const DtAttributeHandleSet& theSet,
77  rti1516e::VariableLengthData const & tag,
78  bool anonymous,
79  DtHandle regionHandle = 0);
80 #endif
81 
83  virtual void deleteRegion(DtRegion& region);
84 
85 protected:
86 
88  virtual void associateRegionWithObject(DtObjectInstanceHandle handle,
89  DtFixedGridRegion* region);
90 
93  virtual void unassociateRegionFromObject(DtObjectInstanceHandle handle,
94  DtFixedGridRegion* region=0);
95 
97  virtual DtFixedGridRegion* regionAssociatedWithObject(DtObjectInstanceHandle handle);
98 
104  virtual void checkForRegionalSubscribe(DtObjectClassInfo& info);
105 
110  virtual void acquireAssociateRegionForUpdates(
111  DtObjectInstanceHandle theObject,
112  const DtAttributeHandleSet& theAttributes);
113 
116  virtual void unassociateRegionForDivested(
117  DtRtiObject& obj, const DtAttributeHandleSet& set, bool atomic);
118 
122  virtual bool acceptObjectChannel(unsigned long channel);
123 
126  virtual bool acceptRequestChannel(unsigned long channel);
127 
129  virtual void deleteObj(DtRtiObject* obj, bool isLocalDelete);
130 
132  virtual void sendRegisterMsg(DtRtiObject* object);
133 
135  virtual void sendUpdateMessage( DtUpdateMsg* update,
136  DtObjectClassInfo* classDesc, DtUpdateType updateType,
137  MAKRti::DtTransportType trans, unsigned int numberAttrs,
138  MAKRti::DtInetAddr destAddr = MAKRti::DtInetAddr::inaddrAny(),
139  unsigned int offset = 0);
140 
141 
142 #ifdef DtIFSPEC13
143 
144  virtual void sendRequestMsg(
145  DtRequestType type, unsigned long idOrClass,
146  const DtAttributeHandleSet& theSet,
147  char const * tag,
148  bool anonymous,
149  DtHandle regionHandle = 0);
150 #endif
151 
153  virtual void sendPublishMsg(DtObjectClassHandle handle,
154  const DtAttributeHandleSet& theSet);
155 
157  virtual void sendUnpublishMsg(DtObjectInstanceHandle handle,
158  const DtAttributeHandleSet& theSet);
159 
161  virtual void sendSubscribeMsg(DtObjectClassHandle theObj,
162  bool isPassive, bool replacement,
163  const DtAttributeHandleSet& theSet);
164 
166  virtual void sendUnsubscribeMsg(DtObjectClassHandle handle,
167  const DtAttributeHandleSet& theSet);
168 
169 #if 0
170  virtual unsigned long sendDeleteMsg(DtObjectInstanceHandle handle,
171  DtOrderHandle orderType,
172  RTI::FedTime const * theTime,
173  char const * tag);
174 
176  virtual void sendDiscoverMsg(DtObjectInstanceHandle objHandle,
177  DtObjectClassHandle classHandle);
178  virtual void sendRequestDiscoverMsg(DtObjectInstanceHandle objHandle);
179  virtual void sendRemoveDiscoverMsg(DtObjectInstanceHandle objHandle);
180 #endif
181 
182 protected:
183 
185  typedef std::set<DtFixedGridRegion*> DtFixedGridRegionSet;
186 
188  typedef std::map<DtObjectClassHandle, DtFixedGridRegionSet> DtFixedGridObjectClassRegionMap;
189 
191  typedef std::map<DtObjectInstanceHandle, DtFixedGridRegion*> DtFixedGridObjectRegionMap;
192 
193 protected:
194 
196  DtFixedGridObjectRegionMap myObjectRegionMap;
197 
199  DtFixedGridObjectClassRegionMap myObjectClassRegionMap;
200 
202  DtFixedGridRegion* myRegisterRegion;
203 };
204 
205 #endif
206 #endif
207 
208 

Document ID: Generated on Mon Jul 9 10:30:41 EDT 2018 from SVN revision 190224
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)