![]() |
MAK RTIspy API Documentation for HLA Evolved
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: serResFed.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifdef DtMOM 00009 00012 00013 #ifndef DtResignFederationExecutionInteraction_H_ 00014 #define DtResignFederationExecutionInteraction_H_ 00015 00016 #include "rtiMsConfig.h" 00017 #include "internalTypes.h" 00018 #include "mInteraction.h" 00019 #include <vlutil/vlList.h> 00020 00021 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E) 00022 #include <RTI/Typedefs.h> 00023 #else 00024 #ifdef DtIFSPEC13DLC 00025 #include "RTI13.h" 00026 #define RTI rti13 00027 #else 00028 #include "RTI.hh" 00029 #endif 00030 #endif 00031 00032 class DtMomInterCbMgr; 00033 class DtResignFederationExecutionInteraction; 00034 typedef void (*DtResignFederationExecutionInteractionCb) 00035 (const DtResignFederationExecutionInteraction& inter, void* usr); 00036 00037 class DT_DLL_LRC DtResignFederationExecutionInteraction : 00038 public DtServiceInteraction 00039 { 00040 public: 00041 00043 DtResignFederationExecutionInteraction(); 00044 00046 virtual ~DtResignFederationExecutionInteraction(); 00047 00049 DtResignFederationExecutionInteraction( 00050 const DtResignFederationExecutionInteraction& orig); 00051 00053 DtResignFederationExecutionInteraction& operator=( 00054 const DtResignFederationExecutionInteraction& orig); 00055 00058 virtual const DtPhvps& phvps(); 00059 00062 virtual bool setFromPhvps(const DtPhvps& phvps); 00063 00065 #ifdef DtIFSPEC1516 00066 virtual rti1516::ResignAction resignAction() const; 00067 virtual void setResignAction(rti1516::ResignAction data); 00068 #elif defined(DtIFSPEC1516E) 00069 virtual rti1516e::ResignAction resignAction() const; 00070 virtual void setResignAction(rti1516e::ResignAction data); 00071 #else 00072 virtual RTI::ResignAction resignAction() const; 00073 virtual void setResignAction(RTI::ResignAction data); 00074 #endif 00075 00076 00077 public: 00079 static DtServiceInteraction* create(); 00080 00082 static void addCallback(DtMomInterCbMgr* callBackManager, 00083 DtResignFederationExecutionInteractionCb cb, void* usr); 00084 static void removeCallback(DtMomInterCbMgr* callBackManager, 00085 DtResignFederationExecutionInteractionCb cb, void* usr); 00086 00087 protected: 00088 00090 virtual void encodeResignAction( 00091 const DtMomInteraction& data, 00092 DtPhvps* parameters, 00093 DtParameterHandle parameterHandle); 00094 00096 virtual void decodeResignAction( 00097 DtMomInteraction* data, 00098 const DtPhvps& parameters, 00099 int index); 00100 00101 public: 00102 static const char* theInteractionName; 00103 00104 protected: 00106 #ifdef DtIFSPEC1516 00107 rti1516::ResignAction myResignAction; 00108 #elif defined(DtIFSPEC1516E) 00109 rti1516e::ResignAction myResignAction; 00110 #else 00111 RTI::ResignAction myResignAction; 00112 #endif 00113 bool myReceivedResignAction; 00114 00115 const char *RESIGN_ACTION_PARAMETER_NAME; 00116 00117 }; 00118 00119 #endif 00120 #endif