16 typedef struct DtNetDIGuyCustomPdu
24 } DtNetDIGuyCustomPdu;
27 enum DtDIGuyCustomPduMsgId
29 DtDIGuyMsgIdEscapeReserved = 0,
30 DtDIGuyMsgIdSetCharType = 1,
31 DtDIGuyMsgIdSetCharAppearance = 2,
32 DtDIGuyMsgIdSetCharAction = 3,
33 DtDIGuyMsgIdSetCharVisible = 4
36 class DtDIGuyCustomPdu;
40 typedef void (*DtDIGuyCustomPduCb)(DtDIGuyCustomPdu* pdu,
void* usr);
49 enum { PduStaticSize = 23 };
57 DtDIGuyCustomPdu(
const DtNetDIGuyCustomPdu* initial,
61 virtual ~DtDIGuyCustomPdu();
64 DtDIGuyCustomPdu(
const DtDIGuyCustomPdu& other);
67 DtDIGuyCustomPdu&
operator=(
const DtDIGuyCustomPdu& other);
71 virtual DtNetDIGuyCustomPdu* netDIGuyCustomPdu();
72 virtual const DtNetDIGuyCustomPdu* netDIGuyCustomPdu()
const;
81 virtual void setMessageVersion(
int version);
82 virtual int messageVersion()
const;
87 virtual void setMessageId(DtDIGuyCustomPduMsgId msgId);
88 virtual DtDIGuyCustomPduMsgId messageId()
const;
99 virtual void setDataSize(
unsigned int size);
100 virtual unsigned int dataSize()
const;
106 virtual void addShort(
short value);
111 virtual void addLong(
long value);
116 virtual void addFloat(
float value);
122 virtual void addString(
const DtString& str);
137 virtual bool pullShort(
short& value,
unsigned int& byteoffset)
const;
138 virtual bool pullLong(
long& value,
unsigned int& byteoffset)
const;
139 virtual bool pullFloat(
float& value,
unsigned int& byteoffset)
const;
140 virtual bool pullString(
DtString& value,
unsigned int& byteoffset)
const;
145 virtual void getData(
unsigned char* buff)
const;
146 virtual void* data();
147 void setData(
unsigned char* data,
int numBytes);
151 virtual void printData()
const;
154 virtual void printDataToStream(std::ostream& stream)
const;
163 static void addCallback(
DtExerciseConn* conn, DtDIGuyCustomPduCb cb,
167 static void removeCallback(
DtExerciseConn* conn, DtDIGuyCustomPduCb cb,
174 static void setCustomPduKind(
DtPduKind pduKind);
178 virtual DtPduKind internalGetPduKind()
const;