Helios++
Helios software for LiDAR simulations
Leg Class Reference

Class representing a survey leg. More...

#include <Leg.h>

Public Member Functions

 Leg ()
 Default leg constructor.
 
 Leg (double const length, int const serialId, std::shared_ptr< ScanningStrip > strip)
 Constructor for leg with input arguments. More...
 
 Leg (Leg &leg)
 Copy constructor for leg. More...
 
double getLength () const
 Obtain distance to next leg. More...
 
void setLength (double const length)
 Set distance to next leg. More...
 
ScannerSettingsgetScannerSettings () const
 Obtain leg scanner settings by reference. More...
 
PlatformSettingsgetPlatformSettings () const
 Obtain leg platform settings by reference. More...
 
int getSerialId () const
 Obtain the serial identifier of the leg. More...
 
void setSerialId (int const serialId)
 Set the leg serial identifier. More...
 
std::shared_ptr< ScanningStripgetStrip () const
 Obtain the scanning strip of the leg. More...
 
void setStrip (std::shared_ptr< ScanningStrip > strip)
 Set the leg scanning strip. More...
 
bool isContainedInAStrip () const
 Check whether the leg belongs to a strip (true) or not (false) More...
 
pyhelios::PyScanningStripWrappergetPyStrip () const
 
void setPyStrip (pyhelios::PyScanningStripWrapper *pssw)
 

Public Attributes

std::shared_ptr< ScannerSettingsmScannerSettings
 Scanner settings for the leg @se ScannerSettings.
 
std::shared_ptr< PlatformSettingsmPlatformSettings
 Platform settings for the leg. More...
 
std::shared_ptr< TrajectorySettingsmTrajectorySettings = nullptr
 Trajectory settings for the leg. More...
 
bool wasProcessed {}
 Boolean flag to store whether the leg was already processed.
 

Private Attributes

double length = 0
 Distance to the next leg.
 
int serialId
 The serial non negative integer unique identifier for the leg. If it is a negative integer, it means that the serial identifier is not valid. It is, the serial identifier does not univocally identify the leg.
 
std::shared_ptr< ScanningStripstrip
 The strip the leg belongs to. It is a nullptr if the leg does not belong to any strip at all.
 

Detailed Description

Class representing a survey leg.

Constructor & Destructor Documentation

◆ Leg() [1/2]

Leg::Leg ( double const  length,
int const  serialId,
std::shared_ptr< ScanningStrip strip 
)

Constructor for leg with input arguments.

See also
Leg::length
Leg::serialId
Leg::strip

◆ Leg() [2/2]

Leg::Leg ( Leg leg)

Copy constructor for leg.

WARNING! using this copy constructor will copy the serialId and the strip from given leg. However, the strip itself is not updated to include the copied leg. Thus, it is necessarily to either update the strip so the serial id points to the new leg or to update serial id of copy and include it in strip if desired.

Parameters
legLeg to be copied

Member Function Documentation

◆ getLength()

double Leg::getLength ( ) const
inline

Obtain distance to next leg.

Returns
Distance to next leg
See also
Leg::length

◆ getPlatformSettings()

PlatformSettings& Leg::getPlatformSettings ( ) const
inline

Obtain leg platform settings by reference.

Returns
Reference to leg platform settings
See also
Leg::mPlatformSettings

◆ getScannerSettings()

ScannerSettings& Leg::getScannerSettings ( ) const
inline

Obtain leg scanner settings by reference.

Returns
Reference to leg scanner settings
See also
Leg::mScannerSettings

◆ getSerialId()

int Leg::getSerialId ( ) const
inline

Obtain the serial identifier of the leg.

Returns
Leg serial identifier
See also
Leg::serialId

◆ getStrip()

std::shared_ptr<ScanningStrip> Leg::getStrip ( ) const
inline

Obtain the scanning strip of the leg.

Returns
Leg scanning strip
See also
Leg::strip

◆ isContainedInAStrip()

bool Leg::isContainedInAStrip ( ) const
inline

Check whether the leg belongs to a strip (true) or not (false)

Returns
True if the leg belongs to a strip, false otherwise

◆ setLength()

void Leg::setLength ( double const  length)
inline

Set distance to next leg.

Parameters
lengthNew distance to next leg
See also
Leg::length

◆ setSerialId()

void Leg::setSerialId ( int const  serialId)
inline

Set the leg serial identifier.

Parameters
serialIdNew serial identifier for the leg
See also
Leg::serialId

◆ setStrip()

void Leg::setStrip ( std::shared_ptr< ScanningStrip strip)
inline

Set the leg scanning strip.

Parameters
stripNew scanning strip for the leg
See also
Leg::strip

Member Data Documentation

◆ mPlatformSettings

std::shared_ptr<PlatformSettings> Leg::mPlatformSettings

Platform settings for the leg.

See also
PlatformSettings

◆ mTrajectorySettings

std::shared_ptr<TrajectorySettings> Leg::mTrajectorySettings = nullptr

Trajectory settings for the leg.

See also
TrajectorySettings

The documentation for this class was generated from the following files: