![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef hCrtObjResInt_H_ 00008 #define hCrtObjResInt_H_ 00009 00010 #if DtHLA 00011 00012 #include "hIntWEncDec.h" 00013 #include "hostStructs.h" 00014 #include <matrix/vlMath.h> 00015 00016 00017 00021 00022 class DT_DLL_VL DtCreateObjectResultInter; 00023 class DT_DLL_VL DtExerciseConn; 00024 00025 00027 typedef void (*DtCreateObjectResultInterCb) 00028 (DtCreateObjectResultInter* inter, void* usr); 00029 00030 00031 00035 class DT_DLL_VL DtCreateObjectResultInter : public DtInteractionWithEncDec 00036 { 00037 public: 00038 00040 DtCreateObjectResultInter(); 00041 00043 virtual ~DtCreateObjectResultInter(); 00044 00046 DtCreateObjectResultInter(const DtCreateObjectResultInter& orig); 00047 00049 DtCreateObjectResultInter& operator=( 00050 const DtCreateObjectResultInter& orig); 00051 00053 virtual void printData() const; 00054 00056 virtual void printDataToStream(std::ostream& stream) const; 00057 00059 virtual void setCreateObjectResult(DtCreateObjectResult result); 00060 virtual DtCreateObjectResult createObjectResult() const; 00061 00063 virtual void setRequestId(DtU32 id); 00064 virtual DtU32 requestId() const; 00065 00067 virtual const char* name() const; 00068 00069 public: 00070 00073 static DtInteraction* create(); 00074 00077 static void addCallback(DtExerciseConn* conn, 00078 DtCreateObjectResultInterCb cb, void* usr, 00079 DtDDMRegionSP region = DtDDMRegionSP()); 00080 static void removeCallback(DtExerciseConn* conn, 00081 DtCreateObjectResultInterCb cb, void* usr, 00082 DtDDMRegionSP region = DtDDMRegionSP()); 00083 00084 protected: 00085 00086 DtCreateObjectResult myCreateObjectResult; 00087 DtU32 myRequestId; 00088 }; 00089 00090 inline void DtCreateObjectResultInter::setCreateObjectResult( 00091 DtCreateObjectResult result) 00092 { 00093 myCreateObjectResult = result; 00094 } 00095 00096 inline DtCreateObjectResult DtCreateObjectResultInter:: 00097 createObjectResult() const 00098 { 00099 return myCreateObjectResult; 00100 } 00101 00102 inline void DtCreateObjectResultInter::setRequestId(DtU32 id) 00103 { 00104 myRequestId = id; 00105 } 00106 00107 inline DtU32 DtCreateObjectResultInter::requestId() const 00108 { 00109 return myRequestId; 00110 } 00111 00112 inline const char* DtCreateObjectResultInter::name() const 00113 { 00114 return "DtCreateObjectResultInter"; 00115 } 00116 00117 #endif 00118 #endif 00119 00120