|
Voxel
0.5.6
|
Voxel Library is meant to be a platform to interface one or more depth cameras, with a common higher-level API. The higher level API is explained here. For installation instructions and overall documentation of Voxel library, see https://github.com/3dtof/voxelsdk/wiki.
All public API elements are enclosed in namespace Voxel.
Several common STL data-structures such std::vector, std::list, std::thread, etc. are used in Voxel library. However, they have been wrapped in typedefs and template aliases for ease of replacement later if necessary. All replacement typedefs are defined in Common.h, and follows naming discussed in Section Naming Conventions.
Two primary API classes which will be used by most of the users, are Voxel::CameraSystem and Voxel::DepthCamera.
Voxel::TI::ToFCameraBase is the main abstract class which partially implements Voxel::DepthCamera. Voxel::TI::ToFCameraBase is not TI specific, but makes an assumption about ToF type depth cameras. Voxel::TI::ToFCamera is the main abstract class which is TI specific, and it is derived from Voxel::TI::ToFCameraBase. Voxel::TI::ToFHaddockCamera is further derived from Voxel::TI::ToFCamera and adds Haddock generation specific support including parameters. However, this does not have board-specific details. Voxel::TI::Voxel14Camera is an example of board-specific class for Voxel-14 board, inherited from Voxel::TI::ToFHaddockCamera. Voxel::TI::Voxel14Camera defines board-specific versions of Voxel::Streamer, Voxel::Downloader and Voxel::RegisterProgrammer.
The rest of the classes in Voxel SDK are used to handle various individual functionalities. See Modules to know about these classes.
1.8.7