![]() |
MAK RTIspy API Documentation for HLA Evolved
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: serChgIntTra.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifdef DtMOM 00009 00012 00013 #ifndef DtChangeInteractionTransportationTypeInteraction_H_ 00014 #define DtChangeInteractionTransportationTypeInteraction_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 DtChangeInteractionTransportationTypeInteraction; 00023 typedef void (*DtChangeInteractionTransportationTypeInteractionCb) 00024 (const DtChangeInteractionTransportationTypeInteraction& inter, void* usr); 00025 00026 class DT_DLL_LRC DtChangeInteractionTransportationTypeInteraction : 00027 public DtServiceInteraction 00028 { 00029 public: 00030 00032 DtChangeInteractionTransportationTypeInteraction(); 00033 00035 virtual ~DtChangeInteractionTransportationTypeInteraction(); 00036 00038 DtChangeInteractionTransportationTypeInteraction( 00039 const DtChangeInteractionTransportationTypeInteraction& orig); 00040 00042 DtChangeInteractionTransportationTypeInteraction& operator=( 00043 const DtChangeInteractionTransportationTypeInteraction& orig); 00044 00047 virtual const DtPhvps& phvps(); 00048 00051 virtual bool setFromPhvps(const DtPhvps& phvps); 00052 00054 virtual DtInteractionClassHandle interactionHandle() const; 00055 virtual void setInteractionHandle(DtInteractionClassHandle data); 00056 00058 virtual MAKRti::DtTransportType transport() const; 00059 virtual void setTransport( MAKRti::DtTransportType data ); 00060 00061 00062 public: 00064 static DtServiceInteraction* create(); 00065 00067 static void addCallback(DtMomInterCbMgr* callBackManager, 00068 DtChangeInteractionTransportationTypeInteractionCb cb, void* usr); 00069 static void removeCallback(DtMomInterCbMgr* callBackManager, 00070 DtChangeInteractionTransportationTypeInteractionCb cb, void* usr); 00071 00072 protected: 00073 00075 virtual void encodeInteractionHandle( 00076 const DtMomInteraction& data, 00077 DtPhvps* parameters, 00078 DtParameterHandle parameterHandle); 00079 00081 virtual void decodeInteractionHandle( 00082 DtMomInteraction* data, 00083 const DtPhvps& parameters, 00084 int index); 00085 00087 virtual void encodeTransportType( 00088 const DtMomInteraction& data, 00089 DtPhvps* parameters, 00090 DtParameterHandle parameterHandle); 00091 00093 virtual void decodeTransportType( 00094 DtMomInteraction* data, 00095 const DtPhvps& parameters, 00096 int index); 00097 00098 public: 00099 static const char* theInteractionName; 00100 00101 protected: 00103 DtInteractionClassHandle myInteractionHandle; 00104 MAKRti::DtTransportType myTransport; 00105 bool myReceivedInteractionHandle; 00106 bool myReceivedTransport; 00107 00108 const char *INTERACTION_HANDLE_PARAMETER_NAME; 00109 const char *TRANSPORT_TYPE_PARAMETER_NAME; 00110 00111 }; 00112 00113 #endif 00114 #endif