Fawkes API Fawkes Development Version
storage_adapter.cpp
1
2/***************************************************************************
3 * storage_adapter.cpp - Utility to store differently typed point clouds in
4 * common container.
5 *
6 * Created: Fri Nov 30 16:46:13 2012
7 * Copyright 2011-2012 Tim Niemueller [www.niemueller.de]
8 ****************************************************************************/
9
10/* This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Library General Public License for more details.
19 *
20 * Read the full text in the LICENSE.GPL file in the doc directory.
21 */
22
23#include <pcl_utils/storage_adapter.h>
24
25namespace fawkes {
26namespace pcl_utils {
27
28/** @class StorageAdapter <pcl_utils/storage_adapter.h>
29 * Adapter base class.
30 * The adapter base class is required to store point clouds of
31 * arbitrary point types.
32 * @author Tim Niemueller
33 *
34 * @fn bool StorageAdapter::is_pointtype() const
35 * Check if storage adapter is for specified point type.
36 * @return true if storage adapter is for specified point type, false otherwise
37 *
38 * @fn template <PointT> PointCloudStorageAdapter<PointT> * StorageAdapter::as_pointtype() const
39 * Transform to specific PointCloudStorageAdapter.
40 * @return transformed PointCloudStorageAdapter
41 * @exception Exception thrown if storage adapter is not of requested point type or does not exist
42 *
43 * @fn StorageAdapter * StorageAdapter::clone() const
44 * Clone this storage adapter.
45 * @return cloned copy
46 *
47 * @fn const char * StorageAdapter::get_typename()
48 * Get typename of storage adapter.
49 * @return type name
50 *
51 * @fn size_t StorageAdapter::point_size() const
52 * Get size of a point.
53 * @return size in bytes of a single point
54 *
55 * @fn unsigned int StorageAdapter::width() const
56 * Get width of point cloud.
57 * @return width of point cloud
58 *
59 * @fn unsigned int StorageAdapter::height() const
60 * Get height of point cloud.
61 * @return height of point cloud
62 *
63 * @fn size_t StorageAdapter::num_points() const
64 * Get numer of points in point cloud.
65 * @return number of points
66 *
67 * @fn void * StorageAdapter::data_ptr() const
68 * Get pointer on data.
69 * @return pointer on data
70 *
71 * @fn void StorageAdapter::get_time(fawkes::Time &time) const
72 * Get last capture time.
73 * @param time upon return contains last capture time
74 *
75 * @fn std::string & StorageAdapter::frame_id() const
76 * Get frame ID of point cloud.
77 * @return Frame ID of point cloud.
78 *
79 * @fn void StorageAdapter::transform(const std::string &target_frame, const tf::Transformer &transformer)
80 * Transform point cloud.
81 * @param target_frame frame to transform to
82 * @param transformer transformer to get transform from
83 *
84 * @fn void StorageAdapter::transform(const std::string &target_frame, const Time &target_time, const std::string &fixed_frame, const tf::Transformer &transformer)
85 * Transform point cloud.
86 * @param target_frame frame to transform to
87 * @param target_time time for which to transform
88 * @param fixed_frame frame fixed over time
89 * @param transformer transformer to get transform from
90 */
91
92/** @class PointCloudStorageAdapter <pcl_utils/storage_adapter.h>
93 * Adapter class for PCL point types.
94 * The adapter class is required to store point clouds of arbitrary point types.
95 * @author Tim Niemueller
96 */
97
98} // end namespace pcl_utils
99} // end namespace fawkes
Fawkes library namespace.