![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: repMomException.h,v $ $Revision: 1.5 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtReportMomExceptionInteraction_H_ 00013 #define DtReportMomExceptionInteraction_H_ 00014 #ifdef DtMOM 00015 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E) 00016 00017 #include "rtiMsConfig.h" 00018 #include "internalTypes.h" 00019 #include "mInteraction.h" 00020 #include <vlutil/vlList.h> 00021 00022 class DtMomInterCbMgr; 00023 class DtReportMomExceptionInteraction; 00024 typedef void (*DtReportMomExceptionInteractionCb) 00025 (const DtReportMomExceptionInteraction& inter, void* usr); 00026 00027 00028 class DT_DLL_LRC DtReportMomExceptionInteraction : 00029 public DtReportInteraction 00030 { 00031 public: 00032 00034 DtReportMomExceptionInteraction(); 00035 00037 virtual ~DtReportMomExceptionInteraction(); 00038 00040 DtReportMomExceptionInteraction( 00041 const DtReportMomExceptionInteraction& orig); 00042 00044 DtReportMomExceptionInteraction& operator=( 00045 const DtReportMomExceptionInteraction& orig); 00046 00049 virtual const DtPhvps& phvps(); 00050 00053 virtual bool setFromPhvps(const DtPhvps& phvps); 00054 00056 virtual bool parameterError() const; 00057 virtual void setParameterError(bool data); 00058 00060 virtual std::wstring const & serviceName() const; 00061 virtual void setServiceName(std::wstring const & data); 00062 00064 virtual std::wstring const & exception() const; 00065 virtual void setException(std::wstring const & data); 00066 00067 00068 public: 00070 static DtReportInteraction* create(); 00071 00073 static void addCallback(DtMomInterCbMgr* callBackManager, 00074 DtReportMomExceptionInteractionCb cb, void* usr); 00075 static void removeCallback(DtMomInterCbMgr* callBackManager, 00076 DtReportMomExceptionInteractionCb cb, void* usr); 00077 00078 protected: 00079 00081 virtual void encodeServiceName( 00082 const DtMomInteraction& data, 00083 DtPhvps* parameters, 00084 DtParameterHandle parameterHandle); 00085 00087 virtual void encodeException( 00088 const DtMomInteraction& data, 00089 DtPhvps* parameters, 00090 DtParameterHandle parameterHandle); 00091 00093 virtual void encodeParameterError( 00094 const DtMomInteraction& data, 00095 DtPhvps* parameters, 00096 DtParameterHandle parameterHandle); 00097 00099 virtual void decodeServiceName( 00100 DtMomInteraction* data, 00101 const DtPhvps& parameters, 00102 int index); 00103 00105 virtual void decodeException( 00106 DtMomInteraction* data, 00107 const DtPhvps& parameters, 00108 int index); 00109 00111 virtual void decodeParameterError( 00112 DtMomInteraction* data, 00113 const DtPhvps& parameters, 00114 int index); 00115 00116 public: 00117 static const char* theInteractionName; 00118 00119 protected: 00121 std::wstring myServiceName; 00122 std::wstring myException; 00123 bool myParameterError; 00124 00125 const char *SERVICE_PARAMETER_NAME; 00126 const char *EXCEPTION_PARAMETER_NAME; 00127 const char *ERROR_PARAMETER_NAME; 00128 }; 00129 00130 #endif //! DtIFSPEC1516 00131 #endif //! DtMOM 00132 #endif //! DtReportMomExceptionInteraction_H_