VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
minefieldResponseNackPdu.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 "interactionDIS.h"
17 #include "exerciseConn.h"
18 
19 #include "packets/mineRsNackP.h"
20 
21 
22 class DT_DLL_VL DtMinefieldResponseNackPdu;
23 
25 typedef void (*DtMinefieldResponseNackPduCb)
26  (DtMinefieldResponseNackPdu* pdu, void* usr);
27 
31 class DT_DLL_VL DtMinefieldResponseNackPdu : public DtInteraction
32 {
33 
34 public:
35 
37  DtMinefieldResponseNackPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
38  DtMinefieldResponseNackPdu(const DtNetMinefieldResponseNackPdu* initial,
39  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
40  DtMinefieldResponseNackPdu(const DtMinefieldResponseNackPdu& orig);
41 
43  virtual ~DtMinefieldResponseNackPdu();
44 
46  DtMinefieldResponseNackPdu& operator=(
47  const DtMinefieldResponseNackPdu& orig);
48 
50  virtual void setMinefieldID(const DtEntityIdentifier& id);
51  virtual const DtEntityIdentifier& minefieldID() const;
52 
54  virtual void setRequestingEntityID(const DtEntityIdentifier& id);
55  virtual const DtEntityIdentifier& requestingEntityID() const;
56 
58  virtual void setRequestID(DtU8 id);
59  virtual DtU8 requestID() const;
60 
62  virtual bool setNumMissingPDUs(DtU8 num);
63  virtual DtU8 numMissingPDUs() const;
64 
67  virtual bool setPDU_SequenceNumber(int index, DtU8 num);
68  virtual bool getPDU_SequenceNumber(int index, DtU8& num) const;
69 
71  virtual void printData() const;
72 
74  virtual void printDataToStream(std::ostream& stream) const;
75 
76 public:
77 
80  static DtPdu* create(const DtNetPacket* initial,
81  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
82 
85  static void addCallback(DtExerciseConn* conn,
86  DtMinefieldResponseNackPduCb cb, void* usr);
87  static void removeCallback(DtExerciseConn* conn,
88  DtMinefieldResponseNackPduCb cb, void* usr);
89 
90 protected:
91 
93  virtual DtPduKind internalGetPduKind() const;
94 
96  virtual DtNetMinefieldResponseNackPdu* netPduStruct() const;
97 
99  virtual char* var() const;
100 
103  DtMinefieldResponseNackPdu* self() const;
104 
105 protected:
106 
108  static const int theStaticSize;
109 
110 protected:
111 
113  DtEntityIdentifier myEntityID;
114 
115 };
116 
117 #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)