MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
momObserver1516_2025.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2025 MAK Technologies
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #ifdef DtMOM
12 #ifdef DtIFSPEC1516_2025
13 
14 #include "ambObserver1516_2025.h"
15 #include "momArgument.h"
16 
17 class DtFederateMgr;
18 class DtFomClassMgr;
19 class DtMomMgr;
20 class DtObjectMgr;
21 class DtMomObserver;
22 
24 typedef DtMomObserver* (*DtMomObserverCreator)(DtMomMgr* momMgrPtr);
25 
26 class DtMomObserver : public DtRtiAmbassadorObserver
27 {
28  public:
29 
31 
32  static DtMomObserver* create(DtMomMgr* momMgrPtr);
33  static void setCreator(DtMomObserverCreator functionPtr);
35 
37  DtMomObserver( DtMomMgr* momMgrPtr );
38 
40  virtual ~DtMomObserver() override;
41 
43  virtual void reset();
44 
47  virtual unsigned long objectRegisterCount() const;
48 
51  virtual unsigned long objectDeleteCount() const;
52 
54 
56 
57 
58  virtual void connect(
59  rti1516_2025::FederateAmbassador& federateAmbassador,
60  rti1516_2025::CallbackModel theCallbackModel,
61  rti1516_2025::ConfigurationResult const* returnValue, rti1516_2025::Exception* except = nullptr) override;
62 
63  virtual void connect(
64  rti1516_2025::FederateAmbassador & federateAmbassador,
65  rti1516_2025::CallbackModel theCallbackModel,
66  rti1516_2025::RtiConfiguration const& rtiConfiguration,
67  rti1516_2025::ConfigurationResult const* result = nullptr, rti1516_2025::Exception* except = nullptr) override;
68 
69  virtual void connect(
70  rti1516_2025::FederateAmbassador& federateAmbassador,
71  rti1516_2025::CallbackModel callbackModel,
72  rti1516_2025::Credentials const& credentials,
73  rti1516_2025::ConfigurationResult const* returnValue, rti1516_2025::Exception* except = nullptr) override;
74 
75  virtual void connect(
76  rti1516_2025::FederateAmbassador& federateAmbassador,
77  rti1516_2025::CallbackModel callbackModel,
78  rti1516_2025::RtiConfiguration const& configuration,
79  rti1516_2025::Credentials const& credentials,
80  rti1516_2025::ConfigurationResult const* returnValue, rti1516_2025::Exception* except = nullptr) override;
81 
82  virtual void disconnect(rti1516_2025::Exception* except = nullptr) override;
83 
84  virtual void createFederationExecution(
85  std::wstring const& federationExecutionName,
86  std::wstring const& fomModule,
87  std::wstring const& logicalTimeImplementationName,
88  rti1516_2025::Exception* except = nullptr) override;
89 
90  virtual void createFederationExecution(
91  std::wstring const& federationExecutionName,
92  std::vector<std::wstring> const& fomModules,
93  std::wstring const& logicalTimeImplementationName,
94  rti1516_2025::Exception* except = nullptr) override;
95 
96  virtual void createFederationExecutionWithMIM(
97  std::wstring const& federationExecutionName,
98  std::vector<std::wstring> const& fomModules,
99  std::wstring const& mimModule,
100  std::wstring const& logicalTimeImplementationName,
101  rti1516_2025::Exception* except = nullptr) override;
102 
103  virtual void destroyFederationExecution(
104  std::wstring const& federationExecutionName,
105  rti1516_2025::Exception* except = nullptr) override;
106 
107  virtual void joinFederationExecution(
108  std::wstring const& federateType,
109  std::wstring const& federationExecutionName,
110  std::vector<std::wstring> const& additionalFomModules,
111  rti1516_2025::FederateHandle const* returnValue, rti1516_2025::Exception* except = nullptr) override;
112 
113  virtual void joinFederationExecution(
114  std::wstring const& federateName,
115  std::wstring const& federateType,
116  std::wstring const& federationExecutionName,
117  std::vector<std::wstring> const& additionalFomModules,
118  rti1516_2025::FederateHandle const* returnValue, rti1516_2025::Exception* except = nullptr) override;
119 
120  virtual void resignFederationExecution(
121  rti1516_2025::ResignAction resignAction,
122  rti1516_2025::Exception* except = nullptr) override;
123 
124  virtual void registerFederationSynchronizationPoint(
125  std::wstring const& label,
126  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
127  rti1516_2025::Exception* except = nullptr) override;
128 
129  virtual void registerFederationSynchronizationPoint(
130  std::wstring const& label,
131  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
132  rti1516_2025::FederateHandleSet const& syncSet,
133  rti1516_2025::Exception* except = nullptr) override;
134 
135  virtual void listFederationExecutions (
136  rti1516_2025::Exception* except = nullptr) override;
137 
138  virtual void listFederationExecutionMembers(
139  std::wstring const& federationExecutionName,
140  rti1516_2025::Exception* except = nullptr) override;
141 
142  virtual void synchronizationPointAchieved (
143  std::wstring const& label,
144  bool successfully,
145  rti1516_2025::Exception* except = nullptr) override;
146 
147  virtual void requestFederationSave(
148  std::wstring const& label,
149  rti1516_2025::Exception* except = nullptr) override;
150 
151  virtual void requestFederationSave(
152  std::wstring const& label,
153  rti1516_2025::LogicalTime const& theTime,
154  rti1516_2025::Exception* except = nullptr) override;
155 
156  virtual void federateSaveBegun (
157  rti1516_2025::Exception* except = nullptr) override;
158 
159  virtual void federateSaveComplete (
160  rti1516_2025::Exception* except = nullptr) override;
161 
162  virtual void federateSaveNotComplete(
163  rti1516_2025::Exception* except = nullptr) override;
164 
165  virtual void abortFederationSave(
166  rti1516_2025::Exception* except = nullptr) override;
167 
168  virtual void queryFederationSaveStatus (
169  rti1516_2025::Exception* except = nullptr) override;
170 
171  virtual void requestFederationRestore(
172  std::wstring const& label,
173  rti1516_2025::Exception* except = nullptr) override;
174 
175  virtual void federateRestoreComplete (
176  rti1516_2025::Exception* except = nullptr) override;
177 
178  virtual void federateRestoreNotComplete (
179  rti1516_2025::Exception* except = nullptr) override;
180 
181  virtual void abortFederationRestore(
182  rti1516_2025::Exception* except = nullptr) override;
183 
184  virtual void queryFederationRestoreStatus (
185  rti1516_2025::Exception* except = nullptr) override;
187 
189 
190 
191  virtual void publishObjectClassAttributes(
192  rti1516_2025::ObjectClassHandle const& theClass,
193  rti1516_2025::AttributeHandleSet const& attributeList,
194  rti1516_2025::Exception* except = nullptr) override;
195 
196  virtual void unpublishObjectClass(
197  rti1516_2025::ObjectClassHandle const& theClass,
198  rti1516_2025::Exception* except = nullptr) override;
199 
200  virtual void unpublishObjectClassAttributes(
201  rti1516_2025::ObjectClassHandle const& theClass,
202  rti1516_2025::AttributeHandleSet const& attributeList,
203  rti1516_2025::Exception* except = nullptr) override;
204 
205  virtual void publishInteractionClass(
206  rti1516_2025::InteractionClassHandle const& theInteraction,
207  rti1516_2025::Exception* except = nullptr) override;
208 
209  virtual void unpublishInteractionClass(
210  rti1516_2025::InteractionClassHandle const& theInteraction,
211  rti1516_2025::Exception* except = nullptr) override;
212 
213  virtual void publishObjectClassDirectedInteractions(
214  rti1516_2025::ObjectClassHandle const& objectClass,
215  rti1516_2025::InteractionClassHandleSet const& interactionClasses,
216  rti1516_2025::Exception* except = nullptr);
217 
218  virtual void unpublishObjectClassDirectedInteractions(
219  rti1516_2025::ObjectClassHandle const& objectClass,
220  rti1516_2025::Exception* except = nullptr);
221 
222  virtual void unpublishObjectClassDirectedInteractions(
223  rti1516_2025::ObjectClassHandle const& objectClass,
224  rti1516_2025::InteractionClassHandleSet const& interactionClasses,
225  rti1516_2025::Exception* except = nullptr);
226 
227  virtual void subscribeObjectClassAttributes(
228  rti1516_2025::ObjectClassHandle const& theClass,
229  rti1516_2025::AttributeHandleSet const& attributeList,
230  bool active,
231  std::wstring const& updateRateDesignator,
232  rti1516_2025::Exception* except = nullptr) override;
233 
234  virtual void unsubscribeObjectClass(
235  rti1516_2025::ObjectClassHandle const& theClass,
236  rti1516_2025::Exception* except = nullptr) override;
237 
238  virtual void unsubscribeObjectClassAttributes(
239  rti1516_2025::ObjectClassHandle const& theClass,
240  rti1516_2025::AttributeHandleSet const& attributeList,
241  rti1516_2025::Exception* except = nullptr) override;
242 
243  virtual void subscribeInteractionClass(
244  rti1516_2025::InteractionClassHandle const& theClass,
245  bool active,
246  rti1516_2025::Exception* except = nullptr) override;
247 
248  virtual void unsubscribeInteractionClass(
249  rti1516_2025::InteractionClassHandle const& theClass,
250  rti1516_2025::Exception* except = nullptr) override;
251 
252  virtual void subscribeObjectClassDirectedInteractions(
253  rti1516_2025::ObjectClassHandle const& objectClass,
254  rti1516_2025::InteractionClassHandleSet const& interactionClasses,
255  bool universally = false,
256  rti1516_2025::Exception* except = nullptr);
257 
258  virtual void unsubscribeObjectClassDirectedInteractions(
259  rti1516_2025::ObjectClassHandle const& objectClass,
260  rti1516_2025::Exception* except = nullptr);
261 
262  virtual void unsubscribeObjectClassDirectedInteractions(
263  rti1516_2025::ObjectClassHandle const& objectClass,
264  rti1516_2025::InteractionClassHandleSet const& interactionClasses,
265  rti1516_2025::Exception* except = nullptr);
267 
269 
270 
271  virtual void reserveObjectInstanceName(
272  std::wstring const& theObjectInstanceName,
273  rti1516_2025::Exception* except = nullptr) override;
274 
275  virtual void releaseObjectInstanceName(
276  std::wstring const& theObjectInstanceName,
277  rti1516_2025::Exception* except = nullptr) override;
278 
279  virtual void reserveMultipleObjectInstanceNames(
280  std::set<std::wstring> const& theObjectInstanceNames,
281  rti1516_2025::Exception* except = nullptr) override;
282 
283  virtual void releaseMultipleObjectInstanceNames(
284  std::set<std::wstring> const& theObjectInstanceNames,
285  rti1516_2025::Exception* except = nullptr) override;
286 
287  virtual void registerObjectInstance(
288  rti1516_2025::ObjectClassHandle const& theClass,
289  rti1516_2025::ObjectInstanceHandle const* objectHandle,
290  rti1516_2025::Exception* except = nullptr) override;
291 
292  virtual void registerObjectInstance(
293  rti1516_2025::ObjectClassHandle const& theClass,
294  std::wstring const& theObjectInstanceName,
295  rti1516_2025::ObjectInstanceHandle const* objectHandle,
296  rti1516_2025::Exception* except = nullptr) override;
297 
298  virtual void updateAttributeValues(
299  rti1516_2025::ObjectInstanceHandle const& theObject,
300  rti1516_2025::AttributeHandleValueMap const& theAttributeValues,
301  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
302  rti1516_2025::Exception* except = nullptr) override;
303 
304  virtual void updateAttributeValues(
305  rti1516_2025::ObjectInstanceHandle const& theObject,
306  rti1516_2025::AttributeHandleValueMap const& theAttributeValues,
307  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
308  rti1516_2025::LogicalTime const& theTime,
309  rti1516_2025::MessageRetractionHandle const* retractHandle,
310  rti1516_2025::Exception* except = nullptr) override;
311 
312  virtual void sendInteraction(
313  rti1516_2025::InteractionClassHandle const& theInteraction,
314  rti1516_2025::ParameterHandleValueMap const& theParameterValues,
315  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
316  rti1516_2025::Exception* except = nullptr) override;
317 
318  virtual void sendInteraction(
319  rti1516_2025::InteractionClassHandle const& theInteraction,
320  rti1516_2025::ParameterHandleValueMap const& theParameterValues,
321  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
322  rti1516_2025::LogicalTime const& theTime,
323  rti1516_2025::MessageRetractionHandle const* retractHandle,
324  rti1516_2025::Exception* except = nullptr) override;
325 
326  virtual void sendDirectedInteraction(
327  rti1516_2025::InteractionClassHandle const& interactionClass,
328  rti1516_2025::ObjectInstanceHandle const& objectInstance,
329  rti1516_2025::ParameterHandleValueMap const& parameterValues,
330  rti1516_2025::VariableLengthData const& userSuppliedTag,
331  rti1516_2025::Exception* except = nullptr);
332 
333  virtual void sendDirectedInteraction(
334  rti1516_2025::InteractionClassHandle const& interactionClass,
335  rti1516_2025::ObjectInstanceHandle const& objectInstance,
336  rti1516_2025::ParameterHandleValueMap const& parameterValues,
337  rti1516_2025::VariableLengthData const& userSuppliedTag,
338  rti1516_2025::LogicalTime const& time,
339  rti1516_2025::MessageRetractionHandle const* returnValue, rti1516_2025::Exception* except = nullptr);
340 
341  virtual void deleteObjectInstance(
342  rti1516_2025::ObjectInstanceHandle const& theObject,
343  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
344  rti1516_2025::Exception* except = nullptr) override;
345 
346  virtual void deleteObjectInstance(
347  rti1516_2025::ObjectInstanceHandle const& theObject,
348  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
349  rti1516_2025::LogicalTime const& theTime,
350  rti1516_2025::MessageRetractionHandle const* retractHandle,
351  rti1516_2025::Exception* except = nullptr) override;
352 
353  virtual void localDeleteObjectInstance(
354  rti1516_2025::ObjectInstanceHandle const& theObject,
355  rti1516_2025::Exception* except = nullptr) override;
356 
357  virtual void requestAttributeValueUpdate(
358  rti1516_2025::ObjectInstanceHandle const& theObject,
359  rti1516_2025::AttributeHandleSet const& theAttributes,
360  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
361  rti1516_2025::Exception* except = nullptr) override;
362 
363  virtual void requestAttributeValueUpdate(
364  rti1516_2025::ObjectClassHandle const& theClass,
365  rti1516_2025::AttributeHandleSet const& theAttributes,
366  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
367  rti1516_2025::Exception* except = nullptr) override;
368 
369  virtual void changeDefaultAttributeTransportationType(
370  rti1516_2025::ObjectClassHandle const& theObjectClass,
371  rti1516_2025::AttributeHandleSet const& theAttributes,
372  rti1516_2025::TransportationTypeHandle const& theType,
373  rti1516_2025::Exception* except = nullptr) override;
374 
375  virtual void requestAttributeTransportationTypeChange(
376  rti1516_2025::ObjectInstanceHandle const& theObject,
377  rti1516_2025::AttributeHandleSet const& theAttributes,
378  rti1516_2025::TransportationTypeHandle const& theType,
379  rti1516_2025::Exception* except = nullptr) override;
380 
381  virtual void queryAttributeTransportationType(
382  rti1516_2025::ObjectInstanceHandle const& theObject,
383  rti1516_2025::AttributeHandle const& theAttribute,
384  rti1516_2025::Exception* except = nullptr) override;
385 
386  virtual void requestInteractionTransportationTypeChange (
387  rti1516_2025::InteractionClassHandle const& theClass,
388  rti1516_2025::TransportationTypeHandle const& theType,
389  rti1516_2025::Exception* except = nullptr) override;
390 
391  virtual void queryInteractionTransportationType(
392  rti1516_2025::FederateHandle const& theFederate,
393  rti1516_2025::InteractionClassHandle const& theInteraction,
394  rti1516_2025::Exception* except = nullptr) override;
395 
397 
399 
400 
401  virtual void unconditionalAttributeOwnershipDivestiture(
402  rti1516_2025::ObjectInstanceHandle const& theObject,
403  rti1516_2025::AttributeHandleSet const& theAttributes,
404  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
405  rti1516_2025::Exception* except = nullptr) override;
406 
407  virtual void negotiatedAttributeOwnershipDivestiture(
408  rti1516_2025::ObjectInstanceHandle const& theObject,
409  rti1516_2025::AttributeHandleSet const& theAttributes,
410  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
411  rti1516_2025::Exception* except = nullptr) override;
412 
413  virtual void confirmDivestiture(
414  rti1516_2025::ObjectInstanceHandle const& theObject,
415  rti1516_2025::AttributeHandleSet const& confirmedAttributes,
416  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
417  rti1516_2025::Exception* except = nullptr) override;
418 
419  virtual void attributeOwnershipAcquisition(
420  rti1516_2025::ObjectInstanceHandle const& theObject,
421  rti1516_2025::AttributeHandleSet const& desiredAttributes,
422  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
423  rti1516_2025::Exception* except = nullptr) override;
424 
425  virtual void attributeOwnershipAcquisitionIfAvailable(
426  rti1516_2025::ObjectInstanceHandle const& theObject,
427  rti1516_2025::AttributeHandleSet const& desiredAttributes,
428  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
429  rti1516_2025::Exception* except = nullptr) override;
430 
431  virtual void attributeOwnershipReleaseDenied(
432  rti1516_2025::ObjectInstanceHandle const& theObject,
433  rti1516_2025::AttributeHandleSet const& theAttributes,
434  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
435  rti1516_2025::Exception* except = nullptr) override;
436 
437  virtual void attributeOwnershipDivestitureIfWanted(
438  rti1516_2025::ObjectInstanceHandle const& theObject,
439  rti1516_2025::AttributeHandleSet const& theAttributes,
440  rti1516_2025::VariableLengthData const& userSuppliedTag,
441  rti1516_2025::AttributeHandleSet const& theDivestedAttributes,
442  rti1516_2025::Exception* except = nullptr) override;
443 
444  virtual void cancelNegotiatedAttributeOwnershipDivestiture(
445  rti1516_2025::ObjectInstanceHandle const& theObject,
446  rti1516_2025::AttributeHandleSet const& theAttributes,
447  rti1516_2025::Exception* except = nullptr) override;
448 
449  virtual void cancelAttributeOwnershipAcquisition(
450  rti1516_2025::ObjectInstanceHandle const& theObject,
451  rti1516_2025::AttributeHandleSet const& theAttributes,
452  rti1516_2025::Exception* except = nullptr) override;
453 
454  virtual void queryAttributeOwnership(
455  rti1516_2025::ObjectInstanceHandle const& theObject,
456  rti1516_2025::AttributeHandleSet const& theAttributeSet,
457  rti1516_2025::Exception* except = nullptr) override;
458 
459  virtual void isAttributeOwnedByFederate(
460  rti1516_2025::ObjectInstanceHandle const& theObject,
461  rti1516_2025::AttributeHandle const& theAttribute,
462  bool result,
463  rti1516_2025::Exception* except = nullptr) override;
465 
467 
468 
469  virtual void enableTimeRegulation(
470  rti1516_2025::LogicalTimeInterval const& theLookahead,
471  rti1516_2025::Exception* except = nullptr) override;
472 
473  virtual void disableTimeRegulation (
474  rti1516_2025::Exception* except = nullptr) override;
475 
476  virtual void enableTimeConstrained (
477  rti1516_2025::Exception* except = nullptr) override;
478 
479  virtual void disableTimeConstrained (
480  rti1516_2025::Exception* except = nullptr) override;
481 
482  virtual void timeAdvanceRequest(
483  rti1516_2025::LogicalTime const& theTime,
484  rti1516_2025::Exception* except = nullptr) override;
485 
486  virtual void timeAdvanceRequestAvailable(
487  rti1516_2025::LogicalTime const& theTime,
488  rti1516_2025::Exception* except = nullptr) override;
489 
490  virtual void nextMessageRequest(
491  rti1516_2025::LogicalTime const& theTime,
492  rti1516_2025::Exception* except = nullptr) override;
493 
494  virtual void nextMessageRequestAvailable(
495  rti1516_2025::LogicalTime const& theTime,
496  rti1516_2025::Exception* except = nullptr) override;
497 
498  virtual void flushQueueRequest(
499  rti1516_2025::LogicalTime const& theTime,
500  rti1516_2025::Exception* except = nullptr) override;
501 
502  virtual void enableAsynchronousDelivery (
503  rti1516_2025::Exception* except = nullptr) override;
504 
505  virtual void disableAsynchronousDelivery (
506  rti1516_2025::Exception* except = nullptr) override;
507 
508  virtual void queryGALT (rti1516_2025::LogicalTime & theTime,
509  bool result,
510  rti1516_2025::Exception* except = nullptr) override;
511 
512  virtual void queryLogicalTime (rti1516_2025::LogicalTime & theTime,
513  rti1516_2025::Exception* except = nullptr) override;
514 
515  virtual void queryLITS (rti1516_2025::LogicalTime & theTime,
516  bool result,
517  rti1516_2025::Exception* except = nullptr) override;
518 
519  virtual void modifyLookahead(
520  rti1516_2025::LogicalTimeInterval const& theLookahead,
521  rti1516_2025::Exception* except = nullptr) override;
522 
523  virtual void queryLookahead (rti1516_2025::LogicalTimeInterval & interval,
524  rti1516_2025::Exception* except = nullptr) override;
525 
526  virtual void retract(
527  rti1516_2025::MessageRetractionHandle const& theHandle,
528  rti1516_2025::Exception* except = nullptr) override;
529 
530  virtual void changeAttributeOrderType(
531  rti1516_2025::ObjectInstanceHandle const& theObject,
532  rti1516_2025::AttributeHandleSet const& theAttributes,
533  rti1516_2025::OrderType theType,
534  rti1516_2025::Exception* except = nullptr) override;
535 
536  virtual void changeDefaultAttributeOrderType(
537  rti1516_2025::ObjectClassHandle const& theObjectClass,
538  rti1516_2025::AttributeHandleSet const& theAttributes,
539  rti1516_2025::OrderType theType,
540  rti1516_2025::Exception* except = nullptr) override;
541 
542  virtual void changeInteractionOrderType(
543  rti1516_2025::InteractionClassHandle const& theClass,
544  rti1516_2025::OrderType theType,
545  rti1516_2025::Exception* except = nullptr) override;
547 
549 
550 
551  virtual void createRegion(
552  rti1516_2025::DimensionHandleSet const& theDimensions,
553  rti1516_2025::RegionHandle const* handle,
554  rti1516_2025::Exception* except = nullptr) override;
555 
556  virtual void commitRegionModifications(
557  rti1516_2025::RegionHandleSet const& theRegionHandleSet,
558  rti1516_2025::Exception* except = nullptr) override;
559 
560  virtual void deleteRegion(
561  rti1516_2025::RegionHandle const& theRegion,
562  rti1516_2025::Exception* except = nullptr) override;
563 
564  virtual void registerObjectInstanceWithRegions(
565  rti1516_2025::ObjectClassHandle const& theClass,
567  theAttributeHandleSetRegionHandleSetPairVector,
568  rti1516_2025::ObjectInstanceHandle const* objectHandle,
569  rti1516_2025::Exception* except = nullptr) override;
570 
571  virtual void registerObjectInstanceWithRegions(
572  rti1516_2025::ObjectClassHandle const& theClass,
574  theAttributeHandleSetRegionHandleSetPairVector,
575  std::wstring const& theObjectInstanceName,
576  rti1516_2025::ObjectInstanceHandle const* objectHandle,
577  rti1516_2025::Exception* except = nullptr) override;
578 
579  virtual void associateRegionsForUpdates(
580  rti1516_2025::ObjectInstanceHandle const& theObject,
582  theAttributeHandleSetRegionHandleSetPairVector,
583  rti1516_2025::Exception* except = nullptr) override;
584 
585  virtual void unassociateRegionsForUpdates(
586  rti1516_2025::ObjectInstanceHandle const& theObject,
588  theAttributeHandleSetRegionHandleSetPairVector,
589  rti1516_2025::Exception* except = nullptr) override;
590 
591  virtual void subscribeObjectClassAttributesWithRegions(
592  rti1516_2025::ObjectClassHandle const& theClass,
594  theAttributeHandleSetRegionHandleSetPairVector,
595  bool active,
596  std::wstring const& updateRateDesignator,
597  rti1516_2025::Exception* except = nullptr) override;
598 
599  virtual void unsubscribeObjectClassAttributesWithRegions(
600  rti1516_2025::ObjectClassHandle const& theClass,
602  theAttributeHandleSetRegionHandleSetPairVector,
603  rti1516_2025::Exception* except = nullptr) override;
604 
605  virtual void subscribeInteractionClassWithRegions(
606  rti1516_2025::InteractionClassHandle const& theClass,
607  rti1516_2025::RegionHandleSet const& theRegionHandleSet,
608  bool active,
609  rti1516_2025::Exception* except = nullptr) override;
610 
611  virtual void unsubscribeInteractionClassWithRegions(
612  rti1516_2025::InteractionClassHandle const& theClass,
613  rti1516_2025::RegionHandleSet const& theRegionHandleSet,
614  rti1516_2025::Exception* except = nullptr) override;
615 
616  virtual void sendInteractionWithRegions(
617  rti1516_2025::InteractionClassHandle const& interactionClass,
618  rti1516_2025::ParameterHandleValueMap const& parameterValues,
619  rti1516_2025::RegionHandleSet const& regions,
620  rti1516_2025::VariableLengthData const& userSuppliedTag,
621  rti1516_2025::Exception* except = nullptr) override;
622 
623  virtual void sendInteractionWithRegions(
624  rti1516_2025::InteractionClassHandle const& interactionClass,
625  rti1516_2025::ParameterHandleValueMap const& parameterValues,
626  rti1516_2025::RegionHandleSet const& regions,
627  rti1516_2025::VariableLengthData const& userSuppliedTag,
628  rti1516_2025::LogicalTime const& time,
629  rti1516_2025::MessageRetractionHandle const* returnValue, rti1516_2025::Exception* except = nullptr) override;
630 
631  virtual void requestAttributeValueUpdateWithRegions(
632  rti1516_2025::ObjectClassHandle const& theClass,
634  rti1516_2025::VariableLengthData const& theUserSuppliedTag,
635  rti1516_2025::Exception* except = nullptr) override;
637 
639 
640 
641  virtual void getFederateHandle(
642  std::wstring const& theName,
643  rti1516_2025::FederateHandle const* returnValue,
644  rti1516_2025::Exception* except = nullptr) override;
645 
646  virtual void getFederateName(
647  rti1516_2025::FederateHandle const& theHandle,
648  std::wstring const* returnValue,
649  rti1516_2025::Exception* except = nullptr) override;
650 
651  virtual void getObjectClassHandle(
652  std::wstring const& theName,
653  rti1516_2025::ObjectClassHandle const* returnValue,
654  rti1516_2025::Exception* except = nullptr) override;
655 
656  virtual void getObjectClassName(
657  rti1516_2025::ObjectClassHandle const& theHandle,
658  std::wstring const* returnValue,
659  rti1516_2025::Exception* except = nullptr) override;
660 
661  virtual void getAttributeHandle(
662  rti1516_2025::ObjectClassHandle const& whichClass,
663  std::wstring const& theAttributeName,
664  rti1516_2025::AttributeHandle const* returnValue,
665  rti1516_2025::Exception* except = nullptr) override;
666 
667  virtual void getAttributeName(
668  rti1516_2025::ObjectClassHandle const& whichClass,
669  rti1516_2025::AttributeHandle const& theHandle,
670  std::wstring const* returnValue,
671  rti1516_2025::Exception* except = nullptr) override;
672 
673  virtual void getUpdateRateValue(
674  std::wstring const& updateRateDesignator,
675  double result,
676  rti1516_2025::Exception* except = nullptr) override;
677 
678  virtual void getUpdateRateValueForAttribute(
679  rti1516_2025::ObjectInstanceHandle const& theObject,
680  rti1516_2025::AttributeHandle const& theAttribute,
681  double result,
682  rti1516_2025::Exception* except = nullptr) override;
683 
684  virtual void getInteractionClassHandle (
685  std::wstring const& theName,
686  rti1516_2025::InteractionClassHandle const* returnValue,
687  rti1516_2025::Exception* except = nullptr) override;
688 
689  virtual void getInteractionClassName(
690  rti1516_2025::InteractionClassHandle const& theHandle,
691  std::wstring const* returnValue,
692  rti1516_2025::Exception* except = nullptr) override;
693 
694  virtual void getParameterHandle(
695  rti1516_2025::InteractionClassHandle const& whichClass,
696  std::wstring const& theName,
697  rti1516_2025::ParameterHandle const* returnValue,
698  rti1516_2025::Exception* except = nullptr) override;
699 
700  virtual void getParameterName(
701  rti1516_2025::InteractionClassHandle const& whichClass,
702  rti1516_2025::ParameterHandle const& theHandle,
703  std::wstring const* returnValue,
704  rti1516_2025::Exception* except = nullptr) override;
705 
706  virtual void getObjectInstanceHandle(
707  std::wstring const& theName,
708  rti1516_2025::ObjectInstanceHandle const* returnValue,
709  rti1516_2025::Exception* except = nullptr) override;
710 
711  virtual void getObjectInstanceName(
712  rti1516_2025::ObjectInstanceHandle const& theHandle,
713  std::wstring const* returnValue,
714  rti1516_2025::Exception* except = nullptr) override;
715 
716  virtual void getKnownObjectClassHandle(
717  rti1516_2025::ObjectInstanceHandle const& theObject,
718  rti1516_2025::ObjectClassHandle const* returnValue,
719  rti1516_2025::Exception* except = nullptr) override;
720 
721  virtual void getTransportationTypeHandle(
722  std::wstring const& transportationName,
723  rti1516_2025::TransportationTypeHandle const* returnValue,
724  rti1516_2025::Exception* except = nullptr) override;
725 
726  virtual void getTransportationTypeName(
727  rti1516_2025::TransportationTypeHandle const& transportationType,
728  std::wstring const* returnValue,
729  rti1516_2025::Exception* except = nullptr) override;
730 
731  virtual void getOrderType(
732  std::wstring const& orderName,
733  rti1516_2025::OrderType const* returnValue,
734  rti1516_2025::Exception* except = nullptr) override;
735 
736  virtual void getOrderName(
737  rti1516_2025::OrderType orderType,
738  std::wstring const* returnValue,
739  rti1516_2025::Exception* except = nullptr) override;
740 
741  virtual void getAvailableDimensionsForObjectClass(
742  rti1516_2025::ObjectClassHandle const& theClass,
743  rti1516_2025::DimensionHandleSet const* returnValue,
744  rti1516_2025::Exception* except = nullptr) override;
745 
746  virtual void getAvailableDimensionsForInteractionClass(
747  rti1516_2025::InteractionClassHandle const& theClass,
748  rti1516_2025::DimensionHandleSet const* returnValue,
749  rti1516_2025::Exception* except = nullptr) override;
750 
751  virtual void getDimensionHandle(
752  std::wstring const& theName,
753  rti1516_2025::DimensionHandle const* returnValue,
754  rti1516_2025::Exception* except = nullptr) override;
755 
756  virtual void getDimensionName(
757  rti1516_2025::DimensionHandle const& theHandle,
758  std::wstring const* returnValue,
759  rti1516_2025::Exception* except = nullptr) override;
760 
761  virtual void getDimensionUpperBound(
762  rti1516_2025::DimensionHandle const& theHandle,
763  unsigned long returnValue,
764  rti1516_2025::Exception* except = nullptr) override;
765 
766  virtual void getDimensionHandleSet(
767  rti1516_2025::RegionHandle const& theRegionHandle,
768  rti1516_2025::DimensionHandleSet const* returnValue,
769  rti1516_2025::Exception* except = nullptr) override;
770 
771  virtual void getRangeBounds(
772  rti1516_2025::RegionHandle const& theRegionHandle,
773  rti1516_2025::DimensionHandle const& theDimensionHandle,
774  rti1516_2025::RangeBounds const* returnValue,
775  rti1516_2025::Exception* except = nullptr) override;
776 
777  virtual void setRangeBounds(
778  rti1516_2025::RegionHandle const& theRegionHandle,
779  rti1516_2025::DimensionHandle const& theDimensionHandle,
780  rti1516_2025::RangeBounds const& theRangeBounds,
781  rti1516_2025::Exception* except = nullptr) override;
782 
783  virtual void normalizeServiceGroup(
784  rti1516_2025::ServiceGroup theServiceGroup,
785  unsigned long returnValue,
786  rti1516_2025::Exception* except = nullptr) override;
787 
788  virtual void normalizeFederateHandle(
789  rti1516_2025::FederateHandle const& theFederateHandle,
790  unsigned long returnValue,
791  rti1516_2025::Exception* except = nullptr) override;
792 
793  virtual void normalizeObjectClassHandle(
794  rti1516_2025::ObjectClassHandle const& theObjectClassHandle,
795  unsigned long returnValue,
796  rti1516_2025::Exception* except = nullptr) override;
797 
798  virtual void normalizeInteractionClassHandle(
799  rti1516_2025::InteractionClassHandle const& theInteractionClassHandle,
800  unsigned long returnValue,
801  rti1516_2025::Exception* except = nullptr) override;
802 
803  virtual void normalizeObjectInstanceHandle(
804  rti1516_2025::ObjectInstanceHandle const& theObjectInstanceHandle,
805  unsigned long returnValue,
806  rti1516_2025::Exception* except = nullptr) override;
807 
808  virtual void getObjectClassRelevanceAdvisorySwitch(
809  bool returnValue, rti1516_2025::Exception* except = nullptr) const;
810 
811  virtual void setObjectClassRelevanceAdvisorySwitch(bool returnValue,
812  rti1516_2025::Exception* except = nullptr) override;
813 
814  virtual void getAttributeRelevanceAdvisorySwitch(
815  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
816 
817  virtual void setAttributeRelevanceAdvisorySwitch(bool switchValue,
818  rti1516_2025::Exception* except = nullptr) override;
819 
820  virtual void getAttributeScopeAdvisorySwitch(
821  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
822 
823  virtual void setAttributeScopeAdvisorySwitch(bool switchValue,
824  rti1516_2025::Exception* except = nullptr) override;
825 
826  virtual void getInteractionRelevanceAdvisorySwitch(
827  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
828 
829  virtual void setInteractionRelevanceAdvisorySwitch(bool switchValue,
830  rti1516_2025::Exception* except = nullptr) override;
831 
832  virtual void getConveyRegionDesignatorSetsSwitch(
833  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
834 
835  virtual void setConveyRegionDesignatorSetsSwitch(bool switchValue,
836  rti1516_2025::Exception* except = nullptr) override;
837 
838  virtual void getAutomaticResignDirective(
839  rti1516_2025::ResignAction returnValue, rti1516_2025::Exception* except = nullptr) override;
840 
841  virtual void setAutomaticResignDirective(rti1516_2025::ResignAction resignAction,
842  rti1516_2025::Exception* except = nullptr) override;
843 
844  virtual void getServiceReportingSwitch(
845  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
846 
847  virtual void setServiceReportingSwitch(bool switchValue,
848  rti1516_2025::Exception* except = nullptr) override;
849 
850  virtual void getExceptionReportingSwitch(
851  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
852 
853  virtual void setExceptionReportingSwitch(bool switchValue,
854  rti1516_2025::Exception* except = nullptr) override;
855 
856  virtual void getSendServiceReportsToFileSwitch(
857  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
858 
859  virtual void setSendServiceReportsToFileSwitch(bool switchValue,
860  rti1516_2025::Exception* except = nullptr) override;
861 
862  virtual void getAutoProvideSwitch(
863  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
864 
865  virtual void getDelaySubscriptionEvaluationSwitch(
866  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
867 
868  virtual void getAdvisoriesUseKnownClassSwitch(
869  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
870 
871  virtual void getAllowRelaxedDDMSwitch(
872  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
873 
874  virtual void getNonRegulatedGrantSwitch(
875  bool returnValue, rti1516_2025::Exception* except = nullptr) const override;
876 
877  virtual void evokeCallback(double approximateMinimumTimeInSeconds,
878  bool returnValue, rti1516_2025::Exception* except = nullptr) override;
879 
880  virtual void evokeMultipleCallbacks(
881  double approximateMinimumTimeInSeconds,
882  double approximateMaximumTimeInSeconds,
883  bool returnValue, rti1516_2025::Exception* except = nullptr) override;
884 
885  virtual void enableCallbacks (
886  rti1516_2025::Exception* except = nullptr) override;
887 
888  virtual void disableCallbacks (
889  rti1516_2025::Exception* except = nullptr) override;
890 
891  virtual void decodeFederateHandle(
892  rti1516_2025::VariableLengthData const& encodedValue,
893  rti1516_2025::FederateHandle const* returnValue,
894  rti1516_2025::Exception* except = nullptr) const override;
895 
896  virtual void decodeObjectClassHandle(
897  rti1516_2025::VariableLengthData const& encodedValue,
898  rti1516_2025::ObjectClassHandle const* returnValue,
899  rti1516_2025::Exception* except = nullptr) const override;
900 
901  virtual void decodeInteractionClassHandle(
902  rti1516_2025::VariableLengthData const& encodedValue,
903  rti1516_2025::InteractionClassHandle const* returnValue,
904  rti1516_2025::Exception* except = nullptr) const override;
905 
906  virtual void decodeObjectInstanceHandle(
907  rti1516_2025::VariableLengthData const& encodedValue,
908  rti1516_2025::ObjectInstanceHandle const* returnValue,
909  rti1516_2025::Exception* except = nullptr) const override;
910 
911  virtual void decodeAttributeHandle(
912  rti1516_2025::VariableLengthData const& encodedValue,
913  rti1516_2025::AttributeHandle const* returnValue,
914  rti1516_2025::Exception* except = nullptr) const override;
915 
916  virtual void decodeParameterHandle(
917  rti1516_2025::VariableLengthData const& encodedValue,
918  rti1516_2025::ParameterHandle const* returnValue,
919  rti1516_2025::Exception* except = nullptr) const override;
920 
921  virtual void decodeDimensionHandle(
922  rti1516_2025::VariableLengthData const& encodedValue,
923  rti1516_2025::DimensionHandle const* returnValue,
924  rti1516_2025::Exception* except = nullptr) const override;
925 
926  virtual void decodeMessageRetractionHandle(
927  rti1516_2025::VariableLengthData const& encodedValue,
928  rti1516_2025::MessageRetractionHandle const* returnValue,
929  rti1516_2025::Exception* except = nullptr) const override;
930 
931  virtual void decodeRegionHandle(
932  rti1516_2025::VariableLengthData const& encodedValue,
933  rti1516_2025::RegionHandle const* returnValue,
934  rti1516_2025::Exception* except = nullptr) const override;
936 
937  protected:
938 
941  virtual DtObjectClassInfo* objectClassInfo(DtObjectClassHandle classHandle);
942 
945  virtual DtInteractionClassInfo* interactionClassInfo(DtInteractionClassHandle classHandle);
946 
949  virtual DtRtiObject* rtiObject(DtObjectInstanceHandle objectHandle);
950 
951  // Get the verbose level
952  virtual int verboseLevel() const;
953 
955  virtual DtFederateMgr* fedMgr();
956 
958  virtual DtFomClassMgr* fomMgr();
959 
961  virtual DtObjectMgr* objMgr();
962 
963 
964  protected:
965 
966  DtMomMgr* myMomMgr;
967  unsigned long myRegisterCount;
968  unsigned long myDeleteCount;
969  bool myAllowEvokeCallbackToBeObserved;
970 
971  static const DtMomArgument theDfltMomArgument;
972  static const DtMomArgument theDfltRetVal;
973  static DtMomObserverCreator theCreator;
974 
975 };
976 
977 
978 #endif
979 #endif
OrderType
Definition: datatypes.pb.h:472
std::set< AttributeHandle > AttributeHandleSet
Definition: Typedefs.h:35
ServiceGroup
Definition: datatypes.pb.h:497
DtHandle DtObjectClassHandle
Definition: internalTypes.h:48
DtHandle DtInteractionClassHandle
Definition: internalTypes.h:52
CallbackModel
Definition: datatypes.pb.h:280
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
std::set< RegionHandle > RegionHandleSet
Definition: Typedefs.h:39
DtHandle DtObjectInstanceHandle
Definition: internalTypes.h:50
The RTI object maintains the internal RTI object state.
Definition: rtiObject.h:123
Definition: fomMgr.h:49
std::vector< AttributeHandleSetRegionHandleSetPair > AttributeHandleSetRegionHandleSetPairVector
Definition: Typedefs.h:57
An abstract base class which must be implemented, and used by a federate.
The object manager class processes the object management services.
Definition: objMgr.h:81
ResignAction
Definition: datatypes.pb.h:305
std::map< AttributeHandle, VariableLengthData > AttributeHandleValueMap
Definition: Typedefs.h:44
Definition: intClassInfo.h:40
std::set< FederateHandle > FederateHandleSet
Definition: Typedefs.h:37
Definition: objClassInfo.h:36
std::set< DimensionHandle > DimensionHandleSet
Definition: Typedefs.h:38
std::map< ParameterHandle, VariableLengthData > ParameterHandleValueMap
Definition: Typedefs.h:49

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)