VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
entityDamageStatusPdu.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2013 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include <vl/interaction.h>
16 #include <vl/stateMsgDIS.h>
17 #include <vl/eventId.h>
18 
19 class DtExerciseConn;
24 
27 
28 typedef void (*DtEntityDamageInteractionCb)( DtEntityDamageInteraction* inter, void* usr );
29 
33 {
34 public:
35 
36  static DtPdu* create( const DtNetPacket* initial,
37  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0 );
38 
41 
44  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0 );
45 
47  virtual ~DtEntityDamageStatusPdu();
48 
50  virtual const DtEntityIdentifier& damagedEntityId() const;
52  virtual void setDamagedEntityId( const DtEntityIdentifier& damagedEntityId );
53 
55  virtual void addDamageDescriptionRecord( const DtDirectedEnergyDamageDescriptionRecord& record );
56 
58  virtual void addDamageDescriptionRecords( const std::vector<DtDirectedEnergyDamageDescriptionRecord>& records );
59 
61  virtual void getDamageDescriptionRecords( std::vector<DtDirectedEnergyDamageDescriptionRecord>& records ) const;
62 
64  virtual unsigned int numberOfRecords() const;
65 
66  static void addCallback( DtExerciseConn* conn, DtEntityDamageInteractionCb cb, void* usr );
67  static void removeCallback( DtExerciseConn* conn, DtEntityDamageInteractionCb cb, void* usr );
68 
69  virtual void printData() const;
70  virtual void printDataToStream( std::ostream& stream ) const;
71  virtual void printDataToString( DtString& str ) const;
72 
73 protected:
74 
76  virtual void printRecordsToStream( std::ostream& stream ) const;
77 
80 
81 protected:
82 
84  static const int theStaticSize;
85 
87 
88 };
89 
90 #endif
virtual unsigned int numberOfRecords() const
Returns the number of records for all Record Sets.
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
void(* DtEntityDamageInteractionCb)(DtEntityDamageInteraction *inter, void *usr)
Definition: entityDamageStatusPdu.h:28
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: directedEnergyDamageDescriptionRecord.h:17
Definition: pduHeader.h:14
Instances of DtEntityDamageInteraction are used to represent an entity&#39;s damage state.
Definition: entityDamageStatusPdu.h:32
class DtPduFactory:
Definition: pduFactory.h:38
virtual void printDataToStream(std::ostream &stream) const
This file is used as a convenience to group interaction concepts together.
DtEntityIdentifier myDamagedEntityId
Definition: entityDamageStatusPdu.h:86
DtPduKind internalGetPduKind() const
Returns the internal PDU kind.
Definition: entityDamageStatusPdu.h:79
DtPdu is the base class for all PDU&#39;s in VR-Link.
Definition: pdu.h:69
virtual void printDataToString(DtString &str) const
static const int theStaticSize
Size of PDU with zero DE records.
Definition: entityDamageStatusPdu.h:84
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).
Definition: standardVariableRecordP.h:32
struct DtBufferPlaceHolder * DtBufferPtr
Definition: vlBaseMsg.h:17
#define DtUSE_INTERNAL_BUFFER
Definition: vlBaseMsg.h:22
Contains the DtEventId class declaration.
DtPduKind
([UID 4]) - PDU Type
Definition: disEnums.h:238
Instances of DtString are used to represent strings.
Definition: vlString.h:29
DtEntityDamageStatusPdu DtEntityDamageInteraction
Instances of DtEnergyFireInteraction are used to represent the firing of an Energy Weapon...
Definition: entityDamageStatusPdu.h:23
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
Definition: entityDamageStatusP.h:18
Definition: disEnums.h:314
This file contains typedefs for machine dependant types.

Document ID: Generated on Wed Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)