Fawkes API  Fawkes Development Version
fawkes::PointCloudManager Class Reference

Point Cloud manager. More...

#include <>>

List of all members.

Classes

class  PointCloudStorageAdapter
 Adapter class for PCL point types. More...
class  StorageAdapter
 Adapter base class. More...

Public Member Functions

 PointCloudManager ()
 Constructor.
virtual ~PointCloudManager ()
 Destructor.
template<typename PointT >
void add_pointcloud (const char *id, RefPtr< pcl::PointCloud< PointT > > cloud)
 Add point cloud.
void remove_pointcloud (const char *id)
 Remove the point cloud.
template<typename PointT >
const RefPtr< const
pcl::PointCloud< PointT > > 
get_pointcloud (const char *id)
 Get point cloud.
bool exists_pointcloud (const char *id)
 Check if point cloud exists.
template<typename PointT >
bool exists_pointcloud (const char *id)
 Check if point cloud of specified type exists.
std::vector< std::stringget_pointcloud_list () const
 Get list of point cloud IDs.
const fawkes::LockMap
< std::string, StorageAdapter * > & 
get_pointclouds () const
 Get map of point clouds.
const StorageAdapterget_storage_adapter (const char *id)
 Get a storage adapter.

Detailed Description

Point Cloud manager.

This class manages a number of points clouds and acts as a hub to distribute them.

Author:
Tim Niemueller

Constructor & Destructor Documentation

fawkes::PointCloudManager::PointCloudManager ( )

Constructor.

Definition at line 113 of file pointcloud_manager.cpp.

fawkes::PointCloudManager::~PointCloudManager ( ) [virtual]

Destructor.

Definition at line 118 of file pointcloud_manager.cpp.


Member Function Documentation

template<typename PointT >
void fawkes::PointCloudManager::add_pointcloud ( const char *  id,
RefPtr< pcl::PointCloud< PointT > >  cloud 
)

Add point cloud.

Parameters:
idID of point cloud to add, must be unique
cloudrefptr to point cloud

Definition at line 168 of file pointcloud_manager.h.

Referenced by LaserPointCloudThread::init(), OpenNiPclOnlyThread::init(), TabletopObjectsThread::init(), and RobotinoIrPclThread::init().

bool fawkes::PointCloudManager::exists_pointcloud ( const char *  id)

Check if point cloud exists.

Parameters:
idID of point cloud to check
Returns:
true if the point cloud exists, false otherwise

Definition at line 148 of file pointcloud_manager.cpp.

Referenced by RosPointCloudAdapter::get_info().

template<typename PointT >
bool fawkes::PointCloudManager::exists_pointcloud ( const char *  id)

Check if point cloud of specified type exists.

Parameters:
idID of point cloud to check
Returns:
true if the point cloud exists, false otherwise
template<typename PointT >
const RefPtr< const pcl::PointCloud< PointT > > fawkes::PointCloudManager::get_pointcloud ( const char *  id)

Get point cloud.

Parameters:
idID of point cloud to retrieve
Returns:
point cloud
Exceptions:
Exceptionthrown if point cloud for given ID does not exist

Definition at line 182 of file pointcloud_manager.h.

Referenced by TabletopObjectsThread::init(), and RosPointCloudAdapter::get_info().

std::vector< std::string > fawkes::PointCloudManager::get_pointcloud_list ( ) const

Get list of point cloud IDs.

Returns:
list of point cloud IDs

Definition at line 160 of file pointcloud_manager.cpp.

Referenced by RosPointCloudThread::init().

const fawkes::LockMap< std::string, PointCloudManager::StorageAdapter * > & fawkes::PointCloudManager::get_pointclouds ( ) const

Get map of point clouds.

Use with care. Do not use in ROS-enabled plugins unless you are aware of sensor_msgs and std_msgs incompatibilities between standalone PCL and ROS!

Returns:
map from ID to storage adapter

Definition at line 181 of file pointcloud_manager.cpp.

const PointCloudManager::StorageAdapter * fawkes::PointCloudManager::get_storage_adapter ( const char *  id)

Get a storage adapter.

Use with care. Do not use in ROS-enabled plugins unless you are aware of sensor_msgs and std_msgs incompatibilities between standalone PCL and ROS!

Parameters:
idID of point clouds whose storage adapter to retrieve
Returns:
storage adapter for given ID
Exceptions:
Exceptionthrown if ID is unknown

Definition at line 196 of file pointcloud_manager.cpp.

Referenced by RosPointCloudAdapter::get_info(), and RosPointCloudAdapter::get_data().

void fawkes::PointCloudManager::remove_pointcloud ( const char *  id)

Remove the point cloud.

Parameters:
idID of point cloud to remove

Definition at line 133 of file pointcloud_manager.cpp.

Referenced by LaserPointCloudThread::finalize(), OpenNiPclOnlyThread::finalize(), TabletopObjectsThread::finalize(), and RobotinoIrPclThread::finalize().


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