VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
actionRequestPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 MAK Technologies, Inc
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 
19 
20 /***********************************************/
21 /************* ACTION REQUEST PDU *************/
22 /***********************************************/
23 
24 
25 class DT_DLL_VL DtActionRequestPdu;
26 typedef DtActionRequestPdu DtActionRequestInteraction;
27 
29 typedef void (*DtActionRequestInteractionCb)
30  (DtActionRequestInteraction *pdu, void *usr);
31 
35 class DT_DLL_VL DtActionRequestPdu : public DtPduWithData
36 {
37 public:
38  enum { PduStaticSize=40 };
39 public:
41  DtActionRequestPdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
42  DtActionRequestPdu(const DtNetActionRequestPdu *initial,
43  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
44 
47  static DtPdu *create(const DtNetPacket *initial,
48  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
49 
52  static void addCallback(DtExerciseConn *conn,
53  DtActionRequestInteractionCb cb, void *usr);
54  static void removeCallback(DtExerciseConn *conn,
55  DtActionRequestInteractionCb cb, void *usr);
56 
58  unsigned long requestId() const;
59  void setRequestId(unsigned long id);
60 
62  unsigned long actionId() const;
63  void setActionId(unsigned long id);
64 
66  virtual void printData() const;
67 
69  virtual void printDataToStream(std::ostream& stream) const;
70 
71 protected:
73  DtPduKind internalGetPduKind() const {return DtActionRequestPduKind;}
74 
76  DtNetDataPduTail *dataSection() const;
77 };
78 
79 /***********************************************/
80 /************* ACTION RESPONSE PDU *************/
81 /***********************************************/
82 
83 
84 class DT_DLL_VL DtActionResponsePdu;
85 typedef DtActionResponsePdu DtActionResponseInteraction;
86 
88 typedef void (*DtActionResponseInteractionCb)(DtActionResponsePdu *pdu, void *usr);
89 
93 class DT_DLL_VL DtActionResponsePdu : public DtPduWithData
94 {
95 public:
96 
97  enum { PduStaticSize=40 };
98 
99 public:
101  DtActionResponsePdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
102  DtActionResponsePdu(const DtNetActionResponsePdu *initial,
103  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
104 
107  static DtPdu *create(const DtNetPacket *initial,
108  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
109 
112  static void addCallback(DtExerciseConn *conn,
113  DtActionResponseInteractionCb cb, void *usr);
114  static void removeCallback(DtExerciseConn *conn,
115  DtActionResponseInteractionCb cb, void *usr);
116 
118  unsigned long requestId() const;
119  void setRequestId(unsigned long id);
120 
122  DtRequestStatus requestStatus() const;
123  void setRequestStatus(DtRequestStatus rStatus);
124 
126  virtual void printData() const;
127 
129  virtual void printDataToStream(std::ostream& stream) const;
130 
131 protected:
133  DtPduKind internalGetPduKind() const {return DtActionResponsePduKind;}
134 
136  DtNetDataPduTail *dataSection() const;
137 };
138 
139 #endif
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
void(* DtActionRequestInteractionCb)(DtActionRequestInteraction *inter, void *usr)
ActionRequest interaction callback function signature.
Definition: actionRequestInteractionHLA.h:27
Instances of DtActionRequestInteraction are used to represent ActionRequest Interactions in the RPR F...
Definition: actionRequestInteractionHLA.h:35
Definition: pduHeader.h:14
Definition: dataP4.h:53
class DtActionResponseInteraction:
Definition: actionResponseInteractionHLA.h:36
DtRequestStatus
Definition: disEnums.h:465
DtPdu is the base class for all PDU&#39;s in VR-Link.
Definition: pdu.h:69
Definition: simanP4.h:58
Definition: simanP4.h:71
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
Definition: disEnums.h:257
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
void(* DtActionResponseInteractionCb)(DtActionResponseInteraction *inter, void *usr)
ActionResponse interaction callback function signature.
Definition: actionResponseInteractionHLA.h:27
DtPduKind
([UID 4]) - PDU Type
Definition: disEnums.h:238
Definition: disEnums.h:256

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)