VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
designatorPdu.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #if DtDIS
12 
13 #include "hostStructs.h"
14 #include "stateMsg.h"
15 #include <matrix/vlMath.h>
16 #include "packets/designateP.h"
17 
18 
19 class DtExerciseConn;
20 class DtDesignatorPdu;
21 
23 typedef void (*DtDesignatorPduCb)( DtDesignatorPdu* pdu, void* usr );
24 
29 {
30 public:
32  enum {
33  DtDesignatorStaticSizeVERS5 = 88,
34  DtDesignatorStaticSizeVERS4 = 72
35  };
36 
38  enum { PduStaticSize = DtDesignatorStaticSizeVERS5 };
39 
40 public:
43 
45  DtDesignatorPdu( const DtNetDesignatorPdu* initial,
46  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0 );
47 
50  static DtPdu* create( const DtNetPacket* initial,
51  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0 );
52 
54  static void addCallback( DtExerciseConn* conn,
55  DtDesignatorPduCb cb, void* usr );
56 
58  static void removeCallback( DtExerciseConn* conn,
59  DtDesignatorPduCb cb, void* usr );
60 
62  const DtEntityIdentifier& designatingEntityId() const;
64  void setDesignatingEntityId( const DtEntityIdentifier& id );
66 
68  DtDesignatorCodeName codeName() const;
70  void setCodeName( DtDesignatorCodeName name );
72 
74  const DtEntityIdentifier& designatedEntityId() const;
76  void setDesignatedEntityId( const DtEntityIdentifier& id );
78 
80  DtDesignatorCode designatorCode() const;
82  void setDesignatorCode( DtDesignatorCode code );
84 
86  float power() const;
88  void setPower( float power );
90 
92  float wavelength() const;
94  void setWavelength( float wavelength );
96 
98  const DtVector& designatorSpotRelative() const;
100  void setDesignatorSpotRelative( const DtVector& loc );
102 
104  const DtVector& designatorSpotWorld() const;
107  void setDesignatorSpotWorld( const DtVector& loc );
109 
111  DtDeadReckonTypes deadReckoningAlgorithm() const;
113  void setDeadReckoningAlgorithm( DtDeadReckonTypes alg );
115 
117  const DtVector& linearAcceleration() const;
119  void setLinearAcceleration( const DtVector& acc );
121 
123  virtual void printData() const;
125 
127  virtual void printDataToStream(std::ostream& stream) const;
129 
130 protected:
134 };
135 
136 #endif
Definition: disEnums.h:265
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
Instances of DtDesignatorPduare used to communicate information about designator objects in DIS...
Definition: designatorPdu.h:28
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
This file declares the class DtNetDesignatorPdu.
Definition: pduHeader.h:14
DtEntityIdentifier theId
Definition: designatorPdu.h:132
class DtPduFactory:
Definition: pduFactory.h:38
virtual void printDataToStream(std::ostream &stream) const
This file defines math constants and methods which may be useful in simulations.
DtVector loc
Definition: designatorPdu.h:133
DtDesignatorCodeName
Definition: disEnums.h:727
Definition: vlVector.h:224
DtPdu is the base class for all PDU&#39;s in VR-Link.
Definition: pdu.h:69
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
virtual void printData() const
Print the PDU&#39;s data (not including header).
void(* DtDesignatorPduCb)(DtDesignatorPdu *pdu, void *usr)
DtDesignatorPdu callback function signature.
Definition: designatorPdu.h:23
DtDesignatorCode
Definition: disEnums.h:733
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
Definition: designateP.h:18
DtDeadReckonTypes
Definition: disEnums.h:1013
DtPduKind
([UID 4]) - PDU Type
Definition: disEnums.h:238
DtPduKind internalGetPduKind() const
Returns the PDU kind associated with the derived PDU class.
Definition: designatorPdu.h:131
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21

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)