IO of a 3D scan. More...
#include <scan_io.h>
Public Member Functions | |
virtual std::list< std::string > | readDirectory (const char *dir_path, unsigned int start, unsigned int end)=0 |
virtual void | readPose (const char *dir_path, const char *identifier, double *pose)=0 |
virtual void | readScan (const char *dir_path, const char *identifier, PointFilter &filter, std::vector< double > *xyz=0, std::vector< unsigned char > *rgb=0, std::vector< float > *reflectance=0, std::vector< float > *amplitude=0, std::vector< int > *type=0, std::vector< float > *deviation=0)=0 |
virtual bool | supports (IODataType type)=0 |
Static Public Member Functions | |
static void | clearScanIOs () |
Delete all ScanIO instances and (lazy) try to unload the libraries. More... | |
static ScanIO * | getScanIO (IOType iotype) |
Global mapping of io_types to single instances of ScanIOs. More... | |
Static Private Attributes | |
static std::map< IOType, ScanIO * > | m_scanIOs |
IO of a 3D scan.
This class needs to be instantiated by a class loading 3D scans from different file formats.
|
static |
Delete all ScanIO instances and (lazy) try to unload the libraries.
|
pure virtual |
Read a directory and return all possible scans in the [start,end] interval.
dir_path | The directory from which to read the scans |
start | Starting index |
end | Last index |
|
pure virtual |
Reads the pose from a dedicated pose file or from the scan file.
dir_path | The directory the scan is contained in |
scan_identifier | IO-specific identifier for the particular scan |
pose | Pointer to an existing double[6] array where the pose is saved in |
|
pure virtual |
Given a scan identifier, load the contents of this particular scan.
dir_path | The directory the scan is contained in |
identifier | IO-specific identifier for the particular scan |
filter | Filter object which each point is tested on by its position |
|
pure virtual |
Returns whether this ScanIO can load the requested data from a scan.
type | data channel request |