![]() |
MAK RTIspy API Documentation for HLA Evolved
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: serSynAch.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifdef DtMOM 00009 00012 00013 #ifndef DtSynchronizationPointAchievedInteraction_H_ 00014 #define DtSynchronizationPointAchievedInteraction_H_ 00015 00016 #include "rtiMsConfig.h" 00017 #include "internalTypes.h" 00018 #include "mInteraction.h" 00019 #include <vlutil/vlList.h> 00020 00021 class DtMomInterCbMgr; 00022 class DtSynchronizationPointAchievedInteraction; 00023 typedef void (*DtSynchronizationPointAchievedInteractionCb) 00024 (const DtSynchronizationPointAchievedInteraction& inter, void* usr); 00025 00026 class DT_DLL_LRC DtSynchronizationPointAchievedInteraction : 00027 public DtServiceInteraction 00028 { 00029 public: 00030 00032 DtSynchronizationPointAchievedInteraction(); 00033 00035 virtual ~DtSynchronizationPointAchievedInteraction(); 00036 00038 DtSynchronizationPointAchievedInteraction( 00039 const DtSynchronizationPointAchievedInteraction& orig); 00040 00042 DtSynchronizationPointAchievedInteraction& operator=( 00043 const DtSynchronizationPointAchievedInteraction& orig); 00044 00047 virtual const DtPhvps& phvps(); 00048 00051 virtual bool setFromPhvps(const DtPhvps& phvps); 00052 00054 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E) 00055 virtual std::wstring const & label() const; 00056 virtual std::wstring & label(); 00057 virtual void setLabel(std::wstring const & data); 00058 #else 00059 virtual MAKRti::DtString const & label() const; 00060 virtual void setLabel(MAKRti::DtString const & data); 00061 #endif 00062 00063 00064 public: 00066 static DtServiceInteraction* create(); 00067 00069 static void addCallback(DtMomInterCbMgr* callBackManager, 00070 DtSynchronizationPointAchievedInteractionCb cb, void* usr); 00071 static void removeCallback(DtMomInterCbMgr* callBackManager, 00072 DtSynchronizationPointAchievedInteractionCb cb, void* usr); 00073 00074 protected: 00075 00077 virtual void encodeLabel( 00078 const DtMomInteraction& data, 00079 DtPhvps* parameters, 00080 DtParameterHandle parameterHandle); 00081 00083 virtual void decodeLabel( 00084 DtMomInteraction* data, 00085 const DtPhvps& parameters, 00086 int index); 00087 00088 public: 00089 static const char* theInteractionName; 00090 00091 protected: 00093 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E) 00094 std::wstring myLabel; 00095 #else 00096 MAKRti::DtString myLabel; 00097 #endif 00098 bool myReceivedLabel; 00099 00100 const char *LABEL_PARAMETER_NAME; 00101 00102 }; 00103 00104 #endif 00105 #endif