MAK RTIspy API Documentation for HLA 1516
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 class DtCbReportFederationExecutions: public DtFedAmbCallback
254 {
255 public:
257  DtCbReportFederationExecutions(rti1516e::FederationExecutionInformationVector theFederationExecutionInformation);
259  virtual ~DtCbReportFederationExecutions();
260 private:
262  DtCbReportFederationExecutions(DtCbReportFederationExecutions const& orig);
263  DtCbReportFederationExecutions& operator = (DtCbReportFederationExecutions const& orig);
264 public:
266  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
267 protected:
268  rti1516e::FederationExecutionInformationVector myFederationExecutionInformation;
269 };
270 
271 template<DtFedAmbCallKind callbackKindValue>
272 class DtCallbackWithObjectClass : public DtFedAmbCallback
273 {
274 public:
276  DtCallbackWithObjectClass(rti1516e::ObjectClassHandle theClass);
278  virtual ~DtCallbackWithObjectClass();
279 private:
281  DtCallbackWithObjectClass(DtCallbackWithObjectClass const& orig);
282  DtCallbackWithObjectClass& operator = (DtCallbackWithObjectClass const& orig);
283 public:
285  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
286 protected:
287  rti1516e::ObjectClassHandle myObjectClass;
288 };
289 
290 template<DtFedAmbCallKind callbackKindValue>
291 class DtCallbackWithInteractionClass : public DtFedAmbCallback
292 {
293 public:
295  DtCallbackWithInteractionClass(
298  virtual ~DtCallbackWithInteractionClass();
299 private:
301  DtCallbackWithInteractionClass(DtCallbackWithInteractionClass const& orig);
302  DtCallbackWithInteractionClass& operator = (DtCallbackWithInteractionClass const& orig);
303 public:
305  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
306 protected:
307  rti1516e::InteractionClassHandle myInteractionClass;
308 };
309 
310 template<DtFedAmbCallKind callbackKindValue>
311 class DtCallbackWithObjectAttributesOptTag : public DtFedAmbCallback
312 {
313 public:
315  DtCallbackWithObjectAttributesOptTag(
316  rti1516e::ObjectInstanceHandle theObject,
317  rti1516e::AttributeHandleSet const & theAttributes);
318  DtCallbackWithObjectAttributesOptTag(
319  rti1516e::ObjectInstanceHandle theObject,
320  rti1516e::AttributeHandleSet const & theAttributes,
321  rti1516e::VariableLengthData const & theUserSuppliedTag);
322  DtCallbackWithObjectAttributesOptTag(
323  rti1516e::ObjectInstanceHandle theObject,
324  rti1516e::AttributeHandleSet const & theAttributes,
325  rti1516e::TransportationType theTransportation );
326  DtCallbackWithObjectAttributesOptTag(
327  rti1516e::ObjectInstanceHandle theObject,
328  rti1516e::AttributeHandle theAttribute,
329  rti1516e::TransportationType theTransportation );
330  DtCallbackWithObjectAttributesOptTag(
331  rti1516e::InteractionClassHandle theInteraction,
332  rti1516e::TransportationType theTransportation );
333  DtCallbackWithObjectAttributesOptTag(
335  rti1516e::InteractionClassHandle theInteraction,
336  rti1516e::TransportationType theTransportation );
337  DtCallbackWithObjectAttributesOptTag(
338  rti1516e::ObjectInstanceHandle theObject,
339  rti1516e::AttributeHandleSet const & theAttributes,
340  std::wstring const & updateRateDesignator );
341 
343  virtual ~DtCallbackWithObjectAttributesOptTag();
344 private:
346  DtCallbackWithObjectAttributesOptTag(DtCallbackWithObjectAttributesOptTag const& orig);
347  DtCallbackWithObjectAttributesOptTag& operator = (DtCallbackWithObjectAttributesOptTag const& orig);
348 public:
350  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
351 protected:
352  rti1516e::ObjectInstanceHandle myObject;
353  rti1516e::AttributeHandleSet myAttributes;
354  rti1516e::VariableLengthData myUserSuppliedTag;
355  rti1516e::AttributeHandle myAttribute;
356  rti1516e::TransportationType myTransportationType;
357  rti1516e::InteractionClassHandle myInteraction;
358  rti1516e::FederateHandle myFederateHandle;
359  std::wstring myUpdateRateDesignator;
360 };
361 
362 template<DtFedAmbCallKind callbackKindValue>
363 class DtCallbackWithObjectAttributesOptFederate : public DtFedAmbCallback
364 {
365 public:
367  DtCallbackWithObjectAttributesOptFederate(
368  rti1516e::ObjectInstanceHandle theObject,
369  rti1516e::AttributeHandle theAttribute);
370  DtCallbackWithObjectAttributesOptFederate(
371  rti1516e::ObjectInstanceHandle theObject,
372  rti1516e::AttributeHandle theAttribute,
373  rti1516e::FederateHandle theFederate);
375  virtual ~DtCallbackWithObjectAttributesOptFederate();
376 private:
378  DtCallbackWithObjectAttributesOptFederate(DtCallbackWithObjectAttributesOptFederate const& orig);
379  DtCallbackWithObjectAttributesOptFederate& operator = (DtCallbackWithObjectAttributesOptFederate const& orig);
380 public:
382  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
383 protected:
384  rti1516e::ObjectInstanceHandle myObject;
385  rti1516e::AttributeHandle myAttribute;
386  rti1516e::FederateHandle myFederate;
387 };
388 
393 typedef DtCallbackWithWString<DtFedAmbCall_synchronizationPointRegistrationSucceeded> DtCbSynchronizationPointRegistrationSucceeded;
394 
395 class DtCbSynchronizationPointRegistrationFailed : public DtFedAmbCallback
396 {
397 public:
399  DtCbSynchronizationPointRegistrationFailed(std::wstring const& stringValue,
402  virtual ~DtCbSynchronizationPointRegistrationFailed();
403 private:
405  DtCbSynchronizationPointRegistrationFailed(DtCbSynchronizationPointRegistrationFailed const& orig);
406  DtCbSynchronizationPointRegistrationFailed& operator = (DtCbSynchronizationPointRegistrationFailed const& orig);
407 public:
409  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
410 protected:
411  std::wstring myString;
413 };
414 
417 class DtCbAnnounceSynchronizationPoint : public DtFedAmbCallback
418 {
419 public:
421  DtCbAnnounceSynchronizationPoint(std::wstring const& stringValue,
422  rti1516e::VariableLengthData const & tag);
424  virtual ~DtCbAnnounceSynchronizationPoint();
425 private:
427  DtCbAnnounceSynchronizationPoint(DtCbAnnounceSynchronizationPoint const& orig);
428  DtCbAnnounceSynchronizationPoint& operator = (DtCbAnnounceSynchronizationPoint const& orig);
429 public:
431  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
432 protected:
433  std::wstring myString;
435 };
436 
438 typedef DtCallbackWithWString<DtFedAmbCall_federationSynchronized> DtCbFederationSynchronized;
439 
441 typedef DtCallbackWithWString<DtFedAmbCall_initiateFederateSave> DtCbInitiateFederateSave;
442 
443 class DtCbInitiateFederateSaveWithTime: public DtFedAmbCallback
444 {
445 public:
447  DtCbInitiateFederateSaveWithTime(std::wstring const& stringValue,
448  std::auto_ptr<rti1516e::LogicalTime> time);
450  virtual ~DtCbInitiateFederateSaveWithTime();
451 private:
453  DtCbInitiateFederateSaveWithTime(DtCbInitiateFederateSaveWithTime const& orig);
454  DtCbInitiateFederateSaveWithTime& operator = (DtCbInitiateFederateSaveWithTime const& orig);
455 public:
457  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
458 protected:
459  std::wstring myString;
460  std::auto_ptr<rti1516e::LogicalTime> myTime;
461 };
462 
464 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationSaved> DtCbFederationSaved;
465 
466 class DtCbFederationNotSaved : public DtFedAmbCallback
467 {
468 public:
470  DtCbFederationNotSaved(rti1516e::SaveFailureReason theSaveFailureReason);
472  virtual ~DtCbFederationNotSaved();
473 private:
475  DtCbFederationNotSaved(DtCbFederationNotSaved const& orig);
476  DtCbFederationNotSaved& operator = (DtCbFederationNotSaved const& orig);
477 public:
479  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
480 protected:
481  rti1516e::SaveFailureReason mySaveFailureReason;
482 };
483 
486 class DtCbFederationSaveStatusResponse : public DtFedAmbCallback
487 {
488 public:
490  DtCbFederationSaveStatusResponse(
491  rti1516e::FederateHandleSaveStatusPairVector const & theFederateStatusVector);
493  virtual ~DtCbFederationSaveStatusResponse();
494 private:
496  DtCbFederationSaveStatusResponse(DtCbFederationSaveStatusResponse const& orig);
497  DtCbFederationSaveStatusResponse& operator = (DtCbFederationSaveStatusResponse const& orig);
498 public:
500  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
501 protected:
502  rti1516e::FederateHandleSaveStatusPairVector myFederateStatusVector;
503 };
504 
506 typedef DtCallbackWithWString<DtFedAmbCall_requestFederationRestoreSucceeded> DtCbRequestFederationRestoreSucceeded;
507 
508 typedef DtCallbackWithWString<DtFedAmbCall_requestFederationRestoreFailed> DtCbRequestFederationRestoreFailed;
509 
511 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationRestoreBegun> DtCbFederationRestoreBegun;
512 
515 class DtCbInitiateFederateRestore : public DtFedAmbCallback
516 {
517 public:
519  DtCbInitiateFederateRestore(std::wstring const& stringValue,
520  rti1516e::FederateHandle handle);
522  virtual ~DtCbInitiateFederateRestore();
523 private:
525  DtCbInitiateFederateRestore(DtCbInitiateFederateRestore const& orig);
526  DtCbInitiateFederateRestore& operator = (DtCbInitiateFederateRestore const& orig);
527 public:
529  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
530 protected:
531  rti1516e::FederateHandle myHandle;
532  std::wstring myString;
533 };
534 
536 typedef DtFedAmbCallbackVoid<DtFedAmbCall_federationRestored> DtCbFederationRestored;
537 
538 class DtCbFederationNotRestored : public DtFedAmbCallback
539 {
540 public:
542  DtCbFederationNotRestored(rti1516e::RestoreFailureReason theRestoreFailureReason);
544  virtual ~DtCbFederationNotRestored();
545 private:
547  DtCbFederationNotRestored(DtCbFederationNotRestored const& orig);
548  DtCbFederationNotRestored& operator = (DtCbFederationNotRestored const& orig);
549 public:
551  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
552 protected:
553  rti1516e::RestoreFailureReason myRestoreFailureReason;
554 };
555 
558 class DtCbFederationRestoreStatusResponse : public DtFedAmbCallback
559 {
560 public:
562  DtCbFederationRestoreStatusResponse(
563  rti1516e::FederateRestoreStatusVector const & theFederateStatusVector);
565  virtual ~DtCbFederationRestoreStatusResponse();
566 private:
568  DtCbFederationRestoreStatusResponse(DtCbFederationRestoreStatusResponse const& orig);
569  DtCbFederationRestoreStatusResponse& operator = (DtCbFederationRestoreStatusResponse const& orig);
570 public:
572  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
573 protected:
574  rti1516e::FederateRestoreStatusVector myFederateStatusVector;
575 };
576 
577 
582 typedef DtCallbackWithObjectClass<DtFedAmbCall_startRegistrationForObjectClass> DtCbStartRegistrationForObjectClass;
583 
585 typedef DtCallbackWithObjectClass<DtFedAmbCall_stopRegistrationForObjectClass> DtCbStopRegistrationForObjectClass;
586 
588 typedef DtCallbackWithInteractionClass<DtFedAmbCall_turnInteractionsOn> DtCbTurnInteractionsOn;
589 
591 typedef DtCallbackWithInteractionClass<DtFedAmbCall_turnInteractionsOff> DtCbTurnInteractionsOff;
592 
597 typedef DtCallbackWithWString<DtFedAmbCall_objectInstanceNameReservationSucceeded> DtCbObjectInstanceNameReservationSucceeded;
598 typedef DtCallbackWithWString<DtFedAmbCall_objectInstanceNameReservationFailed> DtCbObjectInstanceNameReservationFailed;
599 
600 typedef DtCallbackWithWStringArray<DtFedAmbCall_multipleObjectInstanceNameReservationSucceeded> DtCbMultipleObjectInstanceNameReservationSucceeded;
601 typedef DtCallbackWithWStringArray<DtFedAmbCall_multipleObjectInstanceNameReservationFailed> DtCbMultipleObjectInstanceNameReservationFailed;
602 
605 class DtCbDiscoverObjectInstance: public DtFedAmbCallback
606 {
607 public:
609  DtCbDiscoverObjectInstance(rti1516e::ObjectInstanceHandle theObject,
610  rti1516e::ObjectClassHandle theObjectClass,
611  std::wstring const & theObjectInstanceName);
612  DtCbDiscoverObjectInstance(rti1516e::ObjectInstanceHandle theObject,
613  rti1516e::ObjectClassHandle theObjectClass,
614  std::wstring const & theObjectInstanceName,
615  rti1516e::FederateHandle producingFederate );
617  virtual ~DtCbDiscoverObjectInstance();
618 private:
620  DtCbDiscoverObjectInstance(DtCbDiscoverObjectInstance const& orig);
621  DtCbDiscoverObjectInstance& operator = (DtCbDiscoverObjectInstance const& orig);
622 public:
624  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
625 protected:
626  rti1516e::ObjectInstanceHandle myObjectInstanceHandle;
627  rti1516e::ObjectClassHandle myObjectClassHandle;
628  std::wstring myString;
629  rti1516e::FederateHandle myProducingFederate;
630 };
631 
632 
635 class DtCbReflectAttributeValues: public DtFedAmbCallback
636 {
637 public:
638  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
639  rti1516e::AttributeHandleValueMap const & theAttributeValues,
640  rti1516e::VariableLengthData const & theUserSuppliedTag,
641  rti1516e::OrderType sentOrder,
643  rti1516e::SupplementalReflectInfo theReflectInfo);
644 
645  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
646  rti1516e::AttributeHandleValueMap const & theAttributeValues,
647  rti1516e::VariableLengthData const & theUserSuppliedTag,
648  rti1516e::OrderType sentOrder,
650  std::auto_ptr<rti1516e::LogicalTime> theTime,
651  rti1516e::OrderType receivedOrder,
653 
654  DtCbReflectAttributeValues( rti1516e::ObjectInstanceHandle theObject,
655  rti1516e::AttributeHandleValueMap const & theAttributeValues,
656  rti1516e::VariableLengthData const & theUserSuppliedTag,
657  rti1516e::OrderType sentOrder,
659  std::auto_ptr<rti1516e::LogicalTime> theTime,
660  rti1516e::OrderType receivedOrder,
661  rti1516e::MessageRetractionHandle theHandle,
663 
665  virtual ~DtCbReflectAttributeValues();
666 private:
668  DtCbReflectAttributeValues(DtCbReflectAttributeValues const& orig);
669  DtCbReflectAttributeValues& operator = (DtCbReflectAttributeValues const& orig);
670 public:
672  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
673 
674 protected:
675  rti1516e::ObjectInstanceHandle myObject;
676  rti1516e::AttributeHandleValueMap myAttributeValues;
677  rti1516e::VariableLengthData myUserSuppliedTag;
678  rti1516e::OrderType mySentOrder;
679  rti1516e::TransportationType myTransportationType;
680  std::auto_ptr<rti1516e::LogicalTime> myTime;
681  rti1516e::OrderType myReceivedOrder;
682  rti1516e::MessageRetractionHandle myRetractHandle;
683  rti1516e::SupplementalReflectInfo myReflectInfo;
684 };
685 
688 class DtCbReceiveInteraction: public DtFedAmbCallback
689 {
690 public:
691  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
692  rti1516e::ParameterHandleValueMap const & theParameterValues,
693  rti1516e::VariableLengthData const & theUserSuppliedTag,
694  rti1516e::OrderType sentOrder,
696  rti1516e::SupplementalReceiveInfo theReceiveInfo );
697 
698  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
699  rti1516e::ParameterHandleValueMap const & theParameterValues,
700  rti1516e::VariableLengthData const & theUserSuppliedTag,
701  rti1516e::OrderType sentOrder,
703  std::auto_ptr<rti1516e::LogicalTime> theTime,
704  rti1516e::OrderType receivedOrder,
705  rti1516e::SupplementalReceiveInfo theReceiveInfo );
706 
707  DtCbReceiveInteraction( rti1516e::InteractionClassHandle theInteraction,
708  rti1516e::ParameterHandleValueMap const & theParameterValues,
709  rti1516e::VariableLengthData const & theUserSuppliedTag,
710  rti1516e::OrderType sentOrder,
712  std::auto_ptr<rti1516e::LogicalTime> theTime,
713  rti1516e::OrderType receivedOrder,
714  rti1516e::MessageRetractionHandle theHandle,
715  rti1516e::SupplementalReceiveInfo theReceiveInfo );
716 
718  virtual ~DtCbReceiveInteraction();
719 private:
721  DtCbReceiveInteraction(DtCbReceiveInteraction const& orig);
722  DtCbReceiveInteraction& operator = (DtCbReceiveInteraction const& orig);
723 public:
725  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
726 
727 protected:
728  rti1516e::InteractionClassHandle myInteractionClass;
729  rti1516e::ParameterHandleValueMap myParameterValues;
730  rti1516e::VariableLengthData myUserSuppliedTag;
731  rti1516e::OrderType mySentOrder;
732  rti1516e::TransportationType myTransportationType;
733  std::auto_ptr<rti1516e::LogicalTime> myTime;
734  rti1516e::OrderType myReceivedOrder;
735  rti1516e::MessageRetractionHandle myRetractHandle;
736  rti1516e::SupplementalReceiveInfo myReceiveInfo;
737 };
738 
741 class DtCbRemoveObjectInstance: public DtFedAmbCallback
742 {
743 public:
745  DtCbRemoveObjectInstance(
746  rti1516e::ObjectInstanceHandle theObject,
747  rti1516e::VariableLengthData const & theUserSuppliedTag,
748  rti1516e::OrderType sentOrder,
749  rti1516e::SupplementalRemoveInfo theRemoveInfo );
750  DtCbRemoveObjectInstance(
751  rti1516e::ObjectInstanceHandle theObject,
752  rti1516e::VariableLengthData const & theUserSuppliedTag,
753  rti1516e::OrderType sentOrder,
754  std::auto_ptr<rti1516e::LogicalTime> theTime,
755  rti1516e::OrderType receivedOrder,
756  rti1516e::SupplementalRemoveInfo theRemoveInfo );
757  DtCbRemoveObjectInstance(
758  rti1516e::ObjectInstanceHandle theObject,
759  rti1516e::VariableLengthData const & theUserSuppliedTag,
760  rti1516e::OrderType sentOrder,
761  std::auto_ptr<rti1516e::LogicalTime> theTime,
762  rti1516e::OrderType receivedOrder,
763  rti1516e::MessageRetractionHandle theRetractHandle,
764  rti1516e::SupplementalRemoveInfo theRemoveInfo);
765 
767  virtual ~DtCbRemoveObjectInstance();
768 private:
770  DtCbRemoveObjectInstance(DtCbRemoveObjectInstance const& orig);
771  DtCbRemoveObjectInstance& operator = (DtCbRemoveObjectInstance const& orig);
772 public:
774  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
775 protected:
776  rti1516e::ObjectInstanceHandle myObjectInstanceHandle;
778  rti1516e::OrderType mySentOrder;
779  std::auto_ptr<rti1516e::LogicalTime> myTime;
780  rti1516e::OrderType myReceivedOrder;
781  rti1516e::MessageRetractionHandle myRetractHandle;
783 };
784 
785 
787 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_attributesInScope> DtCbAttributesInScope;
788 
790 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_attributesOutOfScope> DtCbAttributesOutOfScope;
791 
793 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_provideAttributeValueUpdate> DtCbProvideAttributeValueUpdate;
794 
796 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOnForObjectInstance> DtCbTurnUpdatesOnForObjectInstance;
797 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOnForObjectInstance_u> DtCbTurnUpdatesOnForObjectInstance_u;
798 
800 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_turnUpdatesOffForObjectInstance> DtCbTurnUpdatesOffForObjectInstance;
801 
803 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_confirmAttributeTransportationTypeChange> DtCbConfirmAttributeTransportationTypeChange;
804 
806 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_reportAttributeTransportationType> DtCbReportAttributeTransportationType;
807 
809 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_confirmInteractionTransportationTypeChange> DtCbConfirmInteractionTransportationTypeChange;
810 
812 typedef DtCallbackWithObjectAttributesOptTag<DtFedAmbCall_reportInteractionTransportationType> DtCbReportInteractionTransportationType;
813 
818 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestAttributeOwnershipAssumption> DtCbRequestAttributeOwnershipAssumption;
819 
821 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestDivestitureConfirmation> DtCbRequestDivestitureConfirmation;
822 
824 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_attributeOwnershipAcquisitionNotification> DtCbAttributeOwnershipAcquisitionNotification;
825 
827 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_attributeOwnershipUnavailable> DtCbAttributeOwnershipUnavailable;
828 
830 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_requestAttributeOwnershipRelease> DtCbRequestAttributeOwnershipRelease;
831 
833 typedef DtCallbackWithObjectAttributesOptTag <DtFedAmbCall_confirmAttributeOwnershipAcquisitionCancellation> DtCbConfirmAttributeOwnershipAcquisitionCancellation;
834 
836 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_informAttributeOwnership> DtCbInformAttributeOwnership;
837 
838 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_attributeIsNotOwned> DtCbAttributeIsNotOwned;
839 
840 typedef DtCallbackWithObjectAttributesOptFederate<DtFedAmbCall_attributeIsOwnedByRTI> DtCbAttributeIsOwnedByRTI;
841 
846 typedef DtCallbackWithTime<DtFedAmbCall_timeRegulationEnabled> DtCbTimeRegulationEnabled;
847 
849 typedef DtCallbackWithTime<DtFedAmbCall_timeConstrainedEnabled> DtCbTimeConstrainedEnabled;
850 
852 typedef DtCallbackWithTime<DtFedAmbCall_timeAdvanceGrant> DtCbTimeAdvanceGrant;
853 
856 class DtCbRequestRetraction: public DtFedAmbCallback
857 {
858 public:
860  DtCbRequestRetraction(rti1516e::MessageRetractionHandle handle);
862  virtual ~DtCbRequestRetraction();
863 private:
865  DtCbRequestRetraction(DtCbRequestRetraction const& orig);
866  DtCbRequestRetraction& operator = (DtCbRequestRetraction const& orig);
867 public:
869  virtual void evokeCallback(rti1516e::FederateAmbassador* fedAmb) const;
870 protected:
871  rti1516e::MessageRetractionHandle myRetractHandle;
872 };
873 
874 
876 DT_DLL_LRC const char* callbackKindToString(DtFedAmbCallKind kind);
877 
878 #define fedAmbCallback1516e_inl_
879 #include "fedAmbCallback1516e.inl"
880 #undef fedAmbCallback1516e_inl_
881 
882 #endif
883 #endif

Document ID: Generated on Fri Mar 14 19:08:55 EDT 2014 from SVN revision 137085
Copyright © 2005-2014 VT MÄK Inc. All Rights Reserved (www.mak.com)