VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
actionRequestRPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include "hostStructs.h"
15 #include "pduWithData.h"
16 #include <vlpi/idTypeMap.h>
17 #include "packets/actReqRP.h"
18 #include "exerciseConn.h"
19 
21 
22 
24 typedef void (*DtActionRequestRPduCb)(DtActionRequestRPdu* pdu, void* usr);
25 
26 
31 {
32 public:
36  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
38 
40  virtual ~DtActionRequestRPdu();
41 
44 
46  virtual void setRequestId(unsigned long id);
47  virtual unsigned long requestId() const;
48 
50  virtual void setActionId(unsigned long id);
51  virtual unsigned long actionId() const;
52 
54  virtual void setReqRelService(DtRequiredReliabilityService value);
55  virtual DtRequiredReliabilityService reqRelService() const;
56 
58  virtual void printData() const;
59 
61  virtual void printDataToStream(std::ostream& stream) const;
62 
63 public:
66  static DtPdu* create(const DtNetPacket* initial,
67  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
68 
71  static void addCallback(DtExerciseConn* conn,
72  DtActionRequestRPduCb cb, void* usr);
73  static void removeCallback(DtExerciseConn* conn,
74  DtActionRequestRPduCb cb, void* usr);
75 
76 protected:
78  virtual DtPduKind internalGetPduKind() const;
79 
81  virtual DtNetDataPduTail* dataSection() const;
82 
83 protected:
84 
85  static const int theStaticSize;
86 
87 };
88 
90 {
92 }
93 
94 #endif

Document ID: Generated on Fri Dec 2 02:42:08 EST 2016 from SVN revision 171416
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)