VR-Link API Documentation for HLA 1.3
vrlFedAmb1516e.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 
7 #pragma once
8 
12 
13 #if DtHLA
14 #if DtHLA_1516_EVOLVED
15 
16 
17 #include "callbacks.h"
18 
19 #include "rtiNamespace.h"
20 #include "nullFedAmb1516e.h"
21 #include <list>
22 
23 typedef void (*DtSynchPointCb)(
24  const char* label,
25  void* usr);
26 
27 typedef void (*DtAnnounceSynchPointCb)(
28  const char* label,
29  const RTI::VariableLengthData& tag,
30  void* usr);
31 
34 
39 {
40  struct DtScopeChangeCallbackData
41  {
43  RTI::ObjectInstanceHandle handle;
44  };
45 
46 public:
49  throw (RTI::FederateInternalError);
51  virtual ~DtVrlFederateAmbassador()
52  throw( );
53 
54 protected:
57 
59  DtVrlFederateAmbassador& operator=(const DtVrlFederateAmbassador& src );
60 
61 public:
64  virtual void init( DtExerciseConn* exConn,
65  DtHlaObjectManager* hlaObjMgr,
66  DtInteractionManager* interMgr );
67 
68 public:
70  static DtVrlFederateAmbassador* create();
71 
72 public:
75  virtual void addReflectAttributeValuesCb(
76  RTI::ObjectInstanceHandle id, DtReflectAttributeValuesCb cb, void* usr );
77  virtual void removeReflectAttributeValuesCb(
78  RTI::ObjectInstanceHandle id, DtReflectAttributeValuesCb cb, void* usr );
79 
82  virtual void addDiscoverObjectCb( RTI::ObjectClassHandle hand,
83  DtDiscoverObjectCb cb, void* usr );
84  virtual void removeDiscoverObjectCb( RTI::ObjectClassHandle hand,
85  DtDiscoverObjectCb cb, void* usr );
86 
89  virtual void addRemoveObjectCb( RTI::ObjectInstanceHandle id,
90  DtRemoveObjectCb cb, void* usr );
91  virtual void removeRemoveObjectCb( RTI::ObjectInstanceHandle id,
92  DtRemoveObjectCb cb, void* usr );
93 
96  virtual void addStartRegCb( RTI::ObjectClassHandle hand,
97  DtStartRegCb cb, void* usr );
98  virtual void removeStartRegCb( RTI::ObjectClassHandle hand,
99  DtStartRegCb cb, void* usr );
100 
103  virtual void addStopRegCb( RTI::ObjectClassHandle hand,
104  DtStopRegCb cb, void* usr );
105  virtual void removeStopRegCb( RTI::ObjectClassHandle hand,
106  DtStopRegCb cb, void* usr );
107 
110  virtual void addUpdatesOnCb( RTI::ObjectInstanceHandle hand,
111  DtUpdatesOnCb cb, void* usr );
112  virtual void removeUpdatesOnCb( RTI::ObjectInstanceHandle hand,
113  DtUpdatesOnCb cb, void* usr );
114 
117  virtual void addUpdatesOffCb( RTI::ObjectInstanceHandle hand,
118  DtUpdatesOffCb cb, void* usr );
119  virtual void removeUpdatesOffCb( RTI::ObjectInstanceHandle hand,
120  DtUpdatesOffCb cb, void* usr );
121 
124  virtual void addStartInteractionsCb( RTI::InteractionClassHandle hand,
125  DtStartStopInterCb cb, void* usr );
126  virtual void removeStartInteractionsCb( RTI::InteractionClassHandle hand,
127  DtStartStopInterCb cb, void* usr );
128 
131  virtual void addStopInteractionsCb( RTI::InteractionClassHandle hand,
132  DtStartStopInterCb cb, void* usr );
133  virtual void removeStopInteractionsCb( RTI::InteractionClassHandle hand,
134  DtStartStopInterCb cb, void* usr );
135 
138  virtual void addReceiveInteractionCb( RTI::InteractionClassHandle hand,
139  DtReceiveInteractionCb cb, void* usr, DtDDMRegionSP region = DtDDMRegionSP());
140  virtual void removeReceiveInteractionCb( RTI::InteractionClassHandle hand,
141  DtReceiveInteractionCb cb, void* usr, DtDDMRegionSP region = DtDDMRegionSP() );
142 
145  virtual void addTimeAdvanceGrantCb( DtFedTimeCb cb, void* usr );
146  virtual void removeTimeAdvanceGrantCb( DtFedTimeCb cb, void* usr );
147 
150  virtual void addTimeRegulationEnabledCb( DtFedTimeCb cb, void* usr );
151  virtual void removeTimeRegulationEnabledCb( DtFedTimeCb cb, void* usr );
152 
155  virtual void addTimeConstrainedEnabledCb( DtFedTimeCb cb, void* usr );
156  virtual void removeTimeConstrainedEnabledCb( DtFedTimeCb cb, void* usr );
157 
160  virtual void addNameReservationSucceeded( DtReserveNameCb cb, void* usr );
161  virtual void removeNameReservationSucceeded( DtReserveNameCb cb, void* usr );
162 
165  virtual void addNameReservationFailed( DtReserveNameCb cb, void* usr );
166  virtual void removeNameReservationFailed( DtReserveNameCb cb, void* usr );
167 
168 
171  virtual void addMultipleNameReservationSucceeded( DtReserveMultipleNamesCb cb, void* usr );
172  virtual void removeNameReservationSucceeded( DtReserveMultipleNamesCb, void* usr );
173 
176  virtual void addMultipleNameReservationFailed( DtReserveMultipleNamesCb cb, void* usr );
177  virtual void removeMultipleNameReservationFailed( DtReserveMultipleNamesCb, void* usr );
178 
180  virtual void addSynchPointRegSucceededCb(const DtString& label,
181  DtSynchPointCb func, void* usr);
182  virtual void addSynchPointRegSucceededCb(DtSynchPointCb func,
183  void* usr);
184 
185  virtual void removeSynchPointRegSucceededCb(const DtString& label,
186  DtSynchPointCb func, void* usr);
187  virtual void removeSynchPointRegSucceededCb(DtSynchPointCb func,
188  void* usr);
189 
190  virtual void addSynchPointRegFailedCb(const DtString& label,
191  DtSynchPointCb func, void* usr);
192  virtual void addSynchPointRegFailedCb(DtSynchPointCb func,
193  void* usr);
194 
195  virtual void removeSynchPointRegFailedCb(const DtString& label,
196  DtSynchPointCb func, void* usr);
197  virtual void removeSynchPointRegFailedCb(DtSynchPointCb func,
198  void* usr);
199 
200  virtual void addFederationSynchedCb(const DtString& label,
201  DtSynchPointCb func, void* usr);
202  virtual void addFederationSynchedCb(DtSynchPointCb func,
203  void* usr);
204 
205  virtual void removeFederationSynchedCb(const DtString& label,
206  DtSynchPointCb func, void* usr);
207  virtual void removeFederationSynchedCb(DtSynchPointCb func,
208  void* usr);
209 
210  virtual void addAnnounceSynchPointCb(const DtString& label,
211  DtAnnounceSynchPointCb func, void* usr);
212  virtual void addAnnounceSynchPointCb(DtAnnounceSynchPointCb func,
213  void* usr);
214 
215  virtual void removeAnnounceSynchPointCb(const DtString& label,
216  DtAnnounceSynchPointCb func, void* usr);
217  virtual void removeAnnounceSynchPointCb(DtAnnounceSynchPointCb func,
218  void* usr);
219 
220  virtual void setRemoveObjectOnAttOutOfScope(bool remove);
221  virtual bool removeObjectOnAttOutOfScope() const;
222 
223  virtual void addConnectionLostCb( DtConnectionLostCb func, void* usr );
224  virtual void removeConnectionLostCb(DtConnectionLostCb func, void* usr );
225 
226 #if DtHLA_1516_EVOLVED
227 
228  virtual DtString getFederateNameFromHandle(const RTI::FederateHandle&) const;
229 #endif
230 
231 
232 
233 protected:
235  struct DtGeneralSynchPointCbInfo
236  {
237  DtSynchPointCb cbFunction;
238  void* userData;
239  };
240 
241  struct DtLabelledSynchPointCbInfo
242  {
243  DtString label;
244  DtSynchPointCb cbFunction;
245  void* userData;
246  };
247 
248  struct DtGeneralAnnounceCbInfo
249  {
250  DtAnnounceSynchPointCb cbFunction;
251  void* userData;
252  };
253 
254  struct DtLabelledAnnounceCbInfo
255  {
256  DtString label;
257  DtAnnounceSynchPointCb cbFunction;
258  void* userData;
259  };
260 
261  static void attributesOutOfScopeCb(void* usr);
262 
263  virtual void processAttributesOutOfScope(RTI::ObjectInstanceHandle handle);
264 
265  DtExerciseConn* myExConn;
266  DtInteractionManager* myInteractionManager;
267  DtHlaObjectManager* myHlaObjectManager;
268 
269  DtReflectAttributeValuesCbList myRavCbList;
270  DtUpdatesOnCbList myUpdatesOnCbList;
271  DtUpdatesOffCbList myUpdatesOffCbList;
272  DtStartRegCbList myStartRegCbList;
273  DtStopRegCbList myStopRegCbList;
274  DtStartStopInterCbList myStartIntCbList;
275  DtStartStopInterCbList myStopIntCbList;
276  DtFedTimeCbList myTimeAdvanceGrantCbList;
277  DtFedTimeCbList myRegulationEnabledCbList;
278  DtFedTimeCbList myConstrainedEnabledCbList;
279  DtConnectionLostCbList myConnectionLostCbList;
280  DtReserveNameCbList myNameReservationSucceededCbList;
281  DtReserveNameCbList myNameReservationFailedCbList;
282 
283  DtReserveMultipleNamesCbList myMultipleNamesReservationSucceededCbList;
284  DtReserveMultipleNamesCbList myMultipleNamesReservationFailedCbList;
285 
287  std::list<DtLabelledSynchPointCbInfo> myLabSynchPtRegSucceededCbList;
288  std::list<DtLabelledSynchPointCbInfo> myLabSynchPtRegFailedCbList;
289  std::list<DtLabelledSynchPointCbInfo> myLabFederationSynchedCbList;
290  std::list<DtLabelledAnnounceCbInfo> myLabAnnounceSynchPointCbList;
291 
292  std::list<DtGeneralSynchPointCbInfo> mySynchPtRegSucceededCbList;
293  std::list<DtGeneralSynchPointCbInfo> mySynchPtRegFailedCbList;
294  std::list<DtGeneralSynchPointCbInfo> myFederationSynchedCbList;
295  std::list<DtGeneralAnnounceCbInfo> myAnnounceSynchPointCbList;
296 
297  bool myRemoveObjectOnAttOutOfScope;
298 
300  virtual void applyFedsSynchedCallbacks(const DtString& label);
301  virtual void applyRegistrationSucceededCallbacks(const DtString& label);
302  virtual void applyRegistrationFailedCallbacks(const DtString& label);
303 
305  virtual bool applyAnnounceCallbacks(const DtString& label, const RTI::VariableLengthData& tag);
306 
307 
308 public:
309 
310  // 4.4
311  virtual void connectionLost (
312  std::wstring const & faultDescription)
313  throw (
314  RTI::FederateInternalError);
315 
316  // 4.8
317  virtual void reportFederationExecutions (
318  RTI::FederationExecutionInformationVector const &
319  theFederationExecutionInformationList)
320  throw (
321  RTI::FederateInternalError);
322 
323  // 4.12
325  std::wstring const & label)
326  throw (
327  RTI::FederateInternalError);
328 
330  std::wstring const & label,
331  RTI::SynchronizationPointFailureReason reason)
332  throw (
333  RTI::FederateInternalError);
334 
335  // 4.13
336  virtual void announceSynchronizationPoint (
337  std::wstring const & label,
338  RTI::VariableLengthData const & theUserSuppliedTag)
339  throw (
340  RTI::FederateInternalError);
341 
342  // 4.15
343  virtual void federationSynchronized (
344  std::wstring const & label,
345  RTI::FederateHandleSet const& failedToSyncSet)
346  throw (
347  RTI::FederateInternalError);
348 
349  // 4.17
350  virtual void initiateFederateSave (
351  std::wstring const & label)
352  throw (
353  RTI::FederateInternalError);
354 
355  virtual void initiateFederateSave (
356  std::wstring const & label,
357  RTI::LogicalTime const & theTime)
358  throw (
359  RTI::FederateInternalError);
360 
361  // 4.20
362  virtual void federationSaved ()
363  throw (
364  RTI::FederateInternalError);
365 
366  virtual void federationNotSaved (
367  RTI::SaveFailureReason theSaveFailureReason)
368  throw (
369  RTI::FederateInternalError);
370 
371 
372  // 4.23
373  virtual void federationSaveStatusResponse (
374  RTI::FederateHandleSaveStatusPairVector const &
375  theFederateStatusVector)
376  throw (
377  RTI::FederateInternalError);
378 
379  // 4.25
380  virtual void requestFederationRestoreSucceeded (
381  std::wstring const & label)
382  throw (
383  RTI::FederateInternalError);
384 
385  virtual void requestFederationRestoreFailed (
386  std::wstring const & label)
387  throw (
388  RTI::FederateInternalError);
389 
390  // 4.26
391  virtual void federationRestoreBegun ()
392  throw (
393  RTI::FederateInternalError);
394 
395  // 4.27
396  virtual void initiateFederateRestore (
397  std::wstring const & label,
398  std::wstring const & federateName,
399  RTI::FederateHandle handle)
400  throw (
401  RTI::FederateInternalError);
402 
403  // 4.29
404  virtual void federationRestored ()
405  throw (
406  RTI::FederateInternalError);
407 
408  virtual void federationNotRestored (
409  RTI::RestoreFailureReason theRestoreFailureReason)
410  throw (
411  RTI::FederateInternalError);
412 
413  // 4.32
414  virtual void federationRestoreStatusResponse (
415  RTI::FederateRestoreStatusVector const &
416  theFederateRestoreStatusVector)
417  throw (
418  RTI::FederateInternalError);
419 
421  // Declaration Management Services //
423 
424  // 5.10
425  virtual void startRegistrationForObjectClass (
426  RTI::ObjectClassHandle theClass)
427  throw (
428  RTI::FederateInternalError);
429 
430  // 5.11
431  virtual void stopRegistrationForObjectClass (
432  RTI::ObjectClassHandle theClass)
433  throw (
434  RTI::FederateInternalError);
435 
436  // 5.12
437  virtual void turnInteractionsOn (
438  RTI::InteractionClassHandle theHandle)
439  throw (
440  RTI::FederateInternalError);
441 
442  // 5.13
443  virtual void turnInteractionsOff (
444  RTI::InteractionClassHandle theHandle)
445  throw (
446  RTI::FederateInternalError);
447 
449  // Object Management Services //
451 
452  // 6.3
453  virtual void objectInstanceNameReservationSucceeded (
454  std::wstring const & theObjectInstanceName)
455  throw (
456  RTI::FederateInternalError);
457 
458  virtual void objectInstanceNameReservationFailed (
459  std::wstring const & theObjectInstanceName)
460  throw (
461  RTI::FederateInternalError);
462 
463  // 6.6
464  virtual void multipleObjectInstanceNameReservationSucceeded (
465  std::set<std::wstring> const & theObjectInstanceNames)
466  throw (
467  RTI::FederateInternalError);
468 
469  virtual void multipleObjectInstanceNameReservationFailed (
470  std::set<std::wstring> const & theObjectInstanceNames)
471  throw (
472  RTI::FederateInternalError);
473 
474 
475  // 6.9
476  virtual void discoverObjectInstance (
477  RTI::ObjectInstanceHandle theObject,
478  RTI::ObjectClassHandle theObjectClass,
479  std::wstring const & theObjectInstanceName)
480  throw (
481  RTI::FederateInternalError);
482 
483  virtual void discoverObjectInstance (
484  RTI::ObjectInstanceHandle theObject,
485  RTI::ObjectClassHandle theObjectClass,
486  std::wstring const & theObjectInstanceName,
487  RTI::FederateHandle producingFederate)
488  throw (
489  RTI::FederateInternalError);
490 
491  // 6.11
492  virtual void reflectAttributeValues (
493  RTI::ObjectInstanceHandle theObject,
494  RTI::AttributeHandleValueMap const & theAttributeValues,
495  RTI::VariableLengthData const & theUserSuppliedTag,
496  RTI::OrderType sentOrder,
497  RTI::TransportationType theType,
498  RTI::SupplementalReflectInfo theReflectInfo)
499  throw (
500  RTI::FederateInternalError);
501 
502  virtual void reflectAttributeValues (
503  RTI::ObjectInstanceHandle theObject,
504  RTI::AttributeHandleValueMap const & theAttributeValues,
505  RTI::VariableLengthData const & theUserSuppliedTag,
506  RTI::OrderType sentOrder,
507  RTI::TransportationType theType,
508  RTI::LogicalTime const & theTime,
509  RTI::OrderType receivedOrder,
510  RTI::SupplementalReflectInfo theReflectInfo)
511  throw (
512  RTI::FederateInternalError);
513 
514  virtual void reflectAttributeValues (
515  RTI::ObjectInstanceHandle theObject,
516  RTI::AttributeHandleValueMap const & theAttributeValues,
517  RTI::VariableLengthData const & theUserSuppliedTag,
518  RTI::OrderType sentOrder,
519  RTI::TransportationType theType,
520  RTI::LogicalTime const & theTime,
521  RTI::OrderType receivedOrder,
522  RTI::MessageRetractionHandle theHandle,
523  RTI::SupplementalReflectInfo theReflectInfo)
524  throw (
525  RTI::FederateInternalError);
526 
527  // 6.13
528  virtual void receiveInteraction (
529  RTI::InteractionClassHandle theInteraction,
530  RTI::ParameterHandleValueMap const & theParameterValues,
531  RTI::VariableLengthData const & theUserSuppliedTag,
532  RTI::OrderType sentOrder,
533  RTI::TransportationType theType,
534  RTI::SupplementalReceiveInfo theReceiveInfo)
535  throw (
536  RTI::FederateInternalError);
537 
538  virtual void receiveInteraction (
539  RTI::InteractionClassHandle theInteraction,
540  RTI::ParameterHandleValueMap const & theParameterValues,
541  RTI::VariableLengthData const & theUserSuppliedTag,
542  RTI::OrderType sentOrder,
543  RTI::TransportationType theType,
544  RTI::LogicalTime const & theTime,
545  RTI::OrderType receivedOrder,
546  RTI::SupplementalReceiveInfo theReceiveInfo)
547  throw (
548  RTI::FederateInternalError);
549 
550  virtual void receiveInteraction (
551  RTI::InteractionClassHandle theInteraction,
552  RTI::ParameterHandleValueMap const & theParameterValues,
553  RTI::VariableLengthData const & theUserSuppliedTag,
554  RTI::OrderType sentOrder,
555  RTI::TransportationType theType,
556  RTI::LogicalTime const & theTime,
557  RTI::OrderType receivedOrder,
558  RTI::MessageRetractionHandle theHandle,
559  RTI::SupplementalReceiveInfo theReceiveInfo)
560  throw (
561  RTI::FederateInternalError);
562 
563  // 6.15
564  virtual void removeObjectInstance (
565  RTI::ObjectInstanceHandle theObject,
566  RTI::VariableLengthData const & theUserSuppliedTag,
567  RTI::OrderType sentOrder,
568  RTI::SupplementalRemoveInfo theRemoveInfo)
569  throw (
570  RTI::FederateInternalError);
571 
572  virtual void removeObjectInstance (
573  RTI::ObjectInstanceHandle theObject,
574  RTI::VariableLengthData const & theUserSuppliedTag,
575  RTI::OrderType sentOrder,
576  RTI::LogicalTime const & theTime,
577  RTI::OrderType receivedOrder,
578  RTI::SupplementalRemoveInfo theRemoveInfo)
579  throw (
580  RTI::FederateInternalError);
581 
582  virtual void removeObjectInstance (
583  RTI::ObjectInstanceHandle theObject,
584  RTI::VariableLengthData const & theUserSuppliedTag,
585  RTI::OrderType sentOrder,
586  RTI::LogicalTime const & theTime,
587  RTI::OrderType receivedOrder,
588  RTI::MessageRetractionHandle theHandle,
589  RTI::SupplementalRemoveInfo theRemoveInfo)
590  throw (
591  RTI::FederateInternalError);
592 
593  // 6.17
594  virtual void attributesInScope (
595  RTI::ObjectInstanceHandle theObject,
596  RTI::AttributeHandleSet const & theAttributes)
597  throw (
598  RTI::FederateInternalError);
599 
600  // 6.18
601  virtual void attributesOutOfScope (
602  RTI::ObjectInstanceHandle theObject,
603  RTI::AttributeHandleSet const & theAttributes)
604  throw (
605  RTI::FederateInternalError);
606 
607  // 6.20
608  virtual void provideAttributeValueUpdate (
609  RTI::ObjectInstanceHandle theObject,
610  RTI::AttributeHandleSet const & theAttributes,
611  RTI::VariableLengthData const & theUserSuppliedTag)
612  throw (
613  RTI::FederateInternalError);
614 
615  // 6.21
616  virtual void turnUpdatesOnForObjectInstance (
617  RTI::ObjectInstanceHandle theObject,
618  RTI::AttributeHandleSet const & theAttributes)
619  throw (
620  RTI::FederateInternalError);
621 
622  virtual void turnUpdatesOnForObjectInstance (
623  RTI::ObjectInstanceHandle theObject,
624  RTI::AttributeHandleSet const & theAttributes,
625  std::wstring const & updateRateDesignator)
626  throw (
627  RTI::FederateInternalError);
628 
629  // 6.22
630  virtual void turnUpdatesOffForObjectInstance (
631  RTI::ObjectInstanceHandle theObject,
632  RTI::AttributeHandleSet const & theAttributes)
633  throw (
634  RTI::FederateInternalError);
635 
636  // 6.24
637  virtual void confirmAttributeTransportationTypeChange (
638  RTI::ObjectInstanceHandle theObject,
639  RTI::AttributeHandleSet theAttributes,
640  RTI::TransportationType theTransportation)
641  throw (
642  RTI::FederateInternalError);
643 
644  // 6.26
645  virtual void reportAttributeTransportationType (
646  RTI::ObjectInstanceHandle theObject,
647  RTI::AttributeHandle theAttribute,
648  RTI::TransportationType theTransportation)
649  throw (
650  RTI::FederateInternalError);
651 
652  // 6.28
653  virtual void confirmInteractionTransportationTypeChange (
654  RTI::InteractionClassHandle theInteraction,
655  RTI::TransportationType theTransportation)
656  throw (
657  RTI::FederateInternalError);
658 
659  // 6.30
660  virtual void reportInteractionTransportationType (
661  RTI::FederateHandle federateHandle,
662  RTI::InteractionClassHandle theInteraction,
663  RTI::TransportationType theTransportation)
664  throw (
665  RTI::FederateInternalError);
666 
667 
669  // Ownership Management Services //
671 
672  // 7.4
673  virtual void requestAttributeOwnershipAssumption (
674  RTI::ObjectInstanceHandle theObject,
675  RTI::AttributeHandleSet const & offeredAttributes,
676  RTI::VariableLengthData const & theUserSuppliedTag)
677  throw (
678  RTI::FederateInternalError);
679 
680  // 7.5
681  virtual void requestDivestitureConfirmation (
682  RTI::ObjectInstanceHandle theObject,
683  RTI::AttributeHandleSet const & releasedAttributes)
684  throw (
685  RTI::FederateInternalError);
686 
687  // 7.7
688  virtual void attributeOwnershipAcquisitionNotification (
689  RTI::ObjectInstanceHandle theObject,
690  RTI::AttributeHandleSet const & securedAttributes,
691  RTI::VariableLengthData const & theUserSuppliedTag)
692  throw (
693  RTI::FederateInternalError);
694 
695  // 7.10
696  virtual void attributeOwnershipUnavailable (
697  RTI::ObjectInstanceHandle theObject,
698  RTI::AttributeHandleSet const & theAttributes)
699  throw (
700  RTI::FederateInternalError);
701 
702  // 7.11
703  virtual void requestAttributeOwnershipRelease (
704  RTI::ObjectInstanceHandle theObject,
705  RTI::AttributeHandleSet const & candidateAttributes,
706  RTI::VariableLengthData const & theUserSuppliedTag)
707  throw (
708  RTI::FederateInternalError);
709 
710  // 7.16
711  virtual void confirmAttributeOwnershipAcquisitionCancellation (
712  RTI::ObjectInstanceHandle theObject,
713  RTI::AttributeHandleSet const & theAttributes)
714  throw (
715  RTI::FederateInternalError);
716 
717  // 7.18
718  virtual void informAttributeOwnership (
719  RTI::ObjectInstanceHandle theObject,
720  RTI::AttributeHandle theAttribute,
721  RTI::FederateHandle theOwner)
722  throw (
723  RTI::FederateInternalError);
724 
725  virtual void attributeIsNotOwned (
726  RTI::ObjectInstanceHandle theObject,
727  RTI::AttributeHandle theAttribute)
728  throw (
729  RTI::FederateInternalError);
730 
731  virtual void attributeIsOwnedByRTI (
732  RTI::ObjectInstanceHandle theObject,
733  RTI::AttributeHandle theAttribute)
734  throw (
735  RTI::FederateInternalError);
736 
738  // Time Management Services //
740 
741  // 8.3
742  virtual void timeRegulationEnabled (
743  RTI::LogicalTime const & theFederateTime)
744  throw (
745  RTI::FederateInternalError);
746 
747  // 8.6
748  virtual void timeConstrainedEnabled (
749  RTI::LogicalTime const & theFederateTime)
750  throw (
751  RTI::FederateInternalError);
752 
753  // 8.13
754  virtual void timeAdvanceGrant (
755  RTI::LogicalTime const & theTime)
756  throw (
757  RTI::FederateInternalError);
758 
759  // 8.22
760  virtual void requestRetraction (
761  RTI::MessageRetractionHandle theHandle)
762  throw (
763  RTI::FederateInternalError);
764 
765 };
766 
767 #endif
768 #endif
769 
770 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)