MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
momWrapper.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2001 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: momWrapper.h,v $ $Revision: 1.11 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef DtMomWrapper_H_
13 #define DtMomWrapper_H_
14 #ifdef DtMOM
15 #ifdef DtIFSPEC13
16 
17 #include "fedAmbWrap.h"
18 #include "momArgument.h"
19 class DtMomMgr;
20 
21 namespace MAKRti
22 {
23  class DtString;
24 }
25 
26 
27 class DtMomWrapper : public DtFedAmbWrapper
28 {
29 public:
30 
32  DtMomWrapper( DtMomMgr* momMgrPtr );
33 
35  virtual ~DtMomWrapper() throw (RTI::FederateInternalError);
36 
37 
38  virtual DtMomMgr* momMgr();
39 
41  virtual void reset();
42 
45  virtual unsigned long objectRemoveCount() const;
46 
49  virtual unsigned long objectDiscoverCount() const;
50 
52 
53 
56  const char* label )
57  throw (
58  RTI::FederateInternalError );
59 
61  const char* label )
62  throw (
63  RTI::FederateInternalError );
64 
66  virtual void announceSynchronizationPoint (
67  const char* label,
68  const char* tag )
69  throw (
70  RTI::FederateInternalError );
71 
73  virtual void federationSynchronized (
74  const char* label )
75  throw (
76  RTI::FederateInternalError );
77 
79  virtual void initiateFederateSave (
80  const char* label )
81  throw (
82  RTI::UnableToPerformSave,
83  RTI::FederateInternalError );
84 
86  virtual void federationSaved ()
87  throw (
88  RTI::FederateInternalError);
89 
90  virtual void federationNotSaved ()
91  throw (
92  RTI::FederateInternalError );
93 
96  const char* label )
97  throw (
98  RTI::FederateInternalError);
99 
100  virtual void requestFederationRestoreFailed (
101  const char* label,
102  const char* reason )
103  throw (
104  RTI::FederateInternalError );
105 
107  virtual void federationRestoreBegun ()
108  throw (
109  RTI::FederateInternalError );
110 
112  virtual void initiateFederateRestore (
113  const char* label,
114  RTI::FederateHandle handle )
115  throw (
116  RTI::SpecifiedSaveLabelDoesNotExist,
117  RTI::CouldNotRestore,
118  RTI::FederateInternalError );
119 
121  virtual void federationRestored ()
122  throw (
123  RTI::FederateInternalError );
124 
125  virtual void federationNotRestored ()
126  throw (
127  RTI::FederateInternalError );
129 
131 
132 
134  virtual void startRegistrationForObjectClass (
135  RTI::ObjectClassHandle theClass )
136  throw (
137  RTI::ObjectClassNotPublished,
138  RTI::FederateInternalError );
139 
141  virtual void stopRegistrationForObjectClass (
142  RTI::ObjectClassHandle theClass )
143  throw (
144  RTI::ObjectClassNotPublished,
145  RTI::FederateInternalError );
146 
148  virtual void turnInteractionsOn (
149  RTI::InteractionClassHandle theHandle )
150  throw (
151  RTI::InteractionClassNotPublished,
152  RTI::FederateInternalError );
153 
155  virtual void turnInteractionsOff (
156  RTI::InteractionClassHandle theHandle )
157  throw (
158  RTI::InteractionClassNotPublished,
159  RTI::FederateInternalError );
161 
163 
164 
166  virtual void discoverObjectInstance (
167  RTI::ObjectHandle theObject,
168  RTI::ObjectClassHandle theObjectClass,
169  const char* theObjectName )
170  throw (
171  RTI::CouldNotDiscover,
172  RTI::ObjectClassNotKnown,
173  RTI::FederateInternalError );
174 
176  virtual void reflectAttributeValues (
177  RTI::ObjectHandle theObject,
178  const RTI::AttributeHandleValuePairSet& theAttributes,
179  const RTI::FedTime& theTime,
180  const char* theTag,
181  RTI::EventRetractionHandle theHandle)
182  throw (
183  RTI::ObjectNotKnown,
184  RTI::AttributeNotKnown,
185  RTI::FederateOwnsAttributes,
186  RTI::InvalidFederationTime,
187  RTI::FederateInternalError );
188 
189  virtual void reflectAttributeValues (
190  RTI::ObjectHandle theObject,
191  const RTI::AttributeHandleValuePairSet& theAttributes,
192  const char* theTag )
193  throw (
194  RTI::ObjectNotKnown,
195  RTI::AttributeNotKnown,
196  RTI::FederateOwnsAttributes,
197  RTI::FederateInternalError );
198 
200  virtual void receiveInteraction (
201  RTI::InteractionClassHandle theInteraction,
202  const RTI::ParameterHandleValuePairSet& theParameters,
203  const RTI::FedTime& theTime,
204  const char* theTag,
205  RTI::EventRetractionHandle theHandle )
206  throw (
207  RTI::InteractionClassNotKnown,
208  RTI::InteractionParameterNotKnown,
209  RTI::InvalidFederationTime,
210  RTI::FederateInternalError );
211 
212  virtual void receiveInteraction (
213  RTI::InteractionClassHandle theInteraction,
214  const RTI::ParameterHandleValuePairSet& theParameters,
215  const char* theTag )
216  throw (
217  RTI::InteractionClassNotKnown,
218  RTI::InteractionParameterNotKnown,
219  RTI::FederateInternalError );
220 
222  virtual void removeObjectInstance (
223  RTI::ObjectHandle theObject,
224  const RTI::FedTime& theTime,
225  const char* theTag,
226  RTI::EventRetractionHandle theHandle )
227  throw (
228  RTI::ObjectNotKnown,
229  RTI::InvalidFederationTime,
230  RTI::FederateInternalError );
231 
232  virtual void removeObjectInstance (
233  RTI::ObjectHandle theObject,
234  const char* theTag )
235  throw (
236  RTI::ObjectNotKnown,
237  RTI::FederateInternalError );
238 
240  virtual void attributesInScope (
241  RTI::ObjectHandle theObject,
242  const RTI::AttributeHandleSet& theAttributes)
243  throw (
244  RTI::ObjectNotKnown,
245  RTI::AttributeNotKnown,
246  RTI::FederateInternalError );
247 
249  virtual void attributesOutOfScope (
250  RTI::ObjectHandle theObject,
251  const RTI::AttributeHandleSet& theAttributes )
252  throw (
253  RTI::ObjectNotKnown,
254  RTI::AttributeNotKnown,
255  RTI::FederateInternalError );
256 
258  virtual void provideAttributeValueUpdate (
259  RTI::ObjectHandle theObject,
260  const RTI::AttributeHandleSet& theAttributes )
261  throw (
262  RTI::ObjectNotKnown,
263  RTI::AttributeNotKnown,
264  RTI::AttributeNotOwned,
265  RTI::FederateInternalError );
266 
268  virtual void turnUpdatesOnForObjectInstance (
269  RTI::ObjectHandle theObject,
270  const RTI::AttributeHandleSet& theAttributes )
271  throw (
272  RTI::ObjectNotKnown,
273  RTI::AttributeNotOwned,
274  RTI::FederateInternalError );
275 
277  virtual void turnUpdatesOffForObjectInstance (
278  RTI::ObjectHandle theObject,
279  const RTI::AttributeHandleSet& theAttributes )
280  throw (
281  RTI::ObjectNotKnown,
282  RTI::AttributeNotOwned,
283  RTI::FederateInternalError );
285 
287 
288 
291  RTI::ObjectHandle theObject,
292  const RTI::AttributeHandleSet& offeredAttributes,
293  const char* theTag )
294  throw (
295  RTI::ObjectNotKnown,
296  RTI::AttributeNotKnown,
297  RTI::AttributeAlreadyOwned,
298  RTI::AttributeNotPublished,
299  RTI::FederateInternalError );
300 
303  RTI::ObjectHandle theObject,
304  const RTI::AttributeHandleSet& releasedAttributes )
305  throw (
306  RTI::ObjectNotKnown,
307  RTI::AttributeNotKnown,
308  RTI::AttributeNotOwned,
309  RTI::AttributeDivestitureWasNotRequested,
310  RTI::FederateInternalError );
311 
314  RTI::ObjectHandle theObject,
315  const RTI::AttributeHandleSet& securedAttributes )
316  throw (
317  RTI::ObjectNotKnown,
318  RTI::AttributeNotKnown,
319  RTI::AttributeAcquisitionWasNotRequested,
320  RTI::AttributeAlreadyOwned,
321  RTI::AttributeNotPublished,
322  RTI::FederateInternalError );
323 
325  virtual void attributeOwnershipUnavailable (
326  RTI::ObjectHandle theObject,
327  const RTI::AttributeHandleSet& theAttributes )
328  throw (
329  RTI::ObjectNotKnown,
330  RTI::AttributeNotKnown,
331  RTI::AttributeAlreadyOwned,
332  RTI::AttributeAcquisitionWasNotRequested,
333  RTI::FederateInternalError );
334 
336  virtual void requestAttributeOwnershipRelease (
337  RTI::ObjectHandle theObject,
338  const RTI::AttributeHandleSet& candidateAttributes,
339  const char* theTag )
340  throw (
341  RTI::ObjectNotKnown,
342  RTI::AttributeNotKnown,
343  RTI::AttributeNotOwned,
344  RTI::FederateInternalError );
345 
348  RTI::ObjectHandle theObject,
349  const RTI::AttributeHandleSet& theAttributes )
350  throw (
351  RTI::ObjectNotKnown,
352  RTI::AttributeNotKnown,
353  RTI::AttributeAlreadyOwned,
354  RTI::AttributeAcquisitionWasNotCanceled,
355  RTI::FederateInternalError );
356 
358  virtual void informAttributeOwnership (
359  RTI::ObjectHandle theObject,
360  RTI::AttributeHandle theAttribute,
361  RTI::FederateHandle theOwner )
362  throw (
363  RTI::ObjectNotKnown,
364  RTI::AttributeNotKnown,
365  RTI::FederateInternalError );
366 
367  virtual void attributeIsNotOwned (
368  RTI::ObjectHandle theObject,
369  RTI::AttributeHandle theAttribute )
370  throw (
371  RTI::ObjectNotKnown,
372  RTI::AttributeNotKnown,
373  RTI::FederateInternalError );
374 
375  virtual void attributeOwnedByRTI (
376  RTI::ObjectHandle theObject,
377  RTI::AttributeHandle theAttribute )
378  throw (
379  RTI::ObjectNotKnown,
380  RTI::AttributeNotKnown,
381  RTI::FederateInternalError );
383 
385 
386 
388  virtual void timeRegulationEnabled (
389  const RTI::FedTime& theFederateTime )
390  throw (
391  RTI::InvalidFederationTime,
392  RTI::EnableTimeRegulationWasNotPending,
393  RTI::FederateInternalError );
394 
396  virtual void timeConstrainedEnabled (
397  const RTI::FedTime& theFederateTime )
398  throw (
399  RTI::InvalidFederationTime,
400  RTI::EnableTimeConstrainedWasNotPending,
401  RTI::FederateInternalError );
402 
404  virtual void timeAdvanceGrant (
405  const RTI::FedTime& theTime )
406  throw (
407  RTI::InvalidFederationTime,
408  RTI::TimeAdvanceWasNotInProgress,
409  RTI::FederateInternalError );
410 
412  virtual void requestRetraction (
413  RTI::EventRetractionHandle theHandle )
414  throw (
415  RTI::EventNotKnown,
416  RTI::FederateInternalError );
418 
419 protected:
420  virtual void observe( const MAKRti::DtString& functionName,
421  RTI::Exception* except = 0,
422  const DtMomArgument& argument1 = theDfltMomArgument,
423  const DtMomArgument& argument2 = theDfltMomArgument,
424  const DtMomArgument& argument3 = theDfltMomArgument,
425  const DtMomArgument& argument4 = theDfltMomArgument,
426  const DtMomArgument& argument5 = theDfltMomArgument,
427  const DtMomArgument& returnArg = theDfltRetVal );
428 
429 private:
431  DtMomWrapper( const DtMomWrapper& src );
432 
434  DtMomWrapper& operator=( const DtMomWrapper& src );
435 
436 protected:
437  DtMomMgr* myMomMgr;
438  unsigned long myDiscoverCount;
439  unsigned long myRemoveCount;
440 
441 protected:
442 
443  static const DtMomArgument theDfltMomArgument;
444  static DtMomArgument theDfltRetVal;
445 };
446 
447 #endif
448 #endif
449 #endif
450 
451 

Document ID: Generated on Wed Mar 11 20:26:49 EDT 2015 from SVN revision 150939
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (www.mak.com)