VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
intercomSignalPdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
11 #if DtDIS
12 
13 #include <vlutil/vlMachineTypes.h>
14 #include "hostStructs.h"
15 #include "interactionDIS.h"
16 #include "exerciseConn.h"
17 
18 #include "packets/intercmSigP.h"
19 
20 
22 
24 typedef void (*DtIntercomSignalPduCb)(DtIntercomSignalPdu* pdu, void* usr);
25 
26 
31 {
32 
33 public:
34 
38  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
40 
42  virtual ~DtIntercomSignalPdu();
43 
46 
48  virtual void setTransEntityID(const DtEntityIdentifier& entity);
49  virtual const DtEntityIdentifier& transEntityID() const;
50 
52  virtual void setDeviceID(DtU16 intercomID);
53  virtual DtU16 deviceID() const;
54 
56  virtual void setEncodingClass(DtEncodingClass encClass);
57  virtual DtEncodingClass encodingClass() const;
58 
60  virtual void setEncodingType(DtU16 encType);
61  virtual DtU16 encodingType() const;
62 
64  virtual void setTDL_Type(DtU16 TDL_Type);
65  virtual DtU16 TDL_Type() const;
66 
68  virtual void setSampleRate(DtU32 rate);
69  virtual DtU32 sampleRate() const;
70 
72  virtual void setNumDataBits(DtU16 lengthInBits);
73  virtual DtU16 numDataBits() const;
74 
76  virtual void setNumDataBytes(DtU16 lengthInBytes);
77  virtual DtU16 numDataBytes() const;
78 
80  virtual void setNumSamples(DtU16 samples);
81  virtual DtU16 numSamples() const;
82 
84  virtual void setDataByte(int byteNum, DtU8 data);
85  virtual DtU8 dataByte(int byteNum) const;
86 
90  virtual void setData(const DtU8* data, int numBytes);
91  virtual void getData(DtU8* buff) const;
92 
94  virtual void printData() const;
95 
97  virtual void printDataToStream(std::ostream& stream) const;
98 
99 public:
100 
103  static DtPdu* create(const DtNetPacket* initial,
104  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
105 
108  static void addCallback(DtExerciseConn* conn,
109  DtIntercomSignalPduCb cb, void* usr);
110  static void removeCallback(DtExerciseConn* conn,
111  DtIntercomSignalPduCb cb, void* usr);
112 
113 protected:
114 
116  virtual DtPduKind internalGetPduKind() const;
117 
119  virtual DtNetIntercomSignalPdu* netPduStruct() const;
120 
123  DtIntercomSignalPdu* self() const;
124 
126  virtual char* var() const;
127 
128 protected:
129 
131  static const int theStaticSize;
132 
133 protected:
134 
137 
138 };
139 
140 #endif
DtInteraction is an base class for representing DIS PDUs which don&#39;t have state.
Definition: interactionDIS.h:24
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
DtInteraction & operator=(const DtInteraction &orig)
assignment operator
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: pduHeader.h:14
class DtPduFactory:
Definition: pduFactory.h:38
virtual void printDataToStream(std::ostream &stream) const
The following is the network structure for the intercom signal PDU.
Definition: intercmSigP.h:17
virtual DtPduKind internalGetPduKind() const =0
Returns the PDU kind associated with the derived PDU class.
DtPdu is the base class for all PDU&#39;s in VR-Link.
Definition: pdu.h:69
unsigned char DtU8
An eight bit unsigned integer value.
Definition: vlMachineTypes.h:137
DtEntityIdentifier myEntityID
Temporary object for reference returns.
Definition: intercomSignalPdu.h:136
static const int theStaticSize
Size of PDU with zero data bytes.
Definition: intercomSignalPdu.h:131
Instances of DtIntercomSignalPdu are used to send simulated intercom signal data. ...
Definition: intercomSignalPdu.h:30
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
This file provides protocol to independence DtExerciseConn.
virtual void printData() const
Print the PDU&#39;s data (not including header).
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
DtEncodingClass
Definition: disEnums.h:917
unsigned short DtU16
A 16 bit unsigned integer value.
Definition: vlMachineTypes.h:140
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
unsigned long DtU32
A 32 bit unsigned integer value.
Definition: vlMachineTypes.h:153
DtPduKind
([UID 4]) - PDU Type
Definition: disEnums.h:238
void(* DtIntercomSignalPduCb)(DtIntercomSignalPdu *pdu, void *usr)
DtIntercomSignalPdu callback function signature.
Definition: intercomSignalPdu.h:24
This file contains typedefs for machine dependant types.

Document ID: Generated on Mon Apr 25 03:39:01 EDT 2022 from SVN revision 242502
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)