17 #include "vlpi/disEnums.h"
37 DT_WEAPON_DISABLED = 1,
38 DT_NO_AMMUNITION_FOR_TARGET = 2,
39 DT_CANNOT_ACQUIRE_TARGET = 4,
41 DT_OUT_OF_AMMUNITION_FOR_WEAPON = 16,
53 const DtString& rwName = DtString::nullString(),
58 const DtString& rwName = DtString::nullString(),
70 const DtString& rwName = DtString::nullString(),
75 virtual void updateRegionEvaluator() = 0;
81 virtual bool locationWithinRegion(
const DtVector& localLocation)
const = 0;
84 virtual void setRoundsFiredUponTarget(
const int& roundsFired);
85 virtual const int roundsFiredUponTarget()
const;
88 virtual void setTotalRoundsToFireUponTarget(
const int& totalRoundsToFire);
89 virtual const int totalRoundsToFireUponTarget()
const;
93 virtual void setIsExplicitlyTasked(
const bool& explicitlyTasked);
94 virtual const bool isExplicitlyTasked()
const;
99 virtual void setAllowExplicitTasking(
const bool& includeInDialogs);
100 virtual const bool allowExplicitTasking()
const;
105 virtual void setDisplayName(
const DtString& displayName);
106 virtual const DtString& displayName()
const;
111 virtual void setWeaponStatus(
const int weaponStatus);
112 virtual const int weaponStatus()
const;
115 virtual DtString weaponStatusString()
const;
120 virtual void addWeaponStatus(
const DtWeaponStatus weaponStatus);
126 virtual void removeWeaponStatus(
const DtWeaponStatus weaponStatus);
131 virtual void setIsInFiringCycle(
const bool);
132 virtual bool isInFiringCycle()
const;
137 virtual void setResourceList(
const std::list<DtString>& list);
138 virtual const std::list<DtString>& resourceList()
const;
139 virtual std::list<DtString>& resourceList();
147 virtual void setPriority(
const int priority);
148 virtual int priority()
const;
161 virtual void createMountPartList(
const DtArtPartType partType);
163 virtual const std::list<DtArtPartType>& mountPartList()
const;
168 virtual void setSystemTurretNumber(
const DtArtPartType num);
169 virtual DtArtPartType systemTurretNumber()
const;
176 virtual std::set<DtString>& requiredTokens();
177 virtual void setRequiredTokens(
const std::set<DtString>& tokens);
182 virtual void setTreatSelectedAsTasked(
bool t);
183 bool treatSelectedAsTasked()
const;
188 virtual void setControlExternalTurret(
bool c);
189 virtual bool controlExternalTurret()
const;
std::set< DtString > myRequiredTokens
List of resources required to operate the weapon; these are tokens that are reserved when the weapon ...
Definition: baseWeaponComponentInterface.h:255
DtRwBoolean myIsExplicitlyTasked
Tracks whether the weapon system has been explicitly tasked as opposed to a target being automaticall...
Definition: baseWeaponComponentInterface.h:206
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtRwBoolean myControlExternalTurret
Indicates that this weapon is controlling parent parts outside of the system to turn the gun...
Definition: baseWeaponComponentInterface.h:248
DtRwInt myRoundsFiredUponTarget
Tracks rounds fired upon current target.
Definition: baseWeaponComponentInterface.h:194
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
Definition: readerWriterRegistry.h:39
DtRwBoolean myTreatSelectedAsTasked
Indicates that when a target is auto-selected for this gun, vs.
Definition: baseWeaponComponentInterface.h:263
DtRwInt myPriority
A priority value to determine which weapon on an entity should be used if both have targets...
Definition: baseWeaponComponentInterface.h:227
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtArtPartType mySystemTurretNumber
The articulated part corresponding to the turret in this gun system (as opposed to an ancestor part)...
Definition: baseWeaponComponentInterface.h:242
Description: Readable, Writable int.
Definition: rwInt.h:25
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
DtRwInt myWeaponStatus
Current status of the weapon, is it able to fire or not.
Definition: baseWeaponComponentInterface.h:214
std::list< DtArtPartType > myMountPartList
A list of articulated parts to which this weapon is attached.
Definition: baseWeaponComponentInterface.h:238
std::list< DtString > myResources
List of the available munition resources.
Definition: baseWeaponComponentInterface.h:221
DtWeaponStatus
The status items below are used as bit fields.
Definition: baseWeaponComponentInterface.h:34
DtRwBoolean myAllowExplicitTasking
Definition: baseWeaponComponentInterface.h:208
DtRwString myDisplayName
Name to be used in the gui to represent this weapon.
Definition: baseWeaponComponentInterface.h:211
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories.
Definition: vrfProcessStateRepository.h:43
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
Abstract base class for all psrs that will serve as an interface between a controlling component on t...
Definition: baseWeaponComponentInterface.h:28
DtRwBoolean myIsInFiringCycle
Indicates that the weapon is in its firing cycle, which may mean is still firing a burst...
Definition: baseWeaponComponentInterface.h:202
const DtVrfProcessStateRepository & operator=(const DtVrfProcessStateRepository &orig)
DtRwInt myTotalRoundsToFireUponTarget
Tracks total rounds to fire upon current target.
Definition: baseWeaponComponentInterface.h:197