VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
influenceInteractionHLA.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2025 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtHLA
13 
14 #include <vl/interactionWithEncDec.h>
15 #include <vl/interactionDecoder.h>
16 #include <vl/interactionEncoder.h>
18 
19 class DtExerciseConn;
21 
23 typedef void (*DtInfluenceInterCb) (DtInfluenceInteraction* inter, void* usr);
24 
28 {
29 
30 protected:
31 
36 
37 public:
38 
44  DtInfluenceInteraction(const DtString& influenceName);
45 
47  virtual ~DtInfluenceInteraction() override;
48 
51 
53  DtInfluenceInteraction& operator=(const DtInfluenceInteraction& orig);
54 
56  virtual void printData() const override;
57 
59  virtual void printDataToString(DtString &buff) const override;
60 
62  virtual void printDataToStream(std::ostream &stream) const override;
63 
65  virtual void setInfluenceName(const DtString& val);
66 
68  virtual const DtString& influenceName() const;
69 
71  virtual void setInfluenceType(const DtString& val);
72 
74  virtual const DtString& influenceType() const;
75 
77  virtual void setInfluencer(const DtString& val);
78 
80  virtual const DtString& influencer() const;
81 
83  virtual void setTarget(const DtString& val);
84 
86  virtual const DtString& target() const;
87 
89  virtual void setStrength(DtInt32 val);
90 
92  virtual DtInt32 strength() const;
93 
95  virtual void setDuration(DtTime val);
96 
98  virtual DtTime duration() const;
99 
101  virtual void setLocation(DtVector val);
102 
104  virtual DtVector location() const;
105 
107  virtual void setStopInfluence(bool val);
108 
110  virtual bool stopInfluence() const;
111 
113 
114 
116  virtual void setHitFactor(int val);
117 
119  virtual int hitFactor() const;
120 
122  virtual void setProbabilityKilled(double val);
123 
125  virtual double probabilityKilled() const;
126 
128  virtual void setProbabilityCaptured(double val);
129 
131  virtual double probabilityCaptured() const;
132 
134  virtual void setProbabilityWounded(double val);
135 
137  virtual double probabilityWounded() const;
138 
140  virtual void setWeaponType(const DtString& val);
141 
143  virtual const DtString& weaponType() const;
144 
146  virtual void setGuidanceSystem(const DtString& val);
147 
149  virtual const DtString& guidanceSystem() const;
150 
152  virtual void setTargetPart(const DtString& val);
153 
155  virtual const DtString& targetPart() const;
156 
158  virtual void setIsPointAttack(bool val);
159 
161  virtual bool isPointAttack() const;
162 
164  virtual void setAttackId(unsigned val);
165 
167  virtual unsigned attackId() const;
168 
170 
172  virtual const char *name() const override { return "DtInfluenceInteraction"; }
173 
174 public:
175 
178  static DtInteraction* create();
179 
182  static void addCallback(DtExerciseConn* conn,
183  DtInfluenceInterCb cb, void* usr,
184  DtDDMRegionSP region = DtDDMRegionSP());
185  static void removeCallback(DtExerciseConn* conn,
186  DtInfluenceInterCb cb, void* usr,
187  DtDDMRegionSP region = DtDDMRegionSP());
188 
190 
191 protected:
192 
199  DtVector myLocation;
210 
214 
215 };
216 
217 #endif // DtHLA
virtual const char * name() const override
Name of the interaction. (Not necessarily the ClassName from the FOM.)
Definition: influenceInteractionHLA.h:172
DtString myMutableInteractionClass
Not a parameter of the class. This is simply the interaction class to be used when sending this inter...
Definition: influenceInteractionHLA.h:213
DtInt32 myStrength
Definition: influenceInteractionHLA.h:197
DtInt32 myHitFactor
Definition: influenceInteractionHLA.h:201
DtString myTargetPart
Definition: influenceInteractionHLA.h:207
DtString myGuidanceSystem
Definition: influenceInteractionHLA.h:206
DtVector myLocation
Definition: influenceInteractionHLA.h:199
DtString myWeaponType
Definition: influenceInteractionHLA.h:205
double myProbabilityKilled
Definition: influenceInteractionHLA.h:202
DtString myInfluenceType
Definition: influenceInteractionHLA.h:194
DtTime myDuration
Definition: influenceInteractionHLA.h:198
int DtInt32
Definition: vrvControlStructTypes.h:31
DtString myTarget
Definition: influenceInteractionHLA.h:196
void(* DtInfluenceInterCb)(DtInfluenceInteraction *inter, void *usr)
DtInfluenceInteraction callback function signature.
Definition: influenceInteractionHLA.h:23
voidpf stream
Definition: ioapi.h:39
double myProbabilityWounded
Definition: influenceInteractionHLA.h:204
Instances of DtInfluenceInter are used to store state data for Influence interactions.
Definition: influenceInteractionHLA.h:27
static const DtString theEngagementInfluenceName
Definition: influenceInteractionHLA.h:189
bool myStopInfluence
Definition: influenceInteractionHLA.h:200
double myProbabilityCaptured
Definition: influenceInteractionHLA.h:203
DtString myInfluenceName
Definition: influenceInteractionHLA.h:193
DtInt32 myAttackId
Definition: influenceInteractionHLA.h:209
DtString myInfluencer
Definition: influenceInteractionHLA.h:195
bool myIsPointAttack
Definition: influenceInteractionHLA.h:208
#define DT_DLL_vrfExtObjects
Definition: dllExport.h:23

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)