Helios++
Helios software for LiDAR simulations
helios::filems::VectorialMeasurementWriter Class Reference

Common implementation for any vectorial measurement writer. More...

#include <VectorialMeasurementWriter.h>

Inheritance diagram for helios::filems::VectorialMeasurementWriter:
Collaboration diagram for helios::filems::VectorialMeasurementWriter:

Public Member Functions

 VectorialMeasurementWriter ()
 Default constructor for vectorial measurement writer.
 
void writeMeasurements (vector< Measurement > const &measurements)
 Write a vector of measurements. More...
 
void writeMeasurementsUnsafe (vector< Measurement > const &measurements) const
 Like filems::VectorialMeasurementWriter::writeMeasurements but faster because there is no validation. More...
 
shared_ptr< SyncFileWriter< vector< Measurement > const &, glm::dvec3 const & > > makeWriter (WriterType const &type, string const &path, bool const zipOutput, double const lasScale, glm::dvec3 shift, double const minIntensity, double const deltaIntensity) const override
 Make a vectorial measurement SyncFileWriter. More...
 
- Public Member Functions inherited from helios::filems::BaseMeasurementWriter< vector< Measurement > const &, glm::dvec3 const & >
 BaseMeasurementWriter ()=default
 Default constructor for base measurement writer.
 
virtual void configure (string const &parent, string const &prefix, bool const lastLegInStrip)
 Configure the output path for the base measurement writer. More...
 
virtual WriterType chooseWriterType () const
 Choose a type of file writer based on input flags. More...
 
virtual void clearPointcloudFile ()
 Clear point cloud file for current leg.
 
void finish () override
 Finishes all writers. More...
 
virtual void setOutputFilePath (string const &path, bool const lastLegInStrip)
 Set path to output file. More...
 
shared_ptr< ScannergetScanner () const
 Obtain the scanner associated with the base measurement writer. More...
 
void setScanner (shared_ptr< Scanner > scanner)
 Associate a new scanner with the base measurement writer, which implies updating the shift vector to be the same than the one defined for the scene associated to the scanner. More...
 
glm::dvec3 const & getShift ()
 Obtain the shift applied by the base measurement writer. More...
 
- Public Member Functions inherited from helios::filems::HeliosWriter< WriteArgs ... >
 HeliosWriter ()=default
 Default constructor for HELIOS++ writer.
 
virtual bool hasWriter () const
 Check whether the HeliosWriter has a non null writer (true) or not (false) More...
 
virtual fs::path getOutputFilePath () const
 Get the path to the output file. More...
 
virtual string getOutputPath () const
 
bool isLasOutput () const
 Get the LAS output flag. More...
 
void setLasOutput (bool const lasOutput)
 Set the LAS output flag. More...
 
bool isLas10 () const
 Get the LAS 10 specification flag. More...
 
void setLas10 (bool const las10)
 Set the LAS output flag. More...
 
bool isZipOutput () const
 Get the zip output flag. More...
 
void setZipOutput (bool const zipOutput)
 Set the zip output flag. More...
 
double getLasScale () const
 Obtain the LAS scale of the measurement writer. More...
 
void setLasScale (double const lasScale)
 Set the LAS scale of the measurement writer. More...
 

Additional Inherited Members

- Protected Attributes inherited from helios::filems::BaseMeasurementWriter< vector< Measurement > const &, glm::dvec3 const & >
shared_ptr< Scannerscanner
 The scanner that generates the measurements to be written. More...
 
glm::dvec3 shift
 The pointer to the shift vector to be applied to measurements. More...
 
unordered_map< string, shared_ptr< SyncFileWriter< WriteArgs ... > > > writers
 Map of writers. This map allows to reuse writers for legs grouped in the same strip.
 
- Protected Attributes inherited from helios::filems::HeliosWriter< WriteArgs ... >
shared_ptr< SyncFileWriter< WriteArgs ... > > sfw
 Synchronous file writer. More...
 
bool lasOutput
 Flag specifying if detector output must be written in LAS format (true) or not (false) More...
 
bool las10
 Flag specifying if detect output must be writing in LAS 1.0 (LAS 1.4 is written by default)
 
bool zipOutput
 Flag specifying if detector output must be zipped (true) or not (false)
 
double lasScale
 Scale factor specification to be used when LAS output format specified. More...
 

Detailed Description

Common implementation for any vectorial measurement writer.

Author
Alberto M. Esmoris Pena
Version
1.0

Member Function Documentation

◆ makeWriter()

shared_ptr< SyncFileWriter<vector<Measurement> const &, glm::dvec3 const &> > helios::filems::VectorialMeasurementWriter::makeWriter ( WriterType const &  type,
string const &  path,
bool const  zipOutput,
double const  lasScale,
glm::dvec3  shift,
double const  minIntensity,
double const  deltaIntensity 
) const
inlineoverridevirtual

◆ writeMeasurements()

void VectorialMeasurementWriter::writeMeasurements ( vector< Measurement > const &  measurements)

Write a vector of measurements.

Parameters
measurementsVector of measurements to be written

◆ writeMeasurementsUnsafe()

void helios::filems::VectorialMeasurementWriter::writeMeasurementsUnsafe ( vector< Measurement > const &  measurements) const
inline

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