17#include <vrfobjparam/actuatorComponentDescriptor.h>
18#include <vrfutil/rwStringList.h>
19#include <readerWriter/rwInt.h>
20#include <readerWriter/rwVector.h>
80 virtual DtString
type()
const override;
87 virtual DtComponentDescriptor*
clone(DtReaderWriterRegistry* parentRegistry = 0)
const override;
virtual int roundsPerMinute() const
Gets the firing rate.
DtRwString myRangeName
Name identifying the range configuration of this gun.
Definition vreGunActuatorDescriptor.h:274
DtVreGunActuatorDescriptor(const DtSymbolString &componentName, DtReaderWriterRegistry *parentRegistry=NULL)
Constructor with component name as symbol string.
virtual const DtVector & muzzleOffset() const
Gets the muzzle offset.
virtual void setAttachedPart(int part)
Sets the attached part index.
virtual void setRoundsPerDetonation(const int rpd)
Sets the number of rounds per detonation.
DtVreGunActuatorDescriptor()
Default constructor (not implemented)
DtVreGunActuatorDescriptor(const DtString &componentName, DtReaderWriterRegistry *parentRegistry=0)
Constructor with component name.
virtual int roundsPerMagazine() const
Gets the number of rounds per magazine.
DtRwInt myAttachedPart
Index of the articulated part to which this gun is attached.
Definition vreGunActuatorDescriptor.h:250
virtual void setRoundsPerMinute(const int roundsPerMinute)
Sets the firing rate.
virtual const DtString & rangeName() const
Gets the range name.
DtRwReal myRange
Effective range of the gun for accurate targeting in meters.
Definition vreGunActuatorDescriptor.h:271
virtual DtReal loadTime() const
Gets the loading time.
virtual ~DtVreGunActuatorDescriptor() override
Virtual destructor.
virtual DtReal unloadTime() const
Gets the unloading time.
DtRwReal myMaxRange
Maximum possible range of the gun in meters.
Definition vreGunActuatorDescriptor.h:290
virtual void setMuzzleSpeed(DtReal muzzleSpeed)
Sets the muzzle speed.
virtual const DtRwStringList & munitionList() const
Gets the list of available munitions.
static DtComponentDescriptor * creator()
Factory function to create a new instance of this descriptor.
virtual void setRoundsPerMagazine(int roundsPerMagazine)
Sets the number of rounds per magazine.
virtual void setRange(DtReal range)
Sets the effective range.
virtual void setUnloadTime(DtReal unloadTime)
Sets the unloading time.
virtual int roundsPerDetonation() const
Gets the number of rounds per detonation.
DtRwReal myRoundsPerMinute
Maximum firing rate of the gun in rounds per minute.
Definition vreGunActuatorDescriptor.h:259
DtRwOffsetVector myMuzzleOffset
Offset vector from the entity's origin to the gun's muzzle.
Definition vreGunActuatorDescriptor.h:262
DtRwStringList myMunitionList
List of names identifying the types of munitions this gun can use.
Definition vreGunActuatorDescriptor.h:282
DtVreGunActuatorDescriptor & operator=(const DtVreGunActuatorDescriptor &orig)
Assignment operator.
virtual DtReal muzzleSpeed() const
Gets the muzzle speed.
virtual int attachedPart() const
Gets the attached part index.
virtual void setRangeName(const DtString &rangeName)
Sets the range name.
virtual void setMuzzleOffset(const DtVector &muzzleOffset)
Sets the muzzle offset.
DtRwInt myRoundsPerMagazine
Number of rounds that can be loaded in a single magazine.
Definition vreGunActuatorDescriptor.h:256
virtual DtString type() const override
Gets the type identifier for this descriptor.
DtVreGunActuatorDescriptor(const DtVreGunActuatorDescriptor &orig, DtReaderWriterRegistry *parentRegistry=0)
Copy constructor.
virtual DtComponentDescriptor * clone(DtReaderWriterRegistry *parentRegistry=0) const override
Creates a clone of this descriptor.
virtual DtReal maxRange() const
Gets the maximum range.
virtual void setMaxRange(DtReal range)
Sets the maximum range.
DtRwReal myMuzzleSpeed
Speed of projectiles as they exit the gun's muzzle in meters per second.
Definition vreGunActuatorDescriptor.h:253
virtual DtReal range() const
Gets the effective range.
DtRwInt myRoundsPerDetonation
Number of rounds that must be fired before detonation occurs.
Definition vreGunActuatorDescriptor.h:279
virtual void setLoadTime(DtReal loadTime)
Sets the loading time.
DtRwReal myUnloadTime
Time required to unload a magazine in seconds.
Definition vreGunActuatorDescriptor.h:268
virtual void setMunitionList(DtRwStringList &munitionList)
Sets the list of available munitions.
DtRwReal myLoadTime
Time required to load a new magazine in seconds.
Definition vreGunActuatorDescriptor.h:265
Export macros for the VREngage Object Parameter library.
#define VREVRFOBJPARAM_DLL
Platform-specific DLL export/import declaration.
Definition export.h:27
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
const char DtVreGunActuatorDescriptorType[]
Type identifier string for the gun actuator descriptor.
Definition vreGunActuatorDescriptor.h:25