MAK RTIspy API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
fedAmbCallback1516e.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2010 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: fedAmbCallback1516e.h,v $ $Revision: 1.0 $ $State: Exp $
7 *********************************************************************/
8 
9 #ifndef fedAmbCallback1516e_h
10 #define fedAmbCallback1516e_h
11 #ifdef DtIFSPEC1516E
12 
15 
16 #include <RTI/Typedefs.h>
17 #include <RTI/FederateAmbassador.h>
18 #include "rtiMsg.h"
19 
20 class DtCallbackMsg;
21 
23 enum DtFedAmbCallKind
24 {
28  DtFedAmbCall_connectionLost,
29  DtFedAmbCall_reportFederationExecutions,
31  DtFedAmbCall_synchronizationPointRegistrationSucceeded,
32  DtFedAmbCall_synchronizationPointRegistrationFailed,
34  DtFedAmbCall_announceSynchronizationPoint,
36  DtFedAmbCall_federationSynchronized,
38  DtFedAmbCall_initiateFederateSave,
39  DtFedAmbCall_initiateFederateSaveWithTime,
41  DtFedAmbCall_federationSaved,
42  DtFedAmbCall_federationNotSaved,
44  DtFedAmbCall_federationSaveStatusResponse,
46  DtFedAmbCall_requestFederationRestoreSucceeded,
47  DtFedAmbCall_requestFederationRestoreFailed,
49  DtFedAmbCall_federationRestoreBegun,
51  DtFedAmbCall_initiateFederateRestore,
53  DtFedAmbCall_federationRestored,
54  DtFedAmbCall_federationNotRestored,
56  DtFedAmbCall_federationRestoreStatusResponse,
61  DtFedAmbCall_startRegistrationForObjectClass,
63  DtFedAmbCall_stopRegistrationForObjectClass,
65  DtFedAmbCall_turnInteractionsOn,
67  DtFedAmbCall_turnInteractionsOff,
72  DtFedAmbCall_objectInstanceNameReservationSucceeded,
73  DtFedAmbCall_objectInstanceNameReservationFailed,
75  DtFedAmbCall_multipleObjectInstanceNameReservationSucceeded,
76  DtFedAmbCall_multipleObjectInstanceNameReservationFailed,
78  DtFedAmbCall_discoverObjectInstance,
79  DtFedAmbCall_discoverObjectInstance_h,
81  DtFedAmbCall_reflectAttributeValues_hvuots,
82  DtFedAmbCall_reflectAttributeValues_hvuotlos,
83  DtFedAmbCall_reflectAttributeValues_hvuotloms,
85  DtFedAmbCall_receiveInteraction_hvuos,
86  DtFedAmbCall_receiveInteraction_hvuolos,
87  DtFedAmbCall_receiveInteraction_hvuoloms,
89  DtFedAmbCall_removeObjectInstance_huo,
90  DtFedAmbCall_removeObjectInstance_huomo,
91  DtFedAmbCall_removeObjectInstance_huomoc,
93  DtFedAmbCall_attributesInScope,
95  DtFedAmbCall_attributesOutOfScope,
97  DtFedAmbCall_provideAttributeValueUpdate,
99  DtFedAmbCall_turnUpdatesOnForObjectInstance,
100  DtFedAmbCall_turnUpdatesOnForObjectInstance_u,
102  DtFedAmbCall_turnUpdatesOffForObjectInstance,
104  DtFedAmbCall_confirmAttributeTransportationTypeChange,
106  DtFedAmbCall_reportAttributeTransportationType,
108  DtFedAmbCall_confirmInteractionTransportationTypeChange,
110  DtFedAmbCall_reportInteractionTransportationType,
115  DtFedAmbCall_requestAttributeOwnershipAssumption,
117  DtFedAmbCall_requestDivestitureConfirmation,
119  DtFedAmbCall_attributeOwnershipAcquisitionNotification,
121  DtFedAmbCall_attributeOwnershipUnavailable,
123  DtFedAmbCall_requestAttributeOwnershipRelease,
125  DtFedAmbCall_confirmAttributeOwnershipAcquisitionCancellation,
127  DtFedAmbCall_informAttributeOwnership,
128  DtFedAmbCall_attributeIsNotOwned,
129  DtFedAmbCall_attributeIsOwnedByRTI,
134  DtFedAmbCall_timeRegulationEnabled,
136  DtFedAmbCall_timeConstrainedEnabled,
138  DtFedAmbCall_timeAdvanceGrant,
140  DtFedAmbCall_requestRetraction,
142  DtFedAmbCall_invalid
143 };
144 
148 class DT_DLL_LRC DtFedAmbCallback
149 {
150 public:
152  DtFedAmbCallback(DtFedAmbCallKind kind);
154  virtual ~DtFedAmbCallback();
155 private:
157  DtFedAmbCallback(DtFedAmbCallback const& orig);
158  DtFedAmbCallback& operator = (DtFedAmbCallback const& orig);
159 public:
161  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const = 0;
162 
164  virtual DtFedAmbCallKind callbackKind() const;
165 
166 protected:
167  DtFedAmbCallKind myCallbackKind;
168 };
169 
170 template<DtFedAmbCallKind callbackKindValue>
171 class DtFedAmbCallbackVoid : public DtFedAmbCallback
172 {
173 public:
175  DtFedAmbCallbackVoid();
177  virtual ~DtFedAmbCallbackVoid();
178 private:
180  DtFedAmbCallbackVoid(DtFedAmbCallbackVoid const& orig);
181  DtFedAmbCallbackVoid& operator = (DtFedAmbCallbackVoid const& orig);
182 
183 public:
185  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
186 };
187 
188 template<DtFedAmbCallKind callbackKindValue>
189 class DtCallbackWithTime : public DtFedAmbCallback
190 {
191 public:
193  DtCallbackWithTime(
194  DtRtiApiUniquePtrTime time);
196  virtual ~DtCallbackWithTime();
197 private:
199  DtCallbackWithTime(DtCallbackWithTime const& orig);
200  DtCallbackWithTime& operator = (DtCallbackWithTime const& orig);
201 public:
203  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
204 protected:
205  DtRtiApiUniquePtrTime myTime;
206 };
207 
208 template<DtFedAmbCallKind callbackKindValue>
209 class DtCallbackWithWString : public DtFedAmbCallback
210 {
211 public:
213  DtCallbackWithWString(std::wstring const& value);
214  DtCallbackWithWString(std::wstring const& value,
215  rti1516e::FederateHandleSet const & failedToSyncSet );
216 
218  virtual ~DtCallbackWithWString();
219 private:
221  DtCallbackWithWString(DtCallbackWithWString const& orig);
222  DtCallbackWithWString& operator = (DtCallbackWithWString const& orig);
223 public:
225  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
226 protected:
227  std::wstring myString;
228  rti1516e::FederateHandleSet myFailedToSyncSet;
229 };
230 
231 template<DtFedAmbCallKind callbackKindValue>
232 class DtCallbackWithWStringArray : public DtFedAmbCallback
233 {
234 public:
236  DtCallbackWithWStringArray( std::set<std::wstring> const & value );
237 
239  virtual ~DtCallbackWithWStringArray();
240 private:
242  DtCallbackWithWStringArray(DtCallbackWithWStringArray const& orig);
243  DtCallbackWithWStringArray& operator = (DtCallbackWithWStringArray const& orig);
244 
245 public:
247  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
248 protected:
249  std::set<std::wstring> myStrings;
250 };
251 
252 class DtCbReportFederationExecutions: public DtFedAmbCallback
253 {
254 public:
256  DtCbReportFederationExecutions(rti1516e::FederationExecutionInformationVector theFederationExecutionInformation);
258  virtual ~DtCbReportFederationExecutions();
259 private:
261  DtCbReportFederationExecutions(DtCbReportFederationExecutions const& orig);
262  DtCbReportFederationExecutions& operator = (DtCbReportFederationExecutions const& orig);
263 public:
265  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
266 protected:
267  rti1516e::FederationExecutionInformationVector myFederationExecutionInformation;
268 };
269 
270 template<DtFedAmbCallKind callbackKindValue>
271 class DtCallbackWithObjectClass : public DtFedAmbCallback
272 {
273 public:
275  DtCallbackWithObjectClass(rti1516e::ObjectClassHandle theClass);
277  virtual ~DtCallbackWithObjectClass();
278 private:
280  DtCallbackWithObjectClass(DtCallbackWithObjectClass const& orig);
281  DtCallbackWithObjectClass& operator = (DtCallbackWithObjectClass const& orig);
282 public:
284  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
285 protected:
286  rti1516e::ObjectClassHandle myObjectClass;
287 };
288 
289 template<DtFedAmbCallKind callbackKindValue>
290 class DtCallbackWithInteractionClass : public DtFedAmbCallback
291 {
292 public:
294  DtCallbackWithInteractionClass(
295  rti1516e::InteractionClassHandle theClass);
297  virtual ~DtCallbackWithInteractionClass();
298 private:
300  DtCallbackWithInteractionClass(DtCallbackWithInteractionClass const& orig);
301  DtCallbackWithInteractionClass& operator = (DtCallbackWithInteractionClass const& orig);
302 public:
304  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
305 protected:
306  rti1516e::InteractionClassHandle myInteractionClass;
307 };
308 
309 template<DtFedAmbCallKind callbackKindValue>
310 class DtCallbackWithObjectAttributesOptTag : public DtFedAmbCallback
311 {
312 public:
314  DtCallbackWithObjectAttributesOptTag(
315  rti1516e::ObjectInstanceHandle theObject,
316  rti1516e::AttributeHandleSet const & theAttributes);
317  DtCallbackWithObjectAttributesOptTag(
318  rti1516e::ObjectInstanceHandle theObject,
319  rti1516e::AttributeHandleSet const & theAttributes,
320  rti1516e::VariableLengthData const & theUserSuppliedTag);
321  DtCallbackWithObjectAttributesOptTag(
322  rti1516e::ObjectInstanceHandle theObject,
323  rti1516e::AttributeHandleSet const & theAttributes,
324  rti1516e::TransportationType theTransportation );
325  DtCallbackWithObjectAttributesOptTag(
326  rti1516e::ObjectInstanceHandle theObject,
327  rti1516e::AttributeHandle theAttribute,
328  rti1516e::TransportationType theTransportation );
329  DtCallbackWithObjectAttributesOptTag(
330  rti1516e::InteractionClassHandle theInteraction,
331  rti1516e::TransportationType theTransportation );
332  DtCallbackWithObjectAttributesOptTag(
333  rti1516e::FederateHandle theFederateHandle,
334  rti1516e::InteractionClassHandle theInteraction,
335  rti1516e::TransportationType theTransportation );
336  DtCallbackWithObjectAttributesOptTag(
337  rti1516e::ObjectInstanceHandle theObject,
338  rti1516e::AttributeHandleSet const & theAttributes,
339  std::wstring const & updateRateDesignator );
340 
342  virtual ~DtCallbackWithObjectAttributesOptTag();
343 private:
345  DtCallbackWithObjectAttributesOptTag(DtCallbackWithObjectAttributesOptTag const& orig);
346  DtCallbackWithObjectAttributesOptTag& operator = (DtCallbackWithObjectAttributesOptTag const& orig);
347 public:
349  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
350 protected:
351  rti1516e::ObjectInstanceHandle myObject;
352  rti1516e::AttributeHandleSet myAttributes;
353  rti1516e::VariableLengthData myUserSuppliedTag;
354  rti1516e::AttributeHandle myAttribute;
355  rti1516e::TransportationType myTransportationType;
356  rti1516e::InteractionClassHandle myInteraction;
357  rti1516e::FederateHandle myFederateHandle;
358  std::wstring myUpdateRateDesignator;
359 };
360 
361 template<DtFedAmbCallKind callbackKindValue>
362 class DtCallbackWithObjectAttributesOptFederate : public DtFedAmbCallback
363 {
364 public:
366  DtCallbackWithObjectAttributesOptFederate(
367  rti1516e::ObjectInstanceHandle theObject,
368  rti1516e::AttributeHandle theAttribute);
369  DtCallbackWithObjectAttributesOptFederate(
370  rti1516e::ObjectInstanceHandle theObject,
371  rti1516e::AttributeHandle theAttribute,
372  rti1516e::FederateHandle theFederate);
374  virtual ~DtCallbackWithObjectAttributesOptFederate();
375 private:
377  DtCallbackWithObjectAttributesOptFederate(DtCallbackWithObjectAttributesOptFederate const& orig);
378  DtCallbackWithObjectAttributesOptFederate& operator = (DtCallbackWithObjectAttributesOptFederate const& orig);
379 public:
381  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
382 protected:
383  rti1516e::ObjectInstanceHandle myObject;
384  rti1516e::AttributeHandle myAttribute;
385  rti1516e::FederateHandle myFederate;
386 };
387 
392 typedef DtCallbackWithWString<DtFedAmbCall_synchronizationPointRegistrationSucceeded> DtCbSynchronizationPointRegistrationSucceeded;
393 
394 class DtCbSynchronizationPointRegistrationFailed : public DtFedAmbCallback
395 {
396 public:
398  DtCbSynchronizationPointRegistrationFailed(std::wstring const& stringValue,
401  virtual ~DtCbSynchronizationPointRegistrationFailed();
402 private:
404  DtCbSynchronizationPointRegistrationFailed(DtCbSynchronizationPointRegistrationFailed const& orig);
405  DtCbSynchronizationPointRegistrationFailed& operator = (DtCbSynchronizationPointRegistrationFailed const& orig);
406 public:
408  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
409 protected:
410  std::wstring myString;
412 };
413 
416 class DtCbAnnounceSynchronizationPoint : public DtFedAmbCallback
417 {
418 public:
420  DtCbAnnounceSynchronizationPoint(std::wstring const& stringValue,
421  rti1516e::VariableLengthData const & tag);
423  virtual ~DtCbAnnounceSynchronizationPoint();
424 private:
426  DtCbAnnounceSynchronizationPoint(DtCbAnnounceSynchronizationPoint const& orig);
427  DtCbAnnounceSynchronizationPoint& operator = (DtCbAnnounceSynchronizationPoint const& orig);
428 public:
430  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
431 protected:
432  std::wstring myString;
433  rti1516e::VariableLengthData myTag;
434 };
435 
437 typedef DtCallbackWithWString<DtFedAmbCall_federationSynchronized> DtCbFederationSynchronized;
438 
440 typedef DtCallbackWithWString<DtFedAmbCall_initiateFederateSave> DtCbInitiateFederateSave;
441 
442 class DtCbInitiateFederateSaveWithTime: public DtFedAmbCallback
443 {
444 public:
446  DtCbInitiateFederateSaveWithTime(std::wstring const& stringValue,
447  DtRtiApiUniquePtrTime time);
449  virtual ~DtCbInitiateFederateSaveWithTime();
450 private:
452  DtCbInitiateFederateSaveWithTime(DtCbInitiateFederateSaveWithTime const& orig);
453  DtCbInitiateFederateSaveWithTime& operator = (DtCbInitiateFederateSaveWithTime const& orig);
454 public:
456  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
457 protected:
458  std::wstring myString;
459  DtRtiApiUniquePtrTime myTime;
460 };
461 
463 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationSaved> DtCbFederationSaved;
464 
465 class DtCbFederationNotSaved : public DtFedAmbCallback
466 {
467 public:
469  DtCbFederationNotSaved(rti1516e::SaveFailureReason theSaveFailureReason);
471  virtual ~DtCbFederationNotSaved();
472 private:
474  DtCbFederationNotSaved(DtCbFederationNotSaved const& orig);
475  DtCbFederationNotSaved& operator = (DtCbFederationNotSaved const& orig);
476 public:
478  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
479 protected:
480  rti1516e::SaveFailureReason mySaveFailureReason;
481 };
482 
485 class DtCbFederationSaveStatusResponse : public DtFedAmbCallback
486 {
487 public:
489  DtCbFederationSaveStatusResponse(
490  rti1516e::FederateHandleSaveStatusPairVector const & theFederateStatusVector);
492  virtual ~DtCbFederationSaveStatusResponse();
493 private:
495  DtCbFederationSaveStatusResponse(DtCbFederationSaveStatusResponse const& orig);
496  DtCbFederationSaveStatusResponse& operator = (DtCbFederationSaveStatusResponse const& orig);
497 public:
499  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
500 protected:
501  rti1516e::FederateHandleSaveStatusPairVector myFederateStatusVector;
502 };
503 
505 typedef DtCallbackWithWString<DtFedAmbCall_requestFederationRestoreSucceeded> DtCbRequestFederationRestoreSucceeded;
506 
507 typedef DtCallbackWithWString<DtFedAmbCall_requestFederationRestoreFailed> DtCbRequestFederationRestoreFailed;
508 
510 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationRestoreBegun> DtCbFederationRestoreBegun;
511 
514 class DtCbInitiateFederateRestore : public DtFedAmbCallback
515 {
516 public:
518  DtCbInitiateFederateRestore(std::wstring const& stringValue,
519  rti1516e::FederateHandle handle);
521  virtual ~DtCbInitiateFederateRestore();
522 private:
524  DtCbInitiateFederateRestore(DtCbInitiateFederateRestore const& orig);
525  DtCbInitiateFederateRestore& operator = (DtCbInitiateFederateRestore const& orig);
526 public:
528  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
529 protected:
530  rti1516e::FederateHandle myHandle;
531  std::wstring myString;
532 };
533 
535 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationRestored> DtCbFederationRestored;
536 
537 class DtCbFederationNotRestored : public DtFedAmbCallback
538 {
539 public:
541  DtCbFederationNotRestored(rti1516e::RestoreFailureReason theRestoreFailureReason);
543  virtual ~DtCbFederationNotRestored();
544 private:
546  DtCbFederationNotRestored(DtCbFederationNotRestored const& orig);
547  DtCbFederationNotRestored& operator = (DtCbFederationNotRestored const& orig);
548 public:
550  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
551 protected:
552  rti1516e::RestoreFailureReason myRestoreFailureReason;
553 };
554 
557 class DtCbFederationRestoreStatusResponse : public DtFedAmbCallback
558 {
559 public:
561  DtCbFederationRestoreStatusResponse(
562  rti1516e::FederateRestoreStatusVector const & theFederateStatusVector);
564  virtual ~DtCbFederationRestoreStatusResponse();
565 private:
567  DtCbFederationRestoreStatusResponse(DtCbFederationRestoreStatusResponse const& orig);
568  DtCbFederationRestoreStatusResponse& operator = (DtCbFederationRestoreStatusResponse const& orig);
569 public:
571  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
572 protected:
573  rti1516e::FederateRestoreStatusVector myFederateStatusVector;
574 };
575 
576 
581 typedef DtCallbackWithObjectClass<DtFedAmbCall_startRegistrationForObjectClass> DtCbStartRegistrationForObjectClass;
582 
584 typedef DtCallbackWithObjectClass<DtFedAmbCall_stopRegistrationForObjectClass> DtCbStopRegistrationForObjectClass;
585 
587 typedef DtCallbackWithInteractionClass<DtFedAmbCall_turnInteractionsOn> DtCbTurnInteractionsOn;
588 
590 typedef DtCallbackWithInteractionClass<DtFedAmbCall_turnInteractionsOff> DtCbTurnInteractionsOff;
591 
596 typedef DtCallbackWithWString<DtFedAmbCall_objectInstanceNameReservationSucceeded> DtCbObjectInstanceNameReservationSucceeded;
597 typedef DtCallbackWithWString<DtFedAmbCall_objectInstanceNameReservationFailed> DtCbObjectInstanceNameReservationFailed;
598 
599 typedef DtCallbackWithWStringArray<DtFedAmbCall_multipleObjectInstanceNameReservationSucceeded> DtCbMultipleObjectInstanceNameReservationSucceeded;
600 typedef DtCallbackWithWStringArray<DtFedAmbCall_multipleObjectInstanceNameReservationFailed> DtCbMultipleObjectInstanceNameReservationFailed;
601 
604 class DtCbDiscoverObjectInstance: public DtFedAmbCallback
605 {
606 public:
608  DtCbDiscoverObjectInstance(rti1516e::ObjectInstanceHandle theObject,
609  rti1516e::ObjectClassHandle theObjectClass,
610  std::wstring const & theObjectInstanceName);
611  DtCbDiscoverObjectInstance(rti1516e::ObjectInstanceHandle theObject,
612  rti1516e::ObjectClassHandle theObjectClass,
613  std::wstring const & theObjectInstanceName,
614  rti1516e::FederateHandle producingFederate );
616  virtual ~DtCbDiscoverObjectInstance();
617 private:
619  DtCbDiscoverObjectInstance(DtCbDiscoverObjectInstance const& orig);
620  DtCbDiscoverObjectInstance& operator = (DtCbDiscoverObjectInstance const& orig);
621 public:
623  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
624 protected:
625  rti1516e::ObjectInstanceHandle myObjectInstanceHandle;
626  rti1516e::ObjectClassHandle myObjectClassHandle;
627  std::wstring myString;
628  rti1516e::FederateHandle myProducingFederate;
629 };
630 
631 
634 class DtCbReflectAttributeValues: public DtFedAmbCallback
635 {
636 public:
637  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
638  rti1516e::AttributeHandleValueMap const & theAttributeValues,
639  rti1516e::VariableLengthData const & theUserSuppliedTag,
640  rti1516e::OrderType sentOrder,
642  rti1516e::SupplementalReflectInfo theReflectInfo);
643 
644  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
645  rti1516e::AttributeHandleValueMap const & theAttributeValues,
646  rti1516e::VariableLengthData const & theUserSuppliedTag,
647  rti1516e::OrderType sentOrder,
649  DtRtiApiUniquePtrTime theTime,
650  rti1516e::OrderType receivedOrder,
651  rti1516e::SupplementalReflectInfo );
652 
653  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
654  rti1516e::AttributeHandleValueMap const & theAttributeValues,
655  rti1516e::VariableLengthData const & theUserSuppliedTag,
656  rti1516e::OrderType sentOrder,
658  DtRtiApiUniquePtrTime theTime,
659  rti1516e::OrderType receivedOrder,
660  rti1516e::MessageRetractionHandle theHandle,
661  rti1516e::SupplementalReflectInfo );
662 
664  virtual ~DtCbReflectAttributeValues();
665 private:
667  DtCbReflectAttributeValues(DtCbReflectAttributeValues const& orig);
668  DtCbReflectAttributeValues& operator = (DtCbReflectAttributeValues const& orig);
669 public:
671  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
672 
673 protected:
674  rti1516e::ObjectInstanceHandle myObject;
675  rti1516e::AttributeHandleValueMap myAttributeValues;
676  rti1516e::VariableLengthData myUserSuppliedTag;
677  rti1516e::OrderType mySentOrder;
678  rti1516e::TransportationType myTransportationType;
679  DtRtiApiUniquePtrTime myTime;
680  rti1516e::OrderType myReceivedOrder;
681  rti1516e::MessageRetractionHandle myRetractHandle;
682  rti1516e::SupplementalReflectInfo myReflectInfo;
683 };
684 
687 class DtCbReceiveInteraction: public DtFedAmbCallback
688 {
689 public:
690  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
691  rti1516e::ParameterHandleValueMap const & theParameterValues,
692  rti1516e::VariableLengthData const & theUserSuppliedTag,
693  rti1516e::OrderType sentOrder,
695  rti1516e::SupplementalReceiveInfo theReceiveInfo );
696 
697  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
698  rti1516e::ParameterHandleValueMap const & theParameterValues,
699  rti1516e::VariableLengthData const & theUserSuppliedTag,
700  rti1516e::OrderType sentOrder,
702  DtRtiApiUniquePtrTime theTime,
703  rti1516e::OrderType receivedOrder,
704  rti1516e::SupplementalReceiveInfo theReceiveInfo );
705 
706  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
707  rti1516e::ParameterHandleValueMap const & theParameterValues,
708  rti1516e::VariableLengthData const & theUserSuppliedTag,
709  rti1516e::OrderType sentOrder,
711  DtRtiApiUniquePtrTime theTime,
712  rti1516e::OrderType receivedOrder,
713  rti1516e::MessageRetractionHandle theHandle,
714  rti1516e::SupplementalReceiveInfo theReceiveInfo );
715 
717  virtual ~DtCbReceiveInteraction();
718 private:
720  DtCbReceiveInteraction(DtCbReceiveInteraction const& orig);
721  DtCbReceiveInteraction& operator = (DtCbReceiveInteraction const& orig);
722 public:
724  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
725 
726 protected:
727  rti1516e::InteractionClassHandle myInteractionClass;
728  rti1516e::ParameterHandleValueMap myParameterValues;
729  rti1516e::VariableLengthData myUserSuppliedTag;
730  rti1516e::OrderType mySentOrder;
731  rti1516e::TransportationType myTransportationType;
732  DtRtiApiUniquePtrTime myTime;
733  rti1516e::OrderType myReceivedOrder;
734  rti1516e::MessageRetractionHandle myRetractHandle;
735  rti1516e::SupplementalReceiveInfo myReceiveInfo;
736 };
737 
740 class DtCbRemoveObjectInstance: public DtFedAmbCallback
741 {
742 public:
744  DtCbRemoveObjectInstance(
745  rti1516e::ObjectInstanceHandle theObject,
746  rti1516e::VariableLengthData const & theUserSuppliedTag,
747  rti1516e::OrderType sentOrder,
748  rti1516e::SupplementalRemoveInfo theRemoveInfo );
749  DtCbRemoveObjectInstance(
750  rti1516e::ObjectInstanceHandle theObject,
751  rti1516e::VariableLengthData const & theUserSuppliedTag,
752  rti1516e::OrderType sentOrder,
753  DtRtiApiUniquePtrTime theTime,
754  rti1516e::OrderType receivedOrder,
755  rti1516e::SupplementalRemoveInfo theRemoveInfo );
756  DtCbRemoveObjectInstance(
757  rti1516e::ObjectInstanceHandle theObject,
758  rti1516e::VariableLengthData const & theUserSuppliedTag,
759  rti1516e::OrderType sentOrder,
760  DtRtiApiUniquePtrTime theTime,
761  rti1516e::OrderType receivedOrder,
762  rti1516e::MessageRetractionHandle theRetractHandle,
763  rti1516e::SupplementalRemoveInfo theRemoveInfo);
764 
766  virtual ~DtCbRemoveObjectInstance();
767 private:
769  DtCbRemoveObjectInstance(DtCbRemoveObjectInstance const& orig);
770  DtCbRemoveObjectInstance& operator = (DtCbRemoveObjectInstance const& orig);
771 public:
773  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
774 protected:
775  rti1516e::ObjectInstanceHandle myObjectInstanceHandle;
776  rti1516e::VariableLengthData myTag;
777  rti1516e::OrderType mySentOrder;
778  DtRtiApiUniquePtrTime myTime;
779  rti1516e::OrderType myReceivedOrder;
780  rti1516e::MessageRetractionHandle myRetractHandle;
781  rti1516e::SupplementalRemoveInfo myRemoveInfo;
782 };
783 
784 
786 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_attributesInScope> DtCbAttributesInScope;
787 
789 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_attributesOutOfScope> DtCbAttributesOutOfScope;
790 
792 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_provideAttributeValueUpdate> DtCbProvideAttributeValueUpdate;
793 
795 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOnForObjectInstance> DtCbTurnUpdatesOnForObjectInstance;
796 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOnForObjectInstance_u> DtCbTurnUpdatesOnForObjectInstance_u;
797 
799 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOffForObjectInstance> DtCbTurnUpdatesOffForObjectInstance;
800 
802 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_confirmAttributeTransportationTypeChange> DtCbConfirmAttributeTransportationTypeChange;
803 
805 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_reportAttributeTransportationType> DtCbReportAttributeTransportationType;
806 
808 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_confirmInteractionTransportationTypeChange> DtCbConfirmInteractionTransportationTypeChange;
809 
811 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_reportInteractionTransportationType> DtCbReportInteractionTransportationType;
812 
817 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestAttributeOwnershipAssumption> DtCbRequestAttributeOwnershipAssumption;
818 
820 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestDivestitureConfirmation> DtCbRequestDivestitureConfirmation;
821 
823 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_attributeOwnershipAcquisitionNotification> DtCbAttributeOwnershipAcquisitionNotification;
824 
826 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_attributeOwnershipUnavailable> DtCbAttributeOwnershipUnavailable;
827 
829 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestAttributeOwnershipRelease> DtCbRequestAttributeOwnershipRelease;
830 
832 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_confirmAttributeOwnershipAcquisitionCancellation> DtCbConfirmAttributeOwnershipAcquisitionCancellation;
833 
835 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_informAttributeOwnership> DtCbInformAttributeOwnership;
836 
837 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_attributeIsNotOwned> DtCbAttributeIsNotOwned;
838 
839 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_attributeIsOwnedByRTI> DtCbAttributeIsOwnedByRTI;
840 
845 typedef DtCallbackWithTime<DtFedAmbCall_timeRegulationEnabled> DtCbTimeRegulationEnabled;
846 
848 typedef DtCallbackWithTime<DtFedAmbCall_timeConstrainedEnabled> DtCbTimeConstrainedEnabled;
849 
851 typedef DtCallbackWithTime<DtFedAmbCall_timeAdvanceGrant> DtCbTimeAdvanceGrant;
852 
855 class DtCbRequestRetraction: public DtFedAmbCallback
856 {
857 public:
859  DtCbRequestRetraction(rti1516e::MessageRetractionHandle handle);
861  virtual ~DtCbRequestRetraction();
862 private:
864  DtCbRequestRetraction(DtCbRequestRetraction const& orig);
865  DtCbRequestRetraction& operator = (DtCbRequestRetraction const& orig);
866 public:
868  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
869 protected:
870  rti1516e::MessageRetractionHandle myRetractHandle;
871 };
872 
873 
875 DT_DLL_LRC const char* callbackKindToString(DtFedAmbCallKind kind);
876 
877 #define fedAmbCallback1516e_inl_
878 #include "fedAmbCallback1516e.inl"
879 #undef fedAmbCallback1516e_inl_
880 
881 #endif
882 #endif
std::vector< FederateHandleSaveStatusPair > FederateHandleSaveStatusPairVector
Definition: Typedefs.h:57
OrderType
Definition: datatypes.pb.h:472
TransportationType
Definition: rtiAmbassadorFedProBase.h:43
RestoreFailureReason
Definition: datatypes.pb.h:388
This file contains the standard RTI types that are defined in namespace rti1516.
std::map< ParameterHandle, VariableLengthData > ParameterHandleValueMap
Definition: Typedefs.h:41
SaveFailureReason
Definition: datatypes.pb.h:359
std::map< AttributeHandle, VariableLengthData > AttributeHandleValueMap
Definition: Typedefs.h:36
DtRtiApiUniquePtr< DtRtiApiTime > DtRtiApiUniquePtrTime
Definition: rtiApiTypes.h:96
std::set< AttributeHandle > AttributeHandleSet
Definition: Typedefs.h:27
An abstract base class which must be implemented, and used by a federate.
std::set< FederateHandle > FederateHandleSet
Definition: Typedefs.h:29
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
his file contains the rti1516_2025::FederateAmbassador class.
SynchronizationPointFailureReason
Definition: datatypes.pb.h:334

Document ID: Generated on Sun Jul 20 16:15:30 EDT 2025 from SVN revision 277985
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)