Helios++
Helios software for LiDAR simulations
|
The facade for FMS writing. More...
#include <FMSWriteFacade.h>
Public Member Functions | |
FMSWriteFacade ()=default | |
Default constructor for FMS write facade. | |
virtual void | disconnect () |
Disconnect all components from the write facade. More... | |
void | configure (string const &prefix, bool const computeWaveform, bool const lastLegInStrip) |
Configure the output path for all writers in the facade. More... | |
string | getRootDir () const |
Obtain the root directory of the write facade. More... | |
void | setRootDir (string const &rootDir) |
Set the root directory of the write facade. More... | |
shared_ptr< VectorialMeasurementWriter > | getMeasurementWriter () const |
Obtain the measurement writer of the write facade. More... | |
void | setMeasurementWriter (shared_ptr< VectorialMeasurementWriter > mw) |
Set the measurement writer of the write facade. More... | |
void | validateMeasurementWriter (string const &callerName="FMSWriteFacade::validateMeasurementWriter", string const &errorMsg="could not access MeasurementWriter") const |
Validate the measurement writer of the facade is valid to support write methods. If it is not valid, an adequate exception will be thrown. More... | |
void | writeMeasurements (vector< Measurement > const &measurements) |
void | writeMeasurementsUnsafe (vector< Measurement > const &measurements) const |
Write the vector of measurements without validations (it is faster than its non unsafe counterpart) More... | |
void | clearPointcloudFile () |
void | finishMeasurementWriter () |
fs::path | getMeasurementWriterOutputPath () |
void | setMeasurementWriterOutputPath (std::string path, const bool lastLegInStrip) |
bool | isMeasurementWriterLasOutput () const |
void | setMeasurementWriterLasOutput (bool const lasOutput) |
bool | isMeasurementWriterLas10 () const |
void | setMeasurementWriterLas10 (bool const las10) |
bool | isMeasurementWriterZipOutput () const |
void | setMeasurementWriterZipOutput (bool const zipOutput) |
double | getMeasurementWriterLasScale () const |
void | setMeasurementWriterLasScale (double const lasScale) |
shared_ptr< TrajectoryWriter > | getTrajectoryWriter () const |
Obtain the trajectory writer of the write facade. More... | |
void | setTrajectoryWriter (shared_ptr< TrajectoryWriter > tw) |
Set the trajectory writer of the write facade. More... | |
void | validateTrajectoryWriter (string const &callerName="FMSWriteFacade::validateTrajectoryWriter", string const &errorMsg="could not accesss TrajectoryWriter") const |
Validate the trajectory writer of the facade is valid to support write methods. If it is not valid, an adequate exception will be thrown. More... | |
void | writeTrajectory (Trajectory const &t) |
void | writeTrajectoryUnsafe (Trajectory const &t) const |
Write the trajectory without validations (it is faster than its non unsafe counterpart) More... | |
void | finishTrajectoryWriter () |
fs::path | getTrajectoryWriterOutputPath () |
void | setTrajectoryWriterOutputPath (string const &path) |
bool | isTrajectoryWriterZipOutput () const |
void | setTrajectoryWriterZipOutput (bool const zipOutput) |
shared_ptr< VectorialFullWaveformWriter > | getFullWaveformWriter () const |
Obtain the full waveform writer of the write facade. More... | |
void | setFullWaveformWriter (shared_ptr< VectorialFullWaveformWriter > fww) |
Set the full waveform writer of the write facade. More... | |
void | validateFullWaveformWriter (string const &callerName="FMSWriteFacade::validateFullWaveformWriter", string const &errorMsg="could not accesss FullWaveformWriter") const |
Validate the full waveform writer of the facade is valid to support write methods. If it is not valid, an adequate exception will be thrown. More... | |
void | writeFullWaveforms (vector< FullWaveform > const &fullWaveforms) |
void | writeFullWaveformsUnsafe (vector< FullWaveform > const &fullWaveforms) const |
Write the full waveform without validations (it is faster than its non unsafe counterpart) More... | |
void | finishFullWaveformWriter () |
bool | isFullWaveformWriterZipOutput () const |
void | setFullWaveformWriterZipOutput (bool const zipOutput) |
Protected Attributes | |
shared_ptr< VectorialMeasurementWriter > | mw = nullptr |
The vectorial writer for measurements. More... | |
shared_ptr< TrajectoryWriter > | tw = nullptr |
The writer for trajectories. More... | |
shared_ptr< VectorialFullWaveformWriter > | fww = nullptr |
The writer for full waveform. More... | |
string | rootDir = "./" |
The root directory for output files. | |
Friends | |
class | FMSFacadeFactory |
The facade for FMS writing.
void FMSWriteFacade::clearPointcloudFile | ( | ) |
void FMSWriteFacade::configure | ( | string const & | prefix, |
bool const | computeWaveform, | ||
bool const | lastLegInStrip | ||
) |
Configure the output path for all writers in the facade.
prefix | Prefix for the name of the output file |
computeWaveform | Flag to specify if waveform must be computed (true) or not (false) |
lastLegInStrip | Specify whether the last leg belonged to a strip (true) or not (false) |
|
virtual |
Disconnect all components from the write facade.
void FMSWriteFacade::finishFullWaveformWriter | ( | ) |
void FMSWriteFacade::finishMeasurementWriter | ( | ) |
void FMSWriteFacade::finishTrajectoryWriter | ( | ) |
|
inline |
Obtain the full waveform writer of the write facade.
|
inline |
Obtain the measurement writer of the write facade.
double FMSWriteFacade::getMeasurementWriterLasScale | ( | ) | const |
fs::path FMSWriteFacade::getMeasurementWriterOutputPath | ( | ) |
|
inline |
Obtain the root directory of the write facade.
|
inline |
Obtain the trajectory writer of the write facade.
fs::path FMSWriteFacade::getTrajectoryWriterOutputPath | ( | ) |
bool FMSWriteFacade::isFullWaveformWriterZipOutput | ( | ) | const |
bool FMSWriteFacade::isMeasurementWriterLas10 | ( | ) | const |
bool FMSWriteFacade::isMeasurementWriterLasOutput | ( | ) | const |
bool FMSWriteFacade::isMeasurementWriterZipOutput | ( | ) | const |
bool FMSWriteFacade::isTrajectoryWriterZipOutput | ( | ) | const |
|
inline |
Set the full waveform writer of the write facade.
fww | New full waveform writer for the write facade |
void FMSWriteFacade::setFullWaveformWriterZipOutput | ( | bool const | zipOutput | ) |
|
inline |
Set the measurement writer of the write facade.
mw | New measurement writer for the write facade |
void FMSWriteFacade::setMeasurementWriterLas10 | ( | bool const | las10 | ) |
void FMSWriteFacade::setMeasurementWriterLasOutput | ( | bool const | lasOutput | ) |
void FMSWriteFacade::setMeasurementWriterLasScale | ( | double const | lasScale | ) |
void FMSWriteFacade::setMeasurementWriterOutputPath | ( | std::string | path, |
const bool | lastLegInStrip | ||
) |
void FMSWriteFacade::setMeasurementWriterZipOutput | ( | bool const | zipOutput | ) |
|
inline |
Set the root directory of the write facade.
rootDir | The new root directory for the write facade |
|
inline |
Set the trajectory writer of the write facade.
tw | New trajectory writer for the write facade |
void FMSWriteFacade::setTrajectoryWriterOutputPath | ( | string const & | path | ) |
void FMSWriteFacade::setTrajectoryWriterZipOutput | ( | bool const | zipOutput | ) |
void FMSWriteFacade::validateFullWaveformWriter | ( | string const & | callerName = "FMSWriteFacade::validateFullWaveformWriter" , |
string const & | errorMsg = "could not accesss FullWaveformWriter" |
||
) | const |
Validate the full waveform writer of the facade is valid to support write methods. If it is not valid, an adequate exception will be thrown.
void FMSWriteFacade::validateMeasurementWriter | ( | string const & | callerName = "FMSWriteFacade::validateMeasurementWriter" , |
string const & | errorMsg = "could not access MeasurementWriter" |
||
) | const |
Validate the measurement writer of the facade is valid to support write methods. If it is not valid, an adequate exception will be thrown.
void FMSWriteFacade::validateTrajectoryWriter | ( | string const & | callerName = "FMSWriteFacade::validateTrajectoryWriter" , |
string const & | errorMsg = "could not accesss TrajectoryWriter" |
||
) | const |
Validate the trajectory writer of the facade is valid to support write methods. If it is not valid, an adequate exception will be thrown.
void FMSWriteFacade::writeFullWaveforms | ( | vector< FullWaveform > const & | fullWaveforms | ) |
|
inline |
Write the full waveform without validations (it is faster than its non unsafe counterpart)
void FMSWriteFacade::writeMeasurements | ( | vector< Measurement > const & | measurements | ) |
@bsee VectorialMeasurementWritter::writeMeasurements
|
inline |
Write the vector of measurements without validations (it is faster than its non unsafe counterpart)
void FMSWriteFacade::writeTrajectory | ( | Trajectory const & | t | ) |
|
inline |
Write the trajectory without validations (it is faster than its non unsafe counterpart)
|
protected |
The writer for full waveform.
|
protected |
The vectorial writer for measurements.
|
protected |
The writer for trajectories.