17 typedef struct DtNetDIGuyCustomPdu
25 } DtNetDIGuyCustomPdu;
28 enum DtDIGuyCustomPduMsgId
30 DtDIGuyMsgIdEscapeReserved = 0,
31 DtDIGuyMsgIdSetCharType = 1,
32 DtDIGuyMsgIdSetCharAppearance = 2,
33 DtDIGuyMsgIdSetCharAction = 3,
34 DtDIGuyMsgIdSetCharVisible = 4
37 class DtDIGuyCustomPdu;
41 typedef void (*DtDIGuyCustomPduCb)(DtDIGuyCustomPdu* pdu,
void* usr);
50 enum { PduStaticSize = 23 };
58 DtDIGuyCustomPdu(
const DtNetDIGuyCustomPdu* initial,
62 virtual ~DtDIGuyCustomPdu();
65 DtDIGuyCustomPdu(
const DtDIGuyCustomPdu& other);
68 DtDIGuyCustomPdu&
operator=(
const DtDIGuyCustomPdu& other);
72 virtual DtNetDIGuyCustomPdu* netDIGuyCustomPdu();
73 virtual const DtNetDIGuyCustomPdu* netDIGuyCustomPdu()
const;
82 virtual void setMessageVersion(
int version);
83 virtual int messageVersion()
const;
88 virtual void setMessageId(DtDIGuyCustomPduMsgId msgId);
89 virtual DtDIGuyCustomPduMsgId messageId()
const;
100 virtual void setDataSize(
unsigned int size);
101 virtual unsigned int dataSize()
const;
107 virtual void addShort(
short value);
112 virtual void addLong(
long value);
117 virtual void addFloat(
float value);
123 virtual void addString(
const DtString& str);
138 virtual bool pullShort(
short& value,
unsigned int& byteoffset)
const;
139 virtual bool pullLong(
long& value,
unsigned int& byteoffset)
const;
140 virtual bool pullFloat(
float& value,
unsigned int& byteoffset)
const;
141 virtual bool pullString(
DtString& value,
unsigned int& byteoffset)
const;
146 virtual void getData(
unsigned char* buff)
const;
147 virtual void* data();
148 void setData(
unsigned char* data,
int numBytes);
152 virtual void printData()
const;
155 virtual void printDataToStream(std::ostream& stream)
const;
164 static void addCallback(
DtExerciseConn* conn, DtDIGuyCustomPduCb cb,
168 static void removeCallback(
DtExerciseConn* conn, DtDIGuyCustomPduCb cb,
173 static void addCallback(
DtExerciseConn* conn, DtDIGuyCustomPduCb cb,
174 void* usr, DtDIGuyCustomPduMsgId
id);
178 static void removeCallback(
DtExerciseConn* conn, DtDIGuyCustomPduCb cb,
179 void* usr, DtDIGuyCustomPduMsgId
id);
185 static void setCustomPduKind(
DtPduKind pduKind);
189 virtual DtPduKind internalGetPduKind()
const;