VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
transferControlRequestPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include "hostStructs.h"
16 #include "recordSetPdu.h"
17 #include "exerciseConn.h"
18 
19 #include "packets/transCtlP.h"
20 
21 
23 
25 
27 typedef void (*DtTransferControlRequestPduCb)
28  (DtTransferControlRequestPdu* pdu, void* usr);
29 
30 
35 {
36 
37 public:
38 
42  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
44 
46  virtual ~DtTransferControlRequestPdu();
47 
50  const DtTransferControlRequestPdu& orig);
51 
53  virtual void setOriginatingEntityID(const DtEntityIdentifier& entity);
54  virtual const DtEntityIdentifier& originatingEntityID() const;
55 
57  virtual void setReceivingEntityID(const DtEntityIdentifier& entity);
58  virtual const DtEntityIdentifier& receivingEntityID() const;
59 
61  virtual void setRequestID(DtU32 id);
62  virtual DtU32 requestID() const;
63 
65  virtual void setReqRelService(enum DtRequiredReliabilityService service);
66  virtual DtRequiredReliabilityService reqRelService() const;
67 
69  virtual void setTransferType(DtTransferType type);
70  virtual DtTransferType transferType() const;
71 
73  virtual void setTransferredEntityID(const DtEntityIdentifier& entity);
74  virtual const DtEntityIdentifier& transferredEntityID() const;
75 
77  virtual void printData() const;
78  virtual void printDataToStream(std::ostream& stream) const;
79 
80 public:
81 
84  static DtPdu* create(const DtNetPacket* initial,
85  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
86 
89  static void addCallback(DtExerciseConn* conn,
90  DtTransferControlRequestPduCb cb, void* usr);
91  static void removeCallback(DtExerciseConn* conn,
92  DtTransferControlRequestPduCb cb, void* usr);
93 
94 protected:
95 
98 
100  virtual DtPduKind internalGetPduKind() const;
101 
104  virtual DtNetTransferControlRequestPdu* netPduStruct() const;
105 
108  DtTransferControlRequestPdu* self() const;
109 
110 protected:
111 
113  static const int theStaticSize;
114 
115 protected:
116 
119 
120 };
121 
122 #endif

Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (www.mak.com)