![]() |
VR-Link API Documentation for DIS
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 #ifndef DtCreateEntityRPdu_H_ 00007 #define DtCreateEntityRPdu_H_ 00008 00012 00013 #if DtDIS 00014 00015 #include "hostStructs.h" 00016 #include "simanPdu.h" 00017 #include "packets/createEntRP.h" 00018 #include "exerciseConn.h" 00019 00020 00021 class DT_DLL_VL DtCreateEntityRPdu; 00022 00024 typedef void (*DtCreateEntityRPduCb)(DtCreateEntityRPdu* pdu, void* usr); 00025 00026 00030 class DT_DLL_VL DtCreateEntityRPdu : public DtSimanPdu 00031 { 00032 public: 00033 00035 DtCreateEntityRPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00036 DtCreateEntityRPdu(const DtNetCreateEntityRPdu* initial, 00037 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00038 DtCreateEntityRPdu(const DtEntityIdentifier& to, 00039 const DtEntityIdentifier& from, 00040 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00041 DtCreateEntityRPdu(const DtCreateEntityRPdu& orig); 00042 00044 virtual ~DtCreateEntityRPdu(); 00045 00047 DtCreateEntityRPdu& operator=(const DtCreateEntityRPdu& orig); 00048 00050 virtual void setRequestId(int id); 00051 virtual int requestId() const; 00052 00054 virtual void setReqRelService(DtRequiredReliabilityService value); 00055 virtual DtRequiredReliabilityService reqRelService() const; 00056 00058 virtual void printData() const; 00059 00061 virtual void printDataToStream(std::ostream& stream) const; 00062 00063 public: 00064 00067 static DtPdu* create(const DtNetPacket* initial, 00068 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00069 00072 static void addCallback(DtExerciseConn* conn, 00073 DtCreateEntityRPduCb cb, void* usr); 00074 static void removeCallback(DtExerciseConn* conn, 00075 DtCreateEntityRPduCb cb, void* usr); 00076 00077 protected: 00078 00080 virtual DtPduKind internalGetPduKind() const; 00081 00082 protected: 00083 00084 static const int theStaticSize; 00085 00086 }; 00087 00088 inline DtPduKind DtCreateEntityRPdu::internalGetPduKind() const 00089 { 00090 return DtCreateEntityRPduKind; 00091 } 00092 00093 #endif 00094 #endif 00095