3 #include "ScannerSettings.h"
5 #include "maths/Rotation.h"
79 double scanAngleMax_rad,
80 double scanFreqMax_Hz,
90 virtual std::shared_ptr<AbstractBeamDeflector> clone() = 0;
91 virtual void _clone(std::shared_ptr<AbstractBeamDeflector> abd);
101 virtual void applySettings(std::shared_ptr<ScannerSettings> settings);
Base abstract class for beam deflectors.
Definition: AbstractBeamDeflector.h:10
Rotation & getEmitterRelativeAttitudeByReference()
Get the relative emitter attitude by referencce.
Definition: AbstractBeamDeflector.h:129
double cfg_device_scanFreqMax_Hz
Minimum scanning frequency (hertz)
Definition: AbstractBeamDeflector.h:18
virtual void setScanAngle_rad(double scanAngle_rad)
Set the scan angle.
Definition: AbstractBeamDeflector.cpp:59
double cfg_device_scanAngleMax_rad
Maximum scanning angle (radians)
Definition: AbstractBeamDeflector.h:26
double cfg_setting_scanAngle_rad
Scanning angle (radians)
Definition: AbstractBeamDeflector.h:36
Rotation cached_emitterRelativeAttitude
Relative emitter attitude.
Definition: AbstractBeamDeflector.h:68
AbstractBeamDeflector(double scanAngleMax_rad, double scanFreqMax_Hz, double scanFreqMin_Hz)
Base constructor for beam deflectors.
Definition: AbstractBeamDeflector.h:78
double cfg_setting_verticalAngleMin_rad
Minimum vertical scanning angle (radians)
Definition: AbstractBeamDeflector.h:40
double cfg_setting_verticalAngleMax_rad
Maximum vertical scanning angle (radians)
Definition: AbstractBeamDeflector.h:44
double cfg_setting_scanFreq_Hz
Scanning frequency (hertz)
Definition: AbstractBeamDeflector.h:32
double state_currentBeamAngle_rad
Current beam angle (radians)
Definition: AbstractBeamDeflector.h:50
double cached_angleBetweenPulses_rad
Angle between pulses (radians)
Definition: AbstractBeamDeflector.h:63
double state_angleDiff_rad
Angle differential (radians)
Definition: AbstractBeamDeflector.h:54
virtual void applySettings(std::shared_ptr< ScannerSettings > settings)
Apply given scanner settings to beam deflector.
Definition: AbstractBeamDeflector.cpp:32
double cfg_device_scanFreqMin_Hz
Maximum scanning frequency (hertz)
Definition: AbstractBeamDeflector.h:22
virtual void doSimStep()=0
Perform computations for current simulation step.
virtual void setScanFreq_Hz(double scanFreq_hz)
Set the scanning frequency.
Definition: AbstractBeamDeflector.cpp:86
virtual bool lastPulseLeftDevice()
Check if last pulse left device (true) or not (false)
Definition: AbstractBeamDeflector.cpp:78
Rotation getEmitterRelativeAttitude()
Get the relative emitter attitude.
Definition: AbstractBeamDeflector.cpp:55
virtual void restartDeflector()
Restart the deflector. This method is meant to be invoked whenever the deflector needs to be restarte...
Definition: AbstractBeamDeflector.cpp:82
Definition: Rotation.h:80