Fawkes API
Fawkes Development Version
|
Database point cloud pipeline base class. More...
#include <pcl_db_pipeline.h>
Public Member Functions | |
PointCloudDBPipeline (mongo::DBClientBase *mongodb_client, fawkes::Configuration *config, fawkes::Logger *logger, ColorCloudPtr output) | |
Constructor. More... | |
virtual | ~PointCloudDBPipeline () |
Destructor. More... | |
ApplicabilityStatus | applicable (std::vector< long long > ×, std::string &database, std::string &collection) |
Check if this pipeline instance is suitable for the given times. More... | |
Protected Types | |
typedef pcl::PointCloud< PointType > | Cloud |
Basic point cloud type. More... | |
typedef pcl::PointXYZRGB | ColorPointType |
Colored point type. More... | |
typedef pcl::PointCloud< ColorPointType > | ColorCloud |
Type for colored point clouds based on ColorPointType. More... | |
typedef Cloud::Ptr | CloudPtr |
Shared pointer to cloud. More... | |
typedef Cloud::ConstPtr | CloudConstPtr |
Shared pointer to constant cloud. More... | |
typedef ColorCloud::Ptr | ColorCloudPtr |
Shared pointer to colored cloud. More... | |
typedef ColorCloud::ConstPtr | ColorCloudConstPtr |
Shared pointer to constant colored cloud. More... | |
Protected Member Functions | |
void | read_gridfs_file (void *dataptr, std::string &database, std::string filename) |
Read a file from MongoDB GridFS. More... | |
std::vector< CloudPtr > | retrieve_clouds (std::vector< long long > ×, std::vector< long long > &actual_times, std::string &database, std::string &collection) |
Retrieve point clouds from database. More... | |
Protected Attributes | |
const char * | name_ |
Name of the pipeline. More... | |
long | cfg_pcl_age_tolerance_ |
Age tolerance for retrieved point clouds. More... | |
long | cfg_transform_range_ [2] |
Transform range start and end times. More... | |
mongo::DBClientBase * | mongodb_client_ |
MongoDB client to retrieve data. More... | |
fawkes::Logger * | logger_ |
Logger for informative messages. More... | |
ColorCloudPtr | output_ |
The final (colored) output of the pipeline. More... | |
Database point cloud pipeline base class.
Common functionality for pcl-db-* plugins operating on point clouds restored from MongoDB.
Definition at line 84 of file pcl_db_pipeline.h.
|
protected |
Basic point cloud type.
Definition at line 88 of file pcl_db_pipeline.h.
|
protected |
Shared pointer to constant cloud.
Definition at line 97 of file pcl_db_pipeline.h.
|
protected |
Shared pointer to cloud.
Definition at line 95 of file pcl_db_pipeline.h.
|
protected |
Type for colored point clouds based on ColorPointType.
Definition at line 93 of file pcl_db_pipeline.h.
|
protected |
Shared pointer to constant colored cloud.
Definition at line 102 of file pcl_db_pipeline.h.
|
protected |
Shared pointer to colored cloud.
Definition at line 100 of file pcl_db_pipeline.h.
|
protected |
Colored point type.
Definition at line 91 of file pcl_db_pipeline.h.
|
inline |
Constructor.
mongodb_client | MongoDB client |
config | configuration |
logger | Logger |
output | output point cloud |
Definition at line 111 of file pcl_db_pipeline.h.
|
inlinevirtual |
Destructor.
Definition at line 132 of file pcl_db_pipeline.h.
|
inline |
Check if this pipeline instance is suitable for the given times.
Retrieves information about the point clouds for the specified times
and checks if this pipeline (depending on the template parameter) is suitable for the processing of these pipelines.
times | times for which to check the point clouds |
database | ddatabase from which to retrieve the information |
collection | collection from which to retrieve the information |
Definition at line 146 of file pcl_db_pipeline.h.
Referenced by PointCloudDBRetrieveThread::loop(), and PointCloudDBMergeThread::loop().
|
inlineprotected |
Read a file from MongoDB GridFS.
dataptr | Pointer to buffer to read data to. Make sure it is of sufficient size. |
database | database from which to read the file |
filename | name of file to read from GridFS. |
Definition at line 230 of file pcl_db_pipeline.h.
Referenced by PointCloudDBPipeline< pcl::PointXYZ >::retrieve_clouds().
|
inlineprotected |
Retrieve point clouds from database.
times | timestamps for when to read the point clouds. The method will retrieve the point clouds with the minimum difference between the desired and actual times. |
actual_times | upon return contains the actual times of the point clouds retrieved based on the desired times . |
database | name of the database to retrieve data from |
collection | name of the collection to retrieve data from. |
Definition at line 266 of file pcl_db_pipeline.h.
Referenced by PointCloudDBMergePipeline< pcl::PointXYZ >::merge(), and PointCloudDBRetrievePipeline< pcl::PointXYZ >::retrieve().
|
protected |
Age tolerance for retrieved point clouds.
Definition at line 334 of file pcl_db_pipeline.h.
Referenced by PointCloudDBPipeline< pcl::PointXYZ >::applicable(), PointCloudDBMergePipeline< pcl::PointXYZ >::PointCloudDBMergePipeline(), PointCloudDBPipeline< pcl::PointXYZ >::PointCloudDBPipeline(), and PointCloudDBPipeline< pcl::PointXYZ >::retrieve_clouds().
|
protected |
Transform range start and end times.
Definition at line 335 of file pcl_db_pipeline.h.
Referenced by PointCloudDBMergePipeline< pcl::PointXYZ >::merge(), PointCloudDBMergePipeline< pcl::PointXYZ >::PointCloudDBMergePipeline(), PointCloudDBPipeline< pcl::PointXYZ >::PointCloudDBPipeline(), and PointCloudDBRetrievePipeline< pcl::PointXYZ >::retrieve().
|
protected |
Logger for informative messages.
Definition at line 339 of file pcl_db_pipeline.h.
Referenced by PointCloudDBPipeline< pcl::PointXYZ >::applicable(), PointCloudDBMergePipeline< pcl::PointXYZ >::merge(), PointCloudDBMergePipeline< pcl::PointXYZ >::PointCloudDBMergePipeline(), PointCloudDBPipeline< pcl::PointXYZ >::read_gridfs_file(), PointCloudDBRetrievePipeline< pcl::PointXYZ >::retrieve(), and PointCloudDBPipeline< pcl::PointXYZ >::retrieve_clouds().
|
protected |
MongoDB client to retrieve data.
Definition at line 337 of file pcl_db_pipeline.h.
Referenced by PointCloudDBPipeline< pcl::PointXYZ >::applicable(), PointCloudDBMergePipeline< pcl::PointXYZ >::merge(), PointCloudDBPipeline< pcl::PointXYZ >::read_gridfs_file(), PointCloudDBRetrievePipeline< pcl::PointXYZ >::retrieve(), and PointCloudDBPipeline< pcl::PointXYZ >::retrieve_clouds().
|
protected |
Name of the pipeline.
Definition at line 332 of file pcl_db_pipeline.h.
Referenced by PointCloudDBPipeline< pcl::PointXYZ >::applicable(), PointCloudDBMergePipeline< pcl::PointXYZ >::merge(), PointCloudDBMergePipeline< pcl::PointXYZ >::PointCloudDBMergePipeline(), PointCloudDBPipeline< pcl::PointXYZ >::PointCloudDBPipeline(), PointCloudDBRetrievePipeline< pcl::PointXYZ >::PointCloudDBRetrievePipeline(), PointCloudDBPipeline< pcl::PointXYZ >::read_gridfs_file(), PointCloudDBRetrievePipeline< pcl::PointXYZ >::retrieve(), and PointCloudDBPipeline< pcl::PointXYZ >::retrieve_clouds().
|
protected |
The final (colored) output of the pipeline.
Definition at line 341 of file pcl_db_pipeline.h.
Referenced by PointCloudDBMergePipeline< pcl::PointXYZ >::merge(), and PointCloudDBRetrievePipeline< pcl::PointXYZ >::retrieve().