MAK RTIspy API Documentation for HLA Evolved
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 using namespace rti1516e;
22 
24 DT_DLL_LRC enum DtFedAmbCallKind
25 {
29  DtFedAmbCall_connectionLost,
30  DtFedAmbCall_reportFederationExecutions,
32  DtFedAmbCall_synchronizationPointRegistrationSucceeded,
33  DtFedAmbCall_synchronizationPointRegistrationFailed,
35  DtFedAmbCall_announceSynchronizationPoint,
37  DtFedAmbCall_federationSynchronized,
39  DtFedAmbCall_initiateFederateSave,
40  DtFedAmbCall_initiateFederateSaveWithTime,
42  DtFedAmbCall_federationSaved,
43  DtFedAmbCall_federationNotSaved,
45  DtFedAmbCall_federationSaveStatusResponse,
47  DtFedAmbCall_requestFederationRestoreSucceeded,
48  DtFedAmbCall_requestFederationRestoreFailed,
50  DtFedAmbCall_federationRestoreBegun,
52  DtFedAmbCall_initiateFederateRestore,
54  DtFedAmbCall_federationRestored,
55  DtFedAmbCall_federationNotRestored,
57  DtFedAmbCall_federationRestoreStatusResponse,
62  DtFedAmbCall_startRegistrationForObjectClass,
64  DtFedAmbCall_stopRegistrationForObjectClass,
66  DtFedAmbCall_turnInteractionsOn,
68  DtFedAmbCall_turnInteractionsOff,
73  DtFedAmbCall_objectInstanceNameReservationSucceeded,
74  DtFedAmbCall_objectInstanceNameReservationFailed,
76  DtFedAmbCall_multipleObjectInstanceNameReservationSucceeded,
77  DtFedAmbCall_multipleObjectInstanceNameReservationFailed,
79  DtFedAmbCall_discoverObjectInstance,
80  DtFedAmbCall_discoverObjectInstance_h,
82  DtFedAmbCall_reflectAttributeValues_hvuots,
83  DtFedAmbCall_reflectAttributeValues_hvuotlos,
84  DtFedAmbCall_reflectAttributeValues_hvuotloms,
86  DtFedAmbCall_receiveInteraction_hvuos,
87  DtFedAmbCall_receiveInteraction_hvuolos,
88  DtFedAmbCall_receiveInteraction_hvuoloms,
90  DtFedAmbCall_removeObjectInstance_huo,
91  DtFedAmbCall_removeObjectInstance_huomo,
92  DtFedAmbCall_removeObjectInstance_huomoc,
94  DtFedAmbCall_attributesInScope,
96  DtFedAmbCall_attributesOutOfScope,
98  DtFedAmbCall_provideAttributeValueUpdate,
100  DtFedAmbCall_turnUpdatesOnForObjectInstance,
101  DtFedAmbCall_turnUpdatesOnForObjectInstance_u,
103  DtFedAmbCall_turnUpdatesOffForObjectInstance,
105  DtFedAmbCall_confirmAttributeTransportationTypeChange,
107  DtFedAmbCall_reportAttributeTransportationType,
109  DtFedAmbCall_confirmInteractionTransportationTypeChange,
111  DtFedAmbCall_reportInteractionTransportationType,
116  DtFedAmbCall_requestAttributeOwnershipAssumption,
118  DtFedAmbCall_requestDivestitureConfirmation,
120  DtFedAmbCall_attributeOwnershipAcquisitionNotification,
122  DtFedAmbCall_attributeOwnershipUnavailable,
124  DtFedAmbCall_requestAttributeOwnershipRelease,
126  DtFedAmbCall_confirmAttributeOwnershipAcquisitionCancellation,
128  DtFedAmbCall_informAttributeOwnership,
129  DtFedAmbCall_attributeIsNotOwned,
130  DtFedAmbCall_attributeIsOwnedByRTI,
135  DtFedAmbCall_timeRegulationEnabled,
137  DtFedAmbCall_timeConstrainedEnabled,
139  DtFedAmbCall_timeAdvanceGrant,
141  DtFedAmbCall_requestRetraction,
143  DtFedAmbCall_invalid
144 };
145 
149 class DT_DLL_LRC DtFedAmbCallback
150 {
151 public:
153  DtFedAmbCallback(DtFedAmbCallKind kind);
155  virtual ~DtFedAmbCallback();
156 private:
158  DtFedAmbCallback(DtFedAmbCallback const& orig);
159  DtFedAmbCallback& operator = (DtFedAmbCallback const& orig);
160 public:
162  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const = 0;
163 
165  virtual DtFedAmbCallKind callbackKind() const;
166 
167 protected:
168  DtFedAmbCallKind myCallbackKind;
169 };
170 
171 template<DtFedAmbCallKind callbackKindValue>
172 class DtFedAmbCallbackVoid : public DtFedAmbCallback
173 {
174 public:
176  DtFedAmbCallbackVoid();
178  virtual ~DtFedAmbCallbackVoid();
179 private:
181  DtFedAmbCallbackVoid(DtFedAmbCallbackVoid const& orig);
182  DtFedAmbCallbackVoid& operator = (DtFedAmbCallbackVoid const& orig);
183 
184 public:
186  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
187 };
188 
189 template<DtFedAmbCallKind callbackKindValue>
190 class DtCallbackWithTime : public DtFedAmbCallback
191 {
192 public:
194  DtCallbackWithTime(
195  std::auto_ptr<rti1516e::LogicalTime> time);
197  virtual ~DtCallbackWithTime();
198 private:
200  DtCallbackWithTime(DtCallbackWithTime const& orig);
201  DtCallbackWithTime& operator = (DtCallbackWithTime const& orig);
202 public:
204  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
205 protected:
206  std::auto_ptr<rti1516e::LogicalTime> myTime;
207 };
208 
209 template<DtFedAmbCallKind callbackKindValue>
210 class DtCallbackWithWString : public DtFedAmbCallback
211 {
212 public:
214  DtCallbackWithWString(std::wstring const& value);
215  DtCallbackWithWString(std::wstring const& value,
216  rti1516e::FederateHandleSet const & failedToSyncSet );
217 
219  virtual ~DtCallbackWithWString();
220 private:
222  DtCallbackWithWString(DtCallbackWithWString const& orig);
223  DtCallbackWithWString& operator = (DtCallbackWithWString const& orig);
224 public:
226  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
227 protected:
228  std::wstring myString;
229  rti1516e::FederateHandleSet myFailedToSyncSet;
230 };
231 
232 template<DtFedAmbCallKind callbackKindValue>
233 class DtCallbackWithWStringArray : public DtFedAmbCallback
234 {
235 public:
237  DtCallbackWithWStringArray( std::set<std::wstring> const & value );
238 
240  virtual ~DtCallbackWithWStringArray();
241 private:
243  DtCallbackWithWStringArray(DtCallbackWithWStringArray const& orig);
244  DtCallbackWithWStringArray& operator = (DtCallbackWithWStringArray const& orig);
245 
246 public:
248  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
249 protected:
250  std::set<std::wstring> myStrings;
251 };
252 
253 template<DtFedAmbCallKind callbackKindValue>
254 class DtCallbackWithObjectClass : public DtFedAmbCallback
255 {
256 public:
258  DtCallbackWithObjectClass(rti1516e::ObjectClassHandle theClass);
260  virtual ~DtCallbackWithObjectClass();
261 private:
263  DtCallbackWithObjectClass(DtCallbackWithObjectClass const& orig);
264  DtCallbackWithObjectClass& operator = (DtCallbackWithObjectClass const& orig);
265 public:
267  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
268 protected:
269  rti1516e::ObjectClassHandle myObjectClass;
270 };
271 
272 template<DtFedAmbCallKind callbackKindValue>
273 class DtCallbackWithInteractionClass : public DtFedAmbCallback
274 {
275 public:
277  DtCallbackWithInteractionClass(
280  virtual ~DtCallbackWithInteractionClass();
281 private:
283  DtCallbackWithInteractionClass(DtCallbackWithInteractionClass const& orig);
284  DtCallbackWithInteractionClass& operator = (DtCallbackWithInteractionClass const& orig);
285 public:
287  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
288 protected:
289  rti1516e::InteractionClassHandle myInteractionClass;
290 };
291 
292 template<DtFedAmbCallKind callbackKindValue>
293 class DtCallbackWithObjectAttributesOptTag : public DtFedAmbCallback
294 {
295 public:
297  DtCallbackWithObjectAttributesOptTag(
298  rti1516e::ObjectInstanceHandle theObject,
299  rti1516e::AttributeHandleSet const & theAttributes);
300  DtCallbackWithObjectAttributesOptTag(
301  rti1516e::ObjectInstanceHandle theObject,
302  rti1516e::AttributeHandleSet const & theAttributes,
303  rti1516e::VariableLengthData const & theUserSuppliedTag);
304  DtCallbackWithObjectAttributesOptTag(
305  rti1516e::ObjectInstanceHandle theObject,
306  rti1516e::AttributeHandleSet const & theAttributes,
307  rti1516e::TransportationType theTransportation );
308  DtCallbackWithObjectAttributesOptTag(
309  rti1516e::ObjectInstanceHandle theObject,
310  rti1516e::AttributeHandle theAttribute,
311  rti1516e::TransportationType theTransportation );
312  DtCallbackWithObjectAttributesOptTag(
313  rti1516e::InteractionClassHandle theInteraction,
314  rti1516e::TransportationType theTransportation );
315  DtCallbackWithObjectAttributesOptTag(
317  rti1516e::InteractionClassHandle theInteraction,
318  rti1516e::TransportationType theTransportation );
319  DtCallbackWithObjectAttributesOptTag(
320  rti1516e::ObjectInstanceHandle theObject,
321  rti1516e::AttributeHandleSet const & theAttributes,
322  std::wstring const & updateRateDesignator );
323 
325  virtual ~DtCallbackWithObjectAttributesOptTag();
326 private:
328  DtCallbackWithObjectAttributesOptTag(DtCallbackWithObjectAttributesOptTag const& orig);
329  DtCallbackWithObjectAttributesOptTag& operator = (DtCallbackWithObjectAttributesOptTag const& orig);
330 public:
332  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
333 protected:
334  rti1516e::ObjectInstanceHandle myObject;
335  rti1516e::AttributeHandleSet myAttributes;
336  rti1516e::VariableLengthData myUserSuppliedTag;
337  rti1516e::AttributeHandle myAttribute;
338  rti1516e::TransportationType myTransportationType;
339  rti1516e::InteractionClassHandle myInteraction;
340  rti1516e::FederateHandle myFederateHandle;
341  std::wstring myUpdateRateDesignator;
342 };
343 
344 template<DtFedAmbCallKind callbackKindValue>
345 class DtCallbackWithObjectAttributesOptFederate : public DtFedAmbCallback
346 {
347 public:
349  DtCallbackWithObjectAttributesOptFederate(
350  rti1516e::ObjectInstanceHandle theObject,
351  rti1516e::AttributeHandle theAttribute);
352  DtCallbackWithObjectAttributesOptFederate(
353  rti1516e::ObjectInstanceHandle theObject,
354  rti1516e::AttributeHandle theAttribute,
355  rti1516e::FederateHandle theFederate);
357  virtual ~DtCallbackWithObjectAttributesOptFederate();
358 private:
360  DtCallbackWithObjectAttributesOptFederate(DtCallbackWithObjectAttributesOptFederate const& orig);
361  DtCallbackWithObjectAttributesOptFederate& operator = (DtCallbackWithObjectAttributesOptFederate const& orig);
362 public:
364  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
365 protected:
366  rti1516e::ObjectInstanceHandle myObject;
367  rti1516e::AttributeHandle myAttribute;
368  rti1516e::FederateHandle myFederate;
369 };
370 
375 typedef DtCallbackWithWString<DtFedAmbCall_synchronizationPointRegistrationSucceeded> DtCbSynchronizationPointRegistrationSucceeded;
376 
377 class DtCbSynchronizationPointRegistrationFailed : public DtFedAmbCallback
378 {
379 public:
381  DtCbSynchronizationPointRegistrationFailed(std::wstring const& stringValue,
384  virtual ~DtCbSynchronizationPointRegistrationFailed();
385 private:
387  DtCbSynchronizationPointRegistrationFailed(DtCbSynchronizationPointRegistrationFailed const& orig);
388  DtCbSynchronizationPointRegistrationFailed& operator = (DtCbSynchronizationPointRegistrationFailed const& orig);
389 public:
391  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
392 protected:
393  std::wstring myString;
395 };
396 
399 class DtCbAnnounceSynchronizationPoint : public DtFedAmbCallback
400 {
401 public:
403  DtCbAnnounceSynchronizationPoint(std::wstring const& stringValue,
404  rti1516e::VariableLengthData const & tag);
406  virtual ~DtCbAnnounceSynchronizationPoint();
407 private:
409  DtCbAnnounceSynchronizationPoint(DtCbAnnounceSynchronizationPoint const& orig);
410  DtCbAnnounceSynchronizationPoint& operator = (DtCbAnnounceSynchronizationPoint const& orig);
411 public:
413  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
414 protected:
415  std::wstring myString;
417 };
418 
420 typedef DtCallbackWithWString<DtFedAmbCall_federationSynchronized> DtCbFederationSynchronized;
421 
423 typedef DtCallbackWithWString<DtFedAmbCall_initiateFederateSave> DtCbInitiateFederateSave;
424 
425 class DtCbInitiateFederateSaveWithTime: public DtFedAmbCallback
426 {
427 public:
429  DtCbInitiateFederateSaveWithTime(std::wstring const& stringValue,
430  std::auto_ptr<rti1516e::LogicalTime> time);
432  virtual ~DtCbInitiateFederateSaveWithTime();
433 private:
435  DtCbInitiateFederateSaveWithTime(DtCbInitiateFederateSaveWithTime const& orig);
436  DtCbInitiateFederateSaveWithTime& operator = (DtCbInitiateFederateSaveWithTime const& orig);
437 public:
439  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
440 protected:
441  std::wstring myString;
442  std::auto_ptr<rti1516e::LogicalTime> myTime;
443 };
444 
446 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationSaved> DtCbFederationSaved;
447 
448 class DtCbFederationNotSaved : public DtFedAmbCallback
449 {
450 public:
452  DtCbFederationNotSaved(rti1516e::SaveFailureReason theSaveFailureReason);
454  virtual ~DtCbFederationNotSaved();
455 private:
457  DtCbFederationNotSaved(DtCbFederationNotSaved const& orig);
458  DtCbFederationNotSaved& operator = (DtCbFederationNotSaved const& orig);
459 public:
461  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
462 protected:
463  rti1516e::SaveFailureReason mySaveFailureReason;
464 };
465 
468 class DtCbFederationSaveStatusResponse : public DtFedAmbCallback
469 {
470 public:
472  DtCbFederationSaveStatusResponse(
473  rti1516e::FederateHandleSaveStatusPairVector const & theFederateStatusVector);
475  virtual ~DtCbFederationSaveStatusResponse();
476 private:
478  DtCbFederationSaveStatusResponse(DtCbFederationSaveStatusResponse const& orig);
479  DtCbFederationSaveStatusResponse& operator = (DtCbFederationSaveStatusResponse const& orig);
480 public:
482  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
483 protected:
484  rti1516e::FederateHandleSaveStatusPairVector myFederateStatusVector;
485 };
486 
488 typedef DtCallbackWithWString<DtFedAmbCall_requestFederationRestoreSucceeded> DtCbRequestFederationRestoreSucceeded;
489 
490 typedef DtCallbackWithWString<DtFedAmbCall_requestFederationRestoreFailed> DtCbRequestFederationRestoreFailed;
491 
493 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationRestoreBegun> DtCbFederationRestoreBegun;
494 
497 class DtCbInitiateFederateRestore : public DtFedAmbCallback
498 {
499 public:
501  DtCbInitiateFederateRestore(std::wstring const& stringValue,
502  rti1516e::FederateHandle handle);
504  virtual ~DtCbInitiateFederateRestore();
505 private:
507  DtCbInitiateFederateRestore(DtCbInitiateFederateRestore const& orig);
508  DtCbInitiateFederateRestore& operator = (DtCbInitiateFederateRestore const& orig);
509 public:
511  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
512 protected:
513  rti1516e::FederateHandle myHandle;
514  std::wstring myString;
515 };
516 
518 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationRestored> DtCbFederationRestored;
519 
520 class DtCbFederationNotRestored : public DtFedAmbCallback
521 {
522 public:
524  DtCbFederationNotRestored(rti1516e::RestoreFailureReason theRestoreFailureReason);
526  virtual ~DtCbFederationNotRestored();
527 private:
529  DtCbFederationNotRestored(DtCbFederationNotRestored const& orig);
530  DtCbFederationNotRestored& operator = (DtCbFederationNotRestored const& orig);
531 public:
533  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
534 protected:
535  rti1516e::RestoreFailureReason myRestoreFailureReason;
536 };
537 
540 class DtCbFederationRestoreStatusResponse : public DtFedAmbCallback
541 {
542 public:
544  DtCbFederationRestoreStatusResponse(
545  rti1516e::FederateRestoreStatusVector const & theFederateStatusVector);
547  virtual ~DtCbFederationRestoreStatusResponse();
548 private:
550  DtCbFederationRestoreStatusResponse(DtCbFederationRestoreStatusResponse const& orig);
551  DtCbFederationRestoreStatusResponse& operator = (DtCbFederationRestoreStatusResponse const& orig);
552 public:
554  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
555 protected:
556  rti1516e::FederateRestoreStatusVector myFederateStatusVector;
557 };
558 
559 
564 typedef DtCallbackWithObjectClass<DtFedAmbCall_startRegistrationForObjectClass> DtCbStartRegistrationForObjectClass;
565 
567 typedef DtCallbackWithObjectClass<DtFedAmbCall_stopRegistrationForObjectClass> DtCbStopRegistrationForObjectClass;
568 
570 typedef DtCallbackWithInteractionClass<DtFedAmbCall_turnInteractionsOn> DtCbTurnInteractionsOn;
571 
573 typedef DtCallbackWithInteractionClass<DtFedAmbCall_turnInteractionsOff> DtCbTurnInteractionsOff;
574 
579 typedef DtCallbackWithWString<DtFedAmbCall_objectInstanceNameReservationSucceeded> DtCbObjectInstanceNameReservationSucceeded;
580 typedef DtCallbackWithWString<DtFedAmbCall_objectInstanceNameReservationFailed> DtCbObjectInstanceNameReservationFailed;
581 
582 typedef DtCallbackWithWStringArray<DtFedAmbCall_multipleObjectInstanceNameReservationSucceeded> DtCbMultipleObjectInstanceNameReservationSucceeded;
583 typedef DtCallbackWithWStringArray<DtFedAmbCall_multipleObjectInstanceNameReservationFailed> DtCbMultipleObjectInstanceNameReservationFailed;
584 
587 class DtCbDiscoverObjectInstance: public DtFedAmbCallback
588 {
589 public:
591  DtCbDiscoverObjectInstance(rti1516e::ObjectInstanceHandle theObject,
592  rti1516e::ObjectClassHandle theObjectClass,
593  std::wstring const & theObjectInstanceName);
594  DtCbDiscoverObjectInstance(rti1516e::ObjectInstanceHandle theObject,
595  rti1516e::ObjectClassHandle theObjectClass,
596  std::wstring const & theObjectInstanceName,
597  rti1516e::FederateHandle producingFederate );
599  virtual ~DtCbDiscoverObjectInstance();
600 private:
602  DtCbDiscoverObjectInstance(DtCbDiscoverObjectInstance const& orig);
603  DtCbDiscoverObjectInstance& operator = (DtCbDiscoverObjectInstance const& orig);
604 public:
606  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
607 protected:
608  rti1516e::ObjectInstanceHandle myObjectInstanceHandle;
609  rti1516e::ObjectClassHandle myObjectClassHandle;
610  std::wstring myString;
611  rti1516e::FederateHandle myProducingFederate;
612 };
613 
614 
617 class DtCbReflectAttributeValues: public DtFedAmbCallback
618 {
619 public:
620  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
621  rti1516e::AttributeHandleValueMap const & theAttributeValues,
622  rti1516e::VariableLengthData const & theUserSuppliedTag,
623  rti1516e::OrderType sentOrder,
625  rti1516e::SupplementalReflectInfo theReflectInfo);
626 
627  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
628  rti1516e::AttributeHandleValueMap const & theAttributeValues,
629  rti1516e::VariableLengthData const & theUserSuppliedTag,
630  rti1516e::OrderType sentOrder,
632  std::auto_ptr<rti1516e::LogicalTime> theTime,
633  rti1516e::OrderType receivedOrder,
635 
636  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
637  rti1516e::AttributeHandleValueMap const & theAttributeValues,
638  rti1516e::VariableLengthData const & theUserSuppliedTag,
639  rti1516e::OrderType sentOrder,
641  std::auto_ptr<rti1516e::LogicalTime> theTime,
642  rti1516e::OrderType receivedOrder,
643  rti1516e::MessageRetractionHandle theHandle,
645 
647  virtual ~DtCbReflectAttributeValues();
648 private:
650  DtCbReflectAttributeValues(DtCbReflectAttributeValues const& orig);
651  DtCbReflectAttributeValues& operator = (DtCbReflectAttributeValues const& orig);
652 public:
654  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
655 
656 protected:
657  rti1516e::ObjectInstanceHandle myObject;
658  rti1516e::AttributeHandleValueMap myAttributeValues;
659  rti1516e::VariableLengthData myUserSuppliedTag;
660  rti1516e::OrderType mySentOrder;
661  rti1516e::TransportationType myTransportationType;
662  std::auto_ptr<rti1516e::LogicalTime> myTime;
663  rti1516e::OrderType myReceivedOrder;
664  rti1516e::MessageRetractionHandle myRetractHandle;
665  rti1516e::SupplementalReflectInfo myReflectInfo;
666 };
667 
670 class DtCbReceiveInteraction: public DtFedAmbCallback
671 {
672 public:
673  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
674  rti1516e::ParameterHandleValueMap const & theParameterValues,
675  rti1516e::VariableLengthData const & theUserSuppliedTag,
676  rti1516e::OrderType sentOrder,
678  rti1516e::SupplementalReceiveInfo theReceiveInfo );
679 
680  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
681  rti1516e::ParameterHandleValueMap const & theParameterValues,
682  rti1516e::VariableLengthData const & theUserSuppliedTag,
683  rti1516e::OrderType sentOrder,
685  std::auto_ptr<rti1516e::LogicalTime> theTime,
686  rti1516e::OrderType receivedOrder,
687  rti1516e::SupplementalReceiveInfo theReceiveInfo );
688 
689  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
690  rti1516e::ParameterHandleValueMap const & theParameterValues,
691  rti1516e::VariableLengthData const & theUserSuppliedTag,
692  rti1516e::OrderType sentOrder,
694  std::auto_ptr<rti1516e::LogicalTime> theTime,
695  rti1516e::OrderType receivedOrder,
696  rti1516e::MessageRetractionHandle theHandle,
697  rti1516e::SupplementalReceiveInfo theReceiveInfo );
698 
700  virtual ~DtCbReceiveInteraction();
701 private:
703  DtCbReceiveInteraction(DtCbReceiveInteraction const& orig);
704  DtCbReceiveInteraction& operator = (DtCbReceiveInteraction const& orig);
705 public:
707  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
708 
709 protected:
710  rti1516e::InteractionClassHandle myInteractionClass;
711  rti1516e::ParameterHandleValueMap myParameterValues;
712  rti1516e::VariableLengthData myUserSuppliedTag;
713  rti1516e::OrderType mySentOrder;
714  rti1516e::TransportationType myTransportationType;
715  std::auto_ptr<rti1516e::LogicalTime> myTime;
716  rti1516e::OrderType myReceivedOrder;
717  rti1516e::MessageRetractionHandle myRetractHandle;
718  rti1516e::SupplementalReceiveInfo myReceiveInfo;
719 };
720 
723 class DtCbRemoveObjectInstance: public DtFedAmbCallback
724 {
725 public:
727  DtCbRemoveObjectInstance(
728  rti1516e::ObjectInstanceHandle theObject,
729  rti1516e::VariableLengthData const & theUserSuppliedTag,
730  rti1516e::OrderType sentOrder,
731  rti1516e::SupplementalRemoveInfo theRemoveInfo );
732  DtCbRemoveObjectInstance(
733  rti1516e::ObjectInstanceHandle theObject,
734  rti1516e::VariableLengthData const & theUserSuppliedTag,
735  rti1516e::OrderType sentOrder,
736  std::auto_ptr<rti1516e::LogicalTime> theTime,
737  rti1516e::OrderType receivedOrder,
738  rti1516e::SupplementalRemoveInfo theRemoveInfo );
739  DtCbRemoveObjectInstance(
740  rti1516e::ObjectInstanceHandle theObject,
741  rti1516e::VariableLengthData const & theUserSuppliedTag,
742  rti1516e::OrderType sentOrder,
743  std::auto_ptr<rti1516e::LogicalTime> theTime,
744  rti1516e::OrderType receivedOrder,
745  rti1516e::MessageRetractionHandle theRetractHandle,
746  rti1516e::SupplementalRemoveInfo theRemoveInfo);
747 
749  virtual ~DtCbRemoveObjectInstance();
750 private:
752  DtCbRemoveObjectInstance(DtCbRemoveObjectInstance const& orig);
753  DtCbRemoveObjectInstance& operator = (DtCbRemoveObjectInstance const& orig);
754 public:
756  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
757 protected:
758  rti1516e::ObjectInstanceHandle myObjectInstanceHandle;
760  rti1516e::OrderType mySentOrder;
761  std::auto_ptr<rti1516e::LogicalTime> myTime;
762  rti1516e::OrderType myReceivedOrder;
763  rti1516e::MessageRetractionHandle myRetractHandle;
765 };
766 
767 
769 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_attributesInScope> DtCbAttributesInScope;
770 
772 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_attributesOutOfScope> DtCbAttributesOutOfScope;
773 
775 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_provideAttributeValueUpdate> DtCbProvideAttributeValueUpdate;
776 
778 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOnForObjectInstance> DtCbTurnUpdatesOnForObjectInstance;
779 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOnForObjectInstance_u> DtCbTurnUpdatesOnForObjectInstance_u;
780 
782 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOffForObjectInstance> DtCbTurnUpdatesOffForObjectInstance;
783 
785 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_confirmAttributeTransportationTypeChange> DtCbConfirmAttributeTransportationTypeChange;
786 
788 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_reportAttributeTransportationType> DtCbReportAttributeTransportationType;
789 
791 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_confirmInteractionTransportationTypeChange> DtCbConfirmInteractionTransportationTypeChange;
792 
794 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_reportInteractionTransportationType> DtCbReportInteractionTransportationType;
795 
800 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestAttributeOwnershipAssumption> DtCbRequestAttributeOwnershipAssumption;
801 
803 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestDivestitureConfirmation> DtCbRequestDivestitureConfirmation;
804 
806 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_attributeOwnershipAcquisitionNotification> DtCbAttributeOwnershipAcquisitionNotification;
807 
809 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_attributeOwnershipUnavailable> DtCbAttributeOwnershipUnavailable;
810 
812 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestAttributeOwnershipRelease> DtCbRequestAttributeOwnershipRelease;
813 
815 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_confirmAttributeOwnershipAcquisitionCancellation> DtCbConfirmAttributeOwnershipAcquisitionCancellation;
816 
818 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_informAttributeOwnership> DtCbInformAttributeOwnership;
819 
820 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_attributeIsNotOwned> DtCbAttributeIsNotOwned;
821 
822 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_attributeIsOwnedByRTI> DtCbAttributeIsOwnedByRTI;
823 
828 typedef DtCallbackWithTime<DtFedAmbCall_timeRegulationEnabled> DtCbTimeRegulationEnabled;
829 
831 typedef DtCallbackWithTime<DtFedAmbCall_timeConstrainedEnabled> DtCbTimeConstrainedEnabled;
832 
834 typedef DtCallbackWithTime<DtFedAmbCall_timeAdvanceGrant> DtCbTimeAdvanceGrant;
835 
838 class DtCbRequestRetraction: public DtFedAmbCallback
839 {
840 public:
842  DtCbRequestRetraction(rti1516e::MessageRetractionHandle handle);
844  virtual ~DtCbRequestRetraction();
845 private:
847  DtCbRequestRetraction(DtCbRequestRetraction const& orig);
848  DtCbRequestRetraction& operator = (DtCbRequestRetraction const& orig);
849 public:
851  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
852 protected:
853  rti1516e::MessageRetractionHandle myRetractHandle;
854 };
855 
856 
858 DT_DLL_LRC const char* callbackKindToString(DtFedAmbCallKind kind);
859 
860 #define fedAmbCallback1516e_inl_
861 #include "fedAmbCallback1516e.inl"
862 #undef fedAmbCallback1516e_inl_
863 
864 #endif
865 #endif

Document ID: Generated on Tue May 7 16:26:47 EDT 2013 from SVN revision 126903
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)