20#include <matrix/vlVector.h>
21#include <matrix/vlQuaternion.h>
105 virtual void tick(
double dt)
override;
131 virtual const char*
type()
const override;
DtCommanderHatchViewUpdater()
Constructor for DtCommanderHatchViewUpdater.
int myPartAttachment
DIS enumeration for the vehicle part to attach the eyepoint to.
Definition commanderHatchViewUpdater.h:161
ObserverRange myPitchRange
Pitch range limits in radians.
Definition commanderHatchViewUpdater.h:192
DtQuaternion myAttachedRotationOffset
Rotation offset quaternion from the attachment point.
Definition commanderHatchViewUpdater.h:171
virtual makVre::DtVreMessageResult handlePlayerReset(makVre::DtVreMessage *msg)
Handles reset messages.
virtual ~DtCommanderHatchViewUpdater() override
Virtual destructor for DtCommanderHatchViewUpdater.
ObserverRange myYawRange
Yaw range limits in radians.
Definition commanderHatchViewUpdater.h:189
void updateNVGState()
Updates night vision goggles state.
makVre::DtLinearInterpolator< double > * myZoomInterpolator
Interpolator for smooth zoom transitions.
Definition commanderHatchViewUpdater.h:176
DtVector myAttachedLocationOffset
Offset vector from the attachment point in meters.
Definition commanderHatchViewUpdater.h:166
virtual bool initialize(DtPlayerStation *player, DtInitTable &config) override
Initializes the component with configuration from Lua.
makVrv::DtObserver * myObserver
Cached pointer to the observer being controlled.
Definition commanderHatchViewUpdater.h:179
bool myLastNVGState
Tracks the last known state of night vision goggles.
Definition commanderHatchViewUpdater.h:197
virtual const char * type() const override
Returns the component type identifier.
virtual void setupObserver()
Sets up observer attachment configuration.
virtual void shutdown() override
Shuts down the component.
void updateBinocularsState(double dt)
Updates binocular zoom effects.
bool myLimitObserverRange
Flag indicating whether observer rotation is constrained.
Definition commanderHatchViewUpdater.h:186
virtual makVre::DtVreMessageResult handlePlayerCreated(makVre::DtVreMessage *msg)
Handles player created messages.
virtual void tick(double dt) override
Updates the visual aspects of the commander view.
Table-based access to Lua state for configuration data.
Definition initializer.h:38
Linear interpolation template class.
Definition linearInterpolator.h:23
DtObserverUpdater()
Default constructor for DtObserverUpdater.
virtual DtPlayerStation & player()
Gets the player station.
Class for managing the user interface for engaged roles.
Definition playerStation.h:51
Abstract base class for all VREngage messages.
Definition vreMessage.h:50
Base component for managing observer parameters and view settings.
constexpr const char * partAttachment
Definition commanderHatchViewUpdater.h:49
constexpr const char * attachedLocationOffset
Definition commanderHatchViewUpdater.h:43
constexpr const char * observerName
Definition commanderHatchViewUpdater.h:46
constexpr const char * yawRange
Definition commanderHatchViewUpdater.h:55
constexpr const char * pitchRange
Definition commanderHatchViewUpdater.h:52
#define VRECOMMONCOMPONENTS_DLL
DLL export/import macro for the vreCommonComponents library.
Definition export.h:28
Provides a template class for linear interpolation between values.
Definition commanderHatchViewUpdater.h:35
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
constexpr const char * DtCommanderHatchViewUpdaterType
Type identifier for DtCommanderHatchViewUpdater component.
Definition commanderHatchViewUpdater.h:61
DtVreMessageResult
Enumeration of possible message handling results.
Definition vreMessage.h:33
Definition appLauncherComponent.h:28
Structure representing a range of rotation values for observer movement.
Definition observerUpdater.h:47
Defines the base class for all VREngage messages.