VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
dataQueryRPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include "hostStructs.h"
15 #include "simanPdu.h"
16 #include "packets/dataQueryRP.h"
17 #include "exerciseConn.h"
18 
19 
20 
22 
24 typedef void (*DtDataQueryRPduCb)(DtDataQueryRPdu* pdu, void* usr);
25 
30 {
31 public:
34  DtDataQueryRPdu(const DtNetDataQueryRPdu* initial,
35  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
36  DtDataQueryRPdu(const DtDataQueryRPdu& orig);
37 
39  virtual ~DtDataQueryRPdu();
40 
43 
45  virtual void setRequestId(unsigned long id);
46  virtual unsigned long requestId() const;
47 
49  virtual void setTimeInterval(DtTime seconds);
50  virtual DtTime timeInterval() const;
51 
53  virtual unsigned long numFixedFields() const;
54 
56  virtual unsigned long numVarFields() const;
57 
59  virtual int setFixedDatumId(int index, DtDatumParam id);
60  virtual DtDatumParam fixedDatumId(int index) const;
61 
63  virtual int setVarDatumId(int index, DtDatumParam id);
64  virtual DtDatumParam varDatumId(int index) const;
65 
67  virtual void setReqRelService(DtRequiredReliabilityService value);
68  virtual DtRequiredReliabilityService reqRelService() const;
69 
71  virtual void initDatumIds(unsigned long numFixedFields,
72  unsigned long numVarFields);
73 
75  virtual void printData() const;
76 
78  virtual void printDataToStream(std::ostream& stream) const;
79 
80 public:
83  static DtPdu* create(const DtNetPacket* initial,
84  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
85 
88  static void addCallback(DtExerciseConn* conn,
89  DtDataQueryRPduCb cb, void* usr);
90  static void removeCallback(DtExerciseConn* conn,
91  DtDataQueryRPduCb cb, void* usr);
92 
93 protected:
94 
96  virtual DtPduKind internalGetPduKind() const;
97 
98 protected:
99 
100  static const int theStaticSize;
101 
102 };
103 
105 {
106  return DtDataQueryRPduKind;
107 }
108 
109 #endif
DtSimanPdu & operator=(const DtSimanPdu &orig)
Assignment operator.
Definition: simanPdu.h:28
DtRequiredReliabilityService
Reliable service PDU enums.
Definition: disEnums.h:2523
Instances of DtDataQueryRPdu are used to send/receive reliable data query PDUs.
Definition: dataQueryRPdu.h:29
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: pduHeader.h:14
Definition: disEnums.h:301
class DtPduFactory:
Definition: pduFactory.h:38
virtual DtPduKind internalGetPduKind() const =0
Returns the PDU kind associated with the derived PDU class.
DtPdu is the base class for all PDU's in VR-Link.
Definition: pdu.h:69
Definition: dataQueryRP.h:19
DtSimanPdu provides a base class for all of the simulation management PDU's.
Definition: simanPdu.h:23
virtual void printDataToStream(std::ostream &stream) const
Prints the contents of the PDU to the specified stream.
This file provides protocol to independence DtExerciseConn.
virtual DtPduKind internalGetPduKind() const
Returns the internal PDU kind.
Definition: dataQueryRPdu.h:104
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
virtual void printData() const
Prints the contents of the PDU.
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
DtDatumParam
([UID 66]) - Datum ID
Definition: disEnums.h:505
DtPduKind
([UID 4]) - PDU Type
Definition: disEnums.h:238
This file declares the class DtNetDataQueryRPdu.
static const int theStaticSize
Definition: dataQueryRPdu.h:100
void(* DtDataQueryRPduCb)(DtDataQueryRPdu *pdu, void *usr)
DtDataQueryRPdu callback function signature.
Definition: dataQueryRPdu.h:24

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)