![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00008 00009 #ifndef DtIntercomSignalPdu_H_ 00010 #define DtIntercomSignalPdu_H_ 00011 00012 #if DtDIS 00013 00014 #include <vlutil/vlMachineTypes.h> 00015 #include "hostStructs.h" 00016 #include "dInteraction.h" 00017 #include "exerciseConn.h" 00018 00019 #include "packets/intercmSigP.h" 00020 00021 00022 class DT_DLL_VL DtIntercomSignalPdu; 00023 00025 typedef void (*DtIntercomSignalPduCb)(DtIntercomSignalPdu* pdu, void* usr); 00026 00027 00031 class DT_DLL_VL DtIntercomSignalPdu : public DtInteraction 00032 { 00033 00034 public: 00035 00037 DtIntercomSignalPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00038 DtIntercomSignalPdu(const DtNetIntercomSignalPdu* initial, 00039 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00040 DtIntercomSignalPdu(const DtIntercomSignalPdu& orig); 00041 00043 virtual ~DtIntercomSignalPdu(); 00044 00046 DtIntercomSignalPdu& operator=(const DtIntercomSignalPdu& orig); 00047 00049 virtual void setTransEntityID(const DtEntityIdentifier& entity); 00050 virtual const DtEntityIdentifier& transEntityID() const; 00051 00053 virtual void setDeviceID(DtU16 intercomID); 00054 virtual DtU16 deviceID() const; 00055 00057 virtual void setEncodingClass(DtEncodingClass encClass); 00058 virtual DtEncodingClass encodingClass() const; 00059 00061 virtual void setEncodingType(DtU16 encType); 00062 virtual DtU16 encodingType() const; 00063 00065 virtual void setTDL_Type(DtU16 TDL_Type); 00066 virtual DtU16 TDL_Type() const; 00067 00069 virtual void setSampleRate(DtU32 rate); 00070 virtual DtU32 sampleRate() const; 00071 00073 virtual void setNumDataBits(DtU16 lengthInBits); 00074 virtual DtU16 numDataBits() const; 00075 00077 virtual void setNumDataBytes(DtU16 lengthInBytes); 00078 virtual DtU16 numDataBytes() const; 00079 00081 virtual void setNumSamples(DtU16 samples); 00082 virtual DtU16 numSamples() const; 00083 00085 virtual void setDataByte(int byteNum, DtU8 data); 00086 virtual DtU8 dataByte(int byteNum) const; 00087 00091 virtual void setData(const DtU8* data, int numBytes); 00092 virtual void getData(DtU8* buff) const; 00093 00095 virtual void printData() const; 00096 00098 virtual void printDataToStream(std::ostream& stream) const; 00099 00100 public: 00101 00104 static DtPdu* create(const DtNetPacket* initial, 00105 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00106 00109 static void addCallback(DtExerciseConn* conn, 00110 DtIntercomSignalPduCb cb, void* usr); 00111 static void removeCallback(DtExerciseConn* conn, 00112 DtIntercomSignalPduCb cb, void* usr); 00113 00114 protected: 00115 00117 virtual DtPduKind internalGetPduKind() const; 00118 00120 virtual DtNetIntercomSignalPdu* netPduStruct() const; 00121 00124 DtIntercomSignalPdu* self() const; 00125 00127 virtual char* var() const; 00128 00129 protected: 00130 00132 static const int theStaticSize; 00133 00134 protected: 00135 00137 DtEntityIdentifier myEntityID; 00138 00139 }; 00140 00141 #endif 00142 #endif 00143