VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ifModifyIndirectArtilleryObject.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
13 
14 #include <vlpi/appearance.h>
15 #include <vlpi/entityIdentifier.h>
16 #include <vlutil/vlNetTypes.h>
17 #include <vlpi/netStructs.h>
18 #include "vrfmsgs/vrfmsgsDefines.h"
19 #include <vrfutil/rwUUID.h>
20 #include <vector>
21 
22 
23 class DtAppearance;
24 class DtList;
25 class Coordinate_System;
26 
30 {
31 public:
34  const DtIfIndirectArtilleryData & operator = (const DtIfIndirectArtilleryData&);
37  virtual bool update(const DtIfIndirectArtilleryData& );
38  virtual ~DtIfIndirectArtilleryData();
39 
41 
42  virtual void setMarkingText(const DtString&);
43  virtual const DtString& markingText() const;
45 
47 
48  virtual void setUUID(const DtUUID&);
49  virtual const DtUUID& uuid() const;
51 
53 
54  virtual const std::vector<DtVector>& vertices() const;
55  virtual void setVertices(const std::vector<DtVector> &);
57 
60 
61  virtual void setUserData(const char* userData, int iLen);
62  virtual const char* userData() const;
63  virtual int userDataLen() const;
65 
67 
68  virtual void setOverlay(const DtString& parentName);
69  virtual const DtString& overlay() const;
71 
73 
74  virtual void setLabel(const DtString& label);
75  virtual const DtString& label() const;
77 
79 
80  virtual void setForce(const DtForceType& forceType);
81  virtual const DtForceType force() const;
83 
85 
86  virtual void setAppearance(const DtAppearance& appearance);
87  virtual const DtAppearance& appearance() const;
89 
91 
92  virtual void setAttachment(const DtUUID& attachTo);
94 
96  virtual const DtUUID& attachment() const;
98 
100 
101  virtual void setKeepExistingAttachment(bool keepExisting);
102  virtual bool keepExistingAttachment() const;
104 
106 
107  virtual void setColor(int color);
108  virtual int color() const;
110 
113 
114  virtual void setStartTimeImmediate(bool value);
115  virtual bool startTimeImmediate() const;
117 
120 
121  virtual void setWaitForActivation(bool value);
122  virtual bool waitForActivation() const;
124 
126 
127  virtual void setStartTime(int);
128  virtual int startTime() const;
130 
132 
133  virtual void setTimeBetweenSalvos(int);
134  virtual int timeBetweenSalvos() const;
136 
138 
139  virtual void setScatterTime(double);
140  virtual double scatterTime() const;
142 
144 
145  virtual void setNumberOfSalvos(int);
146  virtual int numberOfSalvos() const;
148 
150 
151  virtual void setRoundsPerSalvo(int);
152  virtual int roundsPerSalvo() const;
154 
156 
157  virtual void setAltitudeAboveTerrain(double);
158  virtual double altitudeAboveTerrain() const;
160 
162 
163  virtual void setWindDirection(double);
164  virtual double windDirection() const;
166 
168 
169  virtual void setWindDistance(int);
170  virtual int windDistance() const;
172 
174 
175  virtual void setMunitionType(const DtEntityType&);
176  virtual void setMunitionType(const DtString&);
177  virtual const DtEntityType& munitionType() const;
179 
181 
182  virtual size_t size() const;
183  virtual char* encode(char* buffer) const;
184  virtual const char* decode (const char* buffer);
186 
187  virtual void setExtendedData(const std::map<std::string, std::string>&);
188  const std::map<std::string, std::string>& extendedData() const;
189  std::map<std::string, std::string>& extendedData();
190 
191  bool modifyColor() const { return ((myModificationFlags & DtModifyOverlayColor) != 0); };
192  bool modifyAttachedTo() const { return ((myModificationFlags & DtModifyOverlayAttachedTo) != 0); };
193  bool modifyOverlay() const { return ((myModificationFlags & DtModifyOverlayParent) != 0); };
194  bool modifyUserData() const { return ((myModificationFlags & DtModifyOverlayUserData) != 0); };
195 
196 protected:
197  DtForceType myForceType;
199  int myColor;
200  DtAppearance myAppearance;
212  std::map<std::string, std::string> myExtendedData;
213 
214  DtEntityType myMunitionType;
215 
216  const char* myUserData;
222  std::vector<DtVector> myVertices;
224 };
225 
231 {
232 
233 public:
236 
239  const DtIfModifyIndirectArtilleryObject & orig);
240 
243  const DtIfModifyIndirectArtilleryObject & orig);
244 
245  virtual ~DtIfModifyIndirectArtilleryObject() override;
246  virtual bool update(const DtSimInterfaceContent*) override;
247 
249  virtual int type() const override;
250 
252  virtual DtSimInterfaceContent * clone() const override;
253 
255  virtual int netRepSize() const override;
256 
258  virtual bool setFromNet(const char* contentBuffer, unsigned contentSize) override;
259 
262  virtual bool setToNet() override;
263 
265  virtual DtString stringRep() const;
266 
270  static DtSimInterfaceContent* creator();
271 
273  virtual const DtIfIndirectArtilleryData & data() const;
274  virtual DtIfIndirectArtilleryData & data();
275  virtual void setData(const DtIfIndirectArtilleryData & data);
276 
277 protected:
279 };
virtual bool update(const DtSimInterfaceContent *data)
UUID is a unique ID wrapper class.
Definition: uuid.h:59
virtual bool setFromNet(const char *contentBuffer, unsigned contentSize)
Definition: simInterfaceContent.h:78
int myUserDataLen
Definition: ifModifyIndirectArtilleryObject.h:201
bool modifyOverlay() const
Definition: ifModifyIndirectArtilleryObject.h:193
virtual int netRepSize() const
Definition: simInterfaceContent.h:76
std::map< std::string, std::string > myExtendedData
Definition: ifModifyIndirectArtilleryObject.h:212
#define DT_DLL_vrfmsgs
This file is used to determine how to build.
Definition: vrfmsgsDefines.h:28
int myTimeBetweenSalvos
Definition: ifModifyIndirectArtilleryObject.h:206
DtUUID myUUID
Definition: ifModifyIndirectArtilleryObject.h:220
double myWindDirection
Definition: ifModifyIndirectArtilleryObject.h:210
virtual int type() const =0
DtEntityType myMunitionType
Definition: ifModifyIndirectArtilleryObject.h:214
DtString myMarkingText
Definition: ifModifyIndirectArtilleryObject.h:217
int myRoundsPerSalvo
Definition: ifModifyIndirectArtilleryObject.h:209
voidpf void uLong size
Definition: ioapi.h:39
bool myStartTimeImmediate
Definition: ifModifyIndirectArtilleryObject.h:203
#define DtModifyOverlayUserData
Definition: ifModifyVrfOverlay.h:23
#define DtModifyOverlayParent
Definition: ifModifyVrfOverlay.h:22
Instances of this class are the interface message content used to embark an object on the specified p...
Definition: ifModifyIndirectArtilleryObject.h:230
Contains the DtUUID class declaration.
int myColor
Definition: ifModifyIndirectArtilleryObject.h:199
#define DtModifyOverlayColor
Definition: ifModifyVrfOverlay.h:21
int myStartTime
Definition: ifModifyIndirectArtilleryObject.h:205
bool myKeepExistingAttachment
Definition: ifModifyIndirectArtilleryObject.h:198
#define DtModifyOverlayAttachedTo
Definition: ifModifyVrfOverlay.h:24
DtString myOverlay
Definition: ifModifyIndirectArtilleryObject.h:218
std::vector< DtVector > myVertices
Definition: ifModifyIndirectArtilleryObject.h:222
Definition: coordSystem.h:54
double myAltitudeAboveTerrain
Definition: ifModifyIndirectArtilleryObject.h:223
DtAppearance myAppearance
Definition: ifModifyIndirectArtilleryObject.h:200
const DtSimInterfaceContent & operator=(const DtSimInterfaceContent &orig)
DtIfIndirectArtilleryData myData
Definition: ifModifyIndirectArtilleryObject.h:278
bool myWaitForActivation
Definition: ifModifyIndirectArtilleryObject.h:204
DT_DLL_readerWriter char * encode(const DtFilename &val, char *buffer)
Serializes the provided value val into buffer. buffer must have at least the number of bytes returned...
double myScatterTime
Definition: ifModifyIndirectArtilleryObject.h:207
Data container for Indirect Artillery. Should contain nothing but mutators, accessors and data...
Definition: ifModifyIndirectArtilleryObject.h:29
const char * myUserData
Definition: ifModifyIndirectArtilleryObject.h:216
virtual bool setToNet()
Definition: simInterfaceContent.h:83
Definition: simInterfaceContent.h:45
DT_DLL_readerWriter const char * decode(DtString &val, const char *buffer)
Decodes a value from buffer and places the result in val of the type specified by val...
int myWindDistance
Definition: ifModifyIndirectArtilleryObject.h:211
int myNumberOfSalvos
Definition: ifModifyIndirectArtilleryObject.h:208
bool modifyAttachedTo() const
Definition: ifModifyIndirectArtilleryObject.h:192
virtual DtSimInterfaceContent * clone() const =0
DtUUID myAttachment
Definition: ifModifyIndirectArtilleryObject.h:219
DtString myLabel
Definition: ifModifyIndirectArtilleryObject.h:221
bool modifyColor() const
Definition: ifModifyIndirectArtilleryObject.h:191
int myModificationFlags
Definition: ifModifyIndirectArtilleryObject.h:202

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)