Helios++
Helios software for LiDAR simulations
|
Class representing a simulated laser pulse. More...
#include <SimulatedPulse.h>
Public Member Functions | |
SimulatedPulse (glm::dvec3 const &origin, Rotation const &attitude, double const time_ns, unsigned int legIndex, int const pulseNumber, size_t const deviceIndex) | |
Simulated laser pulse constructor. More... | |
unsigned int | getLegIndex () const |
Obtain the leg index of the pulse. More... | |
void | setLegIndex (unsigned int const legIndex) |
Set the leg index of the pulse. More... | |
int | getPulseNumber () const |
Obtain the pulse number wrt emitter scanning device. More... | |
void | setPulseNumber (int const pulseNumber) |
Set the pulse number wrt emitter scanning device. More... | |
size_t | getDeviceIndex () const |
Obtain the device index of the emitter scanning device. More... | |
void | setDeviceIndex (size_t const deviceIndex) |
Set the device index of the emitter scanning device. More... | |
![]() | |
TimedPulse (glm::dvec3 const &origin, Rotation const &attitude, double const time_ns) | |
Time laser pulse constructor. More... | |
double | getTime () const |
Obtain the start time of the pulse (in nanoseconds) More... | |
void | setTime (double const time_ns) |
Set the start time of the pulse. More... | |
![]() | |
Pulse (glm::dvec3 const &origin, Rotation const &attitude) | |
Laser pulse constructor. More... | |
glm::dvec3 | getOrigin () const |
Obtain the origin of the pulse. More... | |
glm::dvec3 & | getOriginRef () |
Obtain the origin of the pulse by reference. More... | |
void | setOrigin (glm::dvec3 const &origin) |
Set the origin of the pulse. More... | |
Rotation | getAttitude () const |
Obtain the attitude of the ray. More... | |
Rotation & | getAttitudeRef () |
Obtain the attitude of the ray by reference. More... | |
void | setAttitude (Rotation const &attitude) |
Set the attitude of the ray. More... | |
glm::dvec3 | computeDirection () |
Compute the director vector of the ray/beam. More... | |
Protected Attributes | |
unsigned int | legIndex |
The index of the simulation leg generating the pulse. More... | |
int | pulseNumber |
The number of the pulse, counting from the perspective of the concrete scanning device which generated the pulse. | |
size_t | deviceIndex |
The index of the scanning device inside the scanner context generating the pulse. More... | |
![]() | |
double | time_ns |
The start time of the pulse (in nanoseconds). Typically in real world applications it is the GPS time. | |
![]() | |
glm::dvec3 | origin |
The origin of the pulse, typically named as the point \(o\). | |
Rotation | attitude |
The attitude of the ray. | |
Class representing a simulated laser pulse.
|
inline |
Simulated laser pulse constructor.
|
inline |
Obtain the device index of the emitter scanning device.
|
inline |
Obtain the leg index of the pulse.
|
inline |
Obtain the pulse number wrt emitter scanning device.
|
inline |
Set the device index of the emitter scanning device.
deviceIndex | The new device index of the emitter scanning device |
|
inline |
Set the leg index of the pulse.
legIndex | The new leg index for the pulse |
|
inline |
Set the pulse number wrt emitter scanning device.
pulseNumber | The new pulse number wrt emitter scanning device |
|
protected |
The index of the scanning device inside the scanner context generating the pulse.
|
protected |
The index of the simulation leg generating the pulse.
Which leg the FullWaveformPulseRunnable belongs to.
While this attribute is not strictly necessary for the FullWaveformPulseRunnable to do its job, it really helps with tracing and debugging concurrency issues.
For instance, to track what is going on with end of leg FullWaveformPulseRunnable threads while a new leg is being started.
This attribute could be safely removed without degenerating class mechanics. So, if in the future it is not wanted any more, feel free to remove it.