MAK RTIspy API Documentation for HLA 1516
fedAmbCallbackQueue13.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2007 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: fedAmbCallbackQueue13.h,v $ $Revision: 1.4 $ $State: Exp $
00007 *********************************************************************/
00008 
00009 #ifndef DtFedAmbCallbackQueue13_h
00010 #define DtDtFedAmbCallbackQueue13_h
00011 #ifdef DtIFSPEC13
00012 
00015 
00016 #include <queue>
00017 #include "fedAmbWrap.h"
00018 #include "rtiMsg.h"
00019 
00020 typedef std::queue<DtRtiMsg*> DtFedAmbMsgQueue;
00021 
00022 class DtFederateMgr;
00023 
00027 class DT_DLL_LRC DtCallbackQueue : public DtFedAmbWrapper
00028 {
00029 public:
00030 
00032    DtCallbackQueue(DtFederateMgr* fedMgr = 0);
00033 
00035    virtual ~DtCallbackQueue() throw (RTI::FederateInternalError);
00036 
00037 private:
00039    DtCallbackQueue(DtCallbackQueue const& orig);
00041    DtCallbackQueue& operator = (DtCallbackQueue const& orig);
00042 
00043 public:
00044 
00046    virtual void enableQueue();
00047 
00049    virtual void disableQueue();
00050 
00052    MAKRti::DtString const& name() const;
00053 
00055    virtual DtRtiMsg* popMessage();
00056 
00060 
00061    virtual void synchronizationPointRegistrationSucceeded (
00062       const char *label) throw (RTI::FederateInternalError);   
00063 
00064    virtual void synchronizationPointRegistrationFailed (
00065       const char *label) throw (RTI::FederateInternalError);   
00066 
00067    virtual void announceSynchronizationPoint (
00068       const char *label,  
00069       const char *tag) throw (RTI::FederateInternalError);    
00070 
00071    virtual void federationSynchronized (
00072       const char *label) throw (RTI::FederateInternalError);  
00073 
00074    virtual void initiateFederateSave (
00075       const char *label) throw (RTI::FederateInternalError);  
00076 
00077    virtual void federationSaved () throw (RTI::FederateInternalError);
00078 
00079    virtual void federationNotSaved () throw (RTI::FederateInternalError);
00080 
00081    virtual void requestFederationRestoreSucceeded (
00082       const char *label) throw (RTI::FederateInternalError);  
00083 
00084    virtual void requestFederationRestoreFailed (
00085       const char *label,
00086       const char *reason) throw (RTI::FederateInternalError);  
00087 
00088    virtual void federationRestoreBegun () throw (RTI::FederateInternalError);
00089 
00090    virtual void initiateFederateRestore (
00091       const char *label, 
00092       RTI::FederateHandle handle) throw (RTI::FederateInternalError); 
00093 
00094    virtual void federationRestored () throw (RTI::FederateInternalError);
00095 
00096    virtual void federationNotRestored () throw (RTI::FederateInternalError);
00097 
00101 
00102    virtual void startRegistrationForObjectClass (
00103       RTI::ObjectClassHandle theClass) throw (RTI::FederateInternalError); 
00104 
00105    virtual void stopRegistrationForObjectClass (
00106       RTI::ObjectClassHandle theClass) throw (RTI::FederateInternalError); 
00107 
00108    virtual void turnInteractionsOn (
00109       RTI::InteractionClassHandle theHandle) throw (RTI::FederateInternalError); 
00110 
00111    virtual void turnInteractionsOff (
00112       RTI::InteractionClassHandle theHandle) throw (RTI::FederateInternalError); 
00113 
00117 
00118    virtual void discoverObjectInstance (
00119       RTI::ObjectHandle theObject, 
00120       RTI::ObjectClassHandle theObjectClass, 
00121       const char* theObjectName) throw (RTI::FederateInternalError); 
00122 
00123    virtual void reflectAttributeValues (
00124       RTI::ObjectHandle theObject, 
00125       const RTI::AttributeHandleValuePairSet& theAttributes, 
00126       const RTI::FedTime& theTime, 
00127       const char *theTag, 
00128       RTI::EventRetractionHandle theHandle) throw (RTI::FederateInternalError); 
00129 
00130    virtual void reflectAttributeValues (
00131       RTI::ObjectHandle theObject, 
00132       const RTI::AttributeHandleValuePairSet& theAttributes, 
00133       const char *theTag) throw (RTI::FederateInternalError); 
00134 
00136    virtual void receiveInteraction (
00137       RTI::InteractionClassHandle theInteraction, 
00138       const RTI::ParameterHandleValuePairSet& theParameters, 
00139       const RTI::FedTime& theTime, 
00140       const char *theTag, 
00141       RTI::EventRetractionHandle theHandle) throw (RTI::FederateInternalError); 
00142 
00143    virtual void receiveInteraction (
00144       RTI::InteractionClassHandle theInteraction, 
00145       const RTI::ParameterHandleValuePairSet& theParameters, 
00146       const char *theTag) throw (RTI::FederateInternalError); 
00147 
00148    virtual void removeObjectInstance (
00149       RTI::ObjectHandle theObject, 
00150       const RTI::FedTime& theTime, 
00151       const char *theTag, 
00152       RTI::EventRetractionHandle theHandle) throw (RTI::FederateInternalError); 
00153 
00154    virtual void removeObjectInstance (
00155       RTI::ObjectHandle theObject, 
00156       const char *theTag) throw (RTI::FederateInternalError); 
00157 
00158    virtual void attributesInScope (
00159       RTI::ObjectHandle theObject, 
00160       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00161 
00162    virtual void attributesOutOfScope (
00163       RTI::ObjectHandle theObject, 
00164       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00165 
00166    virtual void provideAttributeValueUpdate (
00167       RTI::ObjectHandle theObject, 
00168       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00169 
00170    virtual void turnUpdatesOnForObjectInstance (
00171       RTI::ObjectHandle theObject, 
00172       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00173 
00174    virtual void turnUpdatesOffForObjectInstance (
00175       RTI::ObjectHandle theObject, 
00176       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00177 
00181 
00182    virtual void requestAttributeOwnershipAssumption (
00183       RTI::ObjectHandle theObject, 
00184       const RTI::AttributeHandleSet& offeredAttributes, 
00185       const char *theTag) throw (RTI::FederateInternalError); 
00186 
00187    virtual void attributeOwnershipDivestitureNotification (
00188       RTI::ObjectHandle theObject, 
00189       const RTI::AttributeHandleSet& releasedAttributes) throw (RTI::FederateInternalError); 
00190 
00191    virtual void attributeOwnershipAcquisitionNotification (
00192       RTI::ObjectHandle theObject, 
00193       const RTI::AttributeHandleSet& securedAttributes) throw (RTI::FederateInternalError); 
00194 
00195    virtual void attributeOwnershipUnavailable (
00196       RTI::ObjectHandle theObject, 
00197       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00198 
00199    virtual void requestAttributeOwnershipRelease (
00200       RTI::ObjectHandle theObject, 
00201       const RTI::AttributeHandleSet& candidateAttributes, 
00202       const char *theTag) throw (RTI::FederateInternalError); 
00203 
00204    virtual void confirmAttributeOwnershipAcquisitionCancellation (
00205       RTI::ObjectHandle theObject, 
00206       const RTI::AttributeHandleSet& theAttributes) throw (RTI::FederateInternalError); 
00207 
00208    virtual void informAttributeOwnership (
00209       RTI::ObjectHandle theObject, 
00210       RTI::AttributeHandle theAttribute, 
00211       RTI::FederateHandle theOwner) throw (RTI::FederateInternalError); 
00212 
00213    virtual void attributeIsNotOwned (
00214       RTI::ObjectHandle theObject, 
00215       RTI::AttributeHandle theAttribute) throw (RTI::FederateInternalError); 
00216 
00217    virtual void attributeOwnedByRTI (
00218       RTI::ObjectHandle theObject, 
00219       RTI::AttributeHandle theAttribute) throw (RTI::FederateInternalError); 
00220 
00224 
00225    virtual void timeRegulationEnabled (
00226       const RTI::FedTime& theFederateTime) throw (RTI::FederateInternalError); 
00227 
00228    virtual void timeConstrainedEnabled (
00229       const RTI::FedTime& theFederateTime) throw (RTI::FederateInternalError); 
00230 
00231    virtual void timeAdvanceGrant (
00232       const RTI::FedTime& theTime) throw (RTI::FederateInternalError); 
00233 
00234    virtual void requestRetraction (
00235       RTI::EventRetractionHandle theHandle) throw (RTI::FederateInternalError); 
00236 
00237 protected:
00238 
00240    virtual std::auto_ptr<RTI::FedTime> copyTime(RTI::FedTime const& timeValue);
00241 
00242 protected:
00243 
00244    DtFederateMgr* myFedMgr;
00245    DtFedAmbMsgQueue myFedAmbQueue;
00246    bool myQueueCallback;
00247    const MAKRti::DtString myName;
00248 
00249 };
00250 
00251 #endif //! DtIFSPEC1516
00252 #endif //! DtCallbackQueue13_h

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)