VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
indirectWeaponComponentInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
12 #include <readerWriter/rwInt.h>
13 #include <readerWriter/rwBoolean.h>
14 
16 
18 
19 
22 
25 {
26 
27 private:
30 
31 public:
32  //constructor
34  const DtString& rwName = DtString::nullString(),
35  DtReaderWriterRegistry* parentRegistry = 0);
36 
37  //copy constructor
39  const DtString& rwName = DtString::nullString(),
40  DtReaderWriterRegistry* parentRegistry = 0);
41 
42  //assignment operator
45 
46  //destructor
48 
49  //returns a copy of the PSR
51  const DtString& rwName = DtString::nullString(),
52  DtReaderWriterRegistry* parentRegistry = 0) const;
53 
55  virtual DtString type() const;
56 
59  virtual void updateRegionEvaluator();
60 
65  virtual bool locationWithinRegion(const DtVector& localLocation) const;
66 
67  virtual void setFireMission(const DtFireMissionInformation& mission);
68  virtual const DtFireMissionInformation& fireMission() const;
69  virtual DtFireMissionInformation& fireMission();
70 
71  virtual void setTargetLocation(const DtVector& target);
72  virtual const DtVector& targetLocation() const;
73 
74  virtual void setInitializeWeapon(const bool needsInit);
75  virtual const bool initializeWeapon() const;
76 
77  virtual void setIsCruiseMissile(const bool isCruise);
78  virtual const bool isCruiseMissile() const;
79 
80  virtual void setWaitingForTerrain(bool v);
81  virtual bool waitingForTerrain() const;
82 
84 
85  virtual void setTaskId(const int explicitlyTasked);
86  virtual const int taskId() const;
88 
90  static DtVrfProcessStateRepository* creator(const DtString& name,
91  DtLocalObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
92 
93 protected:
96  virtual void setupRegionEvaluator(DtRwSpatialFilterContainer * rangeGeometry);
97 
98 protected:
100 
103 
107 
111 
114 
117 };
DtFireMissionInformation myFireMission
This is the desired mission for the weapon to execute.
Definition: indirectWeaponComponentInterface.h:102
A reader-writer type which contains a single dynamically typed subclass of DtRwSpatialFilter. The container itself is also a subclass of DtRwSpatialFilter, so it can hold instances of itself.
Definition: rwSpatialFilterContainer.h:22
DtRwBoolean myWaitingForTerrain
Indicates that the weapon in waiting for terrain to page in to start the task.
Definition: indirectWeaponComponentInterface.h:116
const DtBaseWeaponComponentInterface & operator=(const DtBaseWeaponComponentInterface &orig)
Definition: readerWriterRegistry.h:39
Definition: fireMissionInformation.h:33
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Description: Readable, Writable int.
Definition: rwInt.h:25
An abstract base class for all evaluators of spatial filters. The evaluation of spatial filters is sp...
Definition: spatialFilterEvaluator.h:30
DtSpatialFilterEvaluator * myRegionEvaluator
Definition: indirectWeaponComponentInterface.h:99
virtual bool locationWithinRegion(const DtVector &localLocation) const =0
Represents the interface between the DtIndirectFireController and an indirect fire weapon system...
Definition: indirectWeaponComponentInterface.h:24
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories. Process state repositories represent (potentially) shared, savable information for one or more components functioning together to achieve some process or set of processes; such as aiming and firing a weapon; moving an object; or just waiting a specified amount of time.
Definition: vrfProcessStateRepository.h:45
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
virtual void updateRegionEvaluator()=0
This must be called before calling locationWithinRegion() if the host entity has moved at all since t...
DtRwInt myFireMissionTaskId
What Fire support/Artillery task this weapon is currently tasked to. -1 means no task.
Definition: indirectWeaponComponentInterface.h:106
Abstract base class for all psrs that will serve as an interface between a controlling component on t...
Definition: baseWeaponComponentInterface.h:28
DtRwBoolean myIsCruiseMissile
Indicates this weapon interface is for a cruise missile.
Definition: indirectWeaponComponentInterface.h:113
virtual DtString type() const =0
Returns the string type of the repository, as defined in procSRTypes.h.
DtRwBoolean myWeaponNeedsInitialization
This is used when a new task comes in and the weapon needs to be initialized for the task–set up rang...
Definition: indirectWeaponComponentInterface.h:110
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)