VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
weaponComponentInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
15 #include "vrfutil/rwTemplatedMap.h"
16 
18 
21 {
22 public:
23 
25 
26 private:
29 
30 public:
31  //constructor
32  DtWeaponComponentInterface(const DtLocalObject* vrfObject,
33  const DtString& rwName = DtString::nullString(),
34  DtReaderWriterRegistry* parentRegistry = 0);
35 
36  //copy constructor
38  const DtString& rwName = DtString::nullString(),
39  DtReaderWriterRegistry* parentRegistry = 0);
40 
41  //assignment operator
43  const DtWeaponComponentInterface& orig);
44 
45  //destructor
46  virtual ~DtWeaponComponentInterface() override;
47 
48  //returns a copy of the PSR
50  const DtString& rwName = DtString::nullString(), DtReaderWriterRegistry* parentRegistry = 0) const override;
51 
53  virtual DtString type() const override;
54 
56 
57  virtual void setTargetSelectionCriteria(const DtTargetSelectionCriteria& tsc);
58  virtual const DtTargetSelectionCriteria& targetSelectionCriteria() const;
60 
63  virtual void updateRegionEvaluator() override;
68  virtual bool locationWithinRegion(const DtVector& localLocation) const override;
69 
71 
72  virtual void setTarget(const DtEntityTargetInformation& target);
73  virtual const DtEntityTargetInformation& target() const;
75 
76  virtual void clearTarget();
77  virtual bool hasTarget() const;
78 
80 
81  virtual void addTargetFiringUpon(const DtUUID& target);
82  virtual void removeTargetFiringUpon(const DtUUID& target);
83  virtual const DtRwTemplatedUUIDList& targetsFiringUpon() const;
85 
87  static DtVrfProcessStateRepository* creator(const DtString& name,
88  DtLocalObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
89 
90 protected:
93  virtual void setupRegionEvaluator();
94 
95 protected:
98 
101 
106 
108 };
Definition: rwTemplatedList.h:188
UUID is a unique ID wrapper class.
Definition: uuid.h:59
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const override=0
const DtBaseWeaponComponentInterface & operator=(const DtBaseWeaponComponentInterface &orig)
Definition: readerWriterRegistry.h:39
Definition: entityTargetInformation.h:28
Defines a criteria for choosing targets for a single weapon system. This class stores all the informa...
Definition: targetSelectionCriteria.h:27
DtTargetSelectionCriteria myTargetSelectionCriteria
Target selection data for this weapon.
Definition: weaponComponentInterface.h:97
DtRwTemplatedMapPtr< DtRwUUID, DtRwUUID > MunitionToTargetMap
Definition: weaponComponentInterface.h:24
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Definition: rwTemplatedMap.h:97
An abstract base class for all evaluators of spatial filters. The evaluation of spatial filters is sp...
Definition: spatialFilterEvaluator.h:31
DtSpatialFilterEvaluator * myRegionEvaluator
Definition: weaponComponentInterface.h:107
virtual bool locationWithinRegion(const DtVector &localLocation) const =0
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
virtual void updateRegionEvaluator()=0
This must be called before calling locationWithinRegion() if the host entity has moved at all since t...
DtEntityTargetInformation myTarget
Information about current target specified by the target selection controller.
Definition: weaponComponentInterface.h:100
Abstract base class for all psrs that will serve as an interface between a controlling component on t...
Definition: baseWeaponComponentInterface.h:29
virtual DtString type() const =0
Returns the string type of the repository, as defined in psrTypes.h.
DtRwTemplatedUUIDList myTargetsFiringUpon
The current targets that have been fired upon. Used only by missile launchers (as of VRF 4...
Definition: weaponComponentInterface.h:105
Represents the interface between the DtTargetSelectionController and a weapon system.
Definition: weaponComponentInterface.h:20
A locally simulated VRF object.
Definition: localObject.h:98

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)