![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: repFederationFomModData.h,v $ $Revision: 1.10 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifdef DtMOM 00009 #ifdef DtIFSPEC1516E 00010 00013 00014 #ifndef DtReportFederationFomModuleDataInteraction_H_ 00015 #define DtReportFederationFomModuleDataInteraction_H_ 00016 00017 #include "rtiMsConfig.h" 00018 #include "internalTypes.h" 00019 #include "mInteraction.h" 00020 #include <vlutil/vlList.h> 00021 00022 class DtMomInterCbMgr; 00023 class DtReportFederationFomModuleDataInteraction; 00024 typedef void (*DtReportFederationFomModuleDataInteractionCb) 00025 (const DtReportFederationFomModuleDataInteraction& inter, void* usr); 00026 00027 class DT_DLL_LRC DtReportFederationFomModuleDataInteraction : 00028 public DtReportInteraction 00029 { 00030 public: 00031 00033 DtReportFederationFomModuleDataInteraction(); 00034 00036 virtual ~DtReportFederationFomModuleDataInteraction(); 00037 00039 DtReportFederationFomModuleDataInteraction( 00040 const DtReportFederationFomModuleDataInteraction& orig); 00041 00043 DtReportFederationFomModuleDataInteraction& operator=( 00044 const DtReportFederationFomModuleDataInteraction& orig); 00045 00048 virtual const DtPhvps& phvps(); 00049 00052 virtual bool setFromPhvps(const DtPhvps& phvps); 00053 00055 virtual MAKRti::DtU32 fomModuleIndicator() const; 00056 virtual void setFomModuleIndicator(MAKRti::DtU32 data); 00057 00059 virtual const std::wstring& fomModuleData() const; 00060 virtual void setFomModuleData(const std::wstring& data); 00061 00062 public: 00064 static DtReportInteraction* create(); 00065 00067 static void addCallback(DtMomInterCbMgr* callBackManager, 00068 DtReportFederationFomModuleDataInteractionCb cb, void* usr); 00069 static void removeCallback(DtMomInterCbMgr* callBackManager, 00070 DtReportFederationFomModuleDataInteractionCb cb, void* usr); 00071 00072 protected: 00073 00075 virtual void encodeFomModuleIndicator( 00076 const DtMomInteraction& data, 00077 DtPhvps* parameters, 00078 DtParameterHandle parameterHandle); 00079 00081 virtual void decodeFomModuleIndicator( 00082 DtMomInteraction* data, 00083 const DtPhvps& parameters, 00084 int index); 00085 00087 virtual void encodeFomModuleData( 00088 const DtMomInteraction& data, 00089 DtPhvps* parameters, 00090 DtParameterHandle parameterHandle); 00091 00093 virtual void decodeFomModuleData( 00094 DtMomInteraction* data, 00095 const DtPhvps& parameters, 00096 int index); 00097 00098 public: 00099 static const char* theInteractionName; 00100 00101 protected: 00103 MAKRti::DtU32 myFomModuleIndicator; 00104 bool myReceivedFomModuleIndicator; 00105 std::wstring myFomModuleData; 00106 bool myReceivedFomModuleData; 00107 00108 const char *FOM_MODULE_INDICATOR_PARAMETER_NAME; 00109 const char *FOM_MODULE_DATA_PARAMETER_NAME; 00110 00111 }; 00112 00113 #endif 00114 #endif 00115 #endif