VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
dataPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
11 #if DtDIS
12 
13 #include "hostStructs.h"
14 #include "pduWithData.h"
15 #include <vlpi/idTypeMap.h>
16 
17 
19 class DT_DLL_VL DtDataPdu;
20 typedef DtDataPdu DtDataInteraction;
21 
23 typedef void (*DtDataPduCb)(DtDataPdu *pdu, void *usr);
24 
28 class DT_DLL_VL DtDataPdu : public DtPduWithData
29 {
30 
31 public:
32  enum { PduStaticSize=40 };
33 
34 public:
36  DtDataPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
37  DtDataPdu(const DtNetDataPdu *initial,
38  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
39 
42  static DtPdu *create(const DtNetPacket *initial,
43  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
44 
46  virtual unsigned long requestId() const;
47  virtual void setRequestId(unsigned long id);
48 
50  virtual void printData() const;
51 
53  virtual void printDataToStream(std::ostream& stream) const;
54 
55 public:
58  static void addCallback(
59  DtExerciseConn *conn, DtDataPduCb cb, void *usr);
60  static void removeCallback(
61  DtExerciseConn *conn, DtDataPduCb cb, void *usr);
62 
63 protected:
65  DtPduKind internalGetPduKind() const {return DtDataPduKind;}
66 
68  DtNetDataPduTail *dataSection() const;
69 };
70 
71 #endif

Document ID: Generated on Mon Apr 8 04:49:21 EDT 2019 from SVN revision 197403
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)