Common.h
Go to the documentation of this file.
1//
2// Created by christoph on 05.06.19.
3//
4
5#ifndef ROBDEKON_COMMON_H
6#define ROBDEKON_COMMON_H
7
8#include <pcl/point_cloud.h>
9#include <pcl/point_types.h>
10
13
14namespace boost
15{
17 {
18 typedef vertex_property_tag kind;
19 };
20
22 {
23 typedef vertex_property_tag kind;
24 };
25
26} // namespace boost
27
28namespace armarx
29{
30 typedef pcl::PointXYZRGBL PointT;
32 typedef pcl::PointCloud<PointT> PointCloudT;
33 typedef pcl::PointCloud<PointWithNormalT> PointCloudWithNormalT;
34
35
38 boost::vecS,
39 boost::undirectedS,
40 // vertex properties
41 boost::property<boost::vertex_color_t,
42 uint32_t,
43 boost::property<boost::vertex_timestamp_t,
44 double,
45 boost::property<boost::vertex_confidence_t, float>>>,
46 // edge properties
47 boost::property<boost::edge_weight_t, float, boost::property<boost::edge_index_t, int>>>
51 boost::vecS,
52 boost::undirectedS,
53 // vertex properties
54 boost::property<boost::vertex_color_t, uint32_t>,
55 // edge properties
56 boost::property<boost::edge_weight_t, float, boost::property<boost::edge_index_t, int>>>
58 typedef boost::subgraph<CloudGraph> Graph;
59 typedef boost::subgraph<CloudGraphWithTimestamp> GraphWithTimestamp;
60
63 typedef boost::reference_wrapper<Graph> GraphRef;
66 typedef boost::reference_wrapper<GraphWithTimestamp> GraphWithTimestampRef;
67
68 typedef typename boost::graph_traits<Graph>::vertex_descriptor VertexId;
69 typedef typename boost::graph_traits<GraphWithTimestamp>::vertex_descriptor VertexWTsId;
70 typedef typename boost::graph_traits<Graph>::edge_descriptor EdgeId;
71 typedef typename boost::graph_traits<Graph>::vertex_iterator VertexIterator;
72 typedef typename boost::graph_traits<Graph>::edge_iterator EdgeIterator;
73 typedef typename boost::graph_traits<Graph>::adjacency_iterator AdjacencyIterator;
74 typedef boost::property_map<CloudGraphWithTimestamp, boost::vertex_timestamp_t>::type
76 typedef boost::property_map<CloudGraphWithTimestamp, boost::vertex_confidence_t>::type
78} // namespace armarx
79
80#endif //ROBDEKON_COMMON_H
A sibling of boost::adjacency_list with PCL points bundled in vertices and copy-free access to them a...
This file offers overloads of toIce() and fromIce() functions for STL container types.
boost::graph_traits< Graph >::edge_descriptor EdgeId
Definition Common.h:70
pcl::PointCloud< PointWithNormalT > PointCloudWithNormalT
Definition Common.h:33
boost::property_map< CloudGraphWithTimestamp, boost::vertex_confidence_t >::type ConfidenceMap
Definition Common.h:77
boost::shared_ptr< GraphWithTimestamp > GraphWithTimestampPtr
Definition Common.h:64
boost::graph_traits< Graph >::vertex_descriptor VertexId
Definition Common.h:68
boost::property_map< CloudGraphWithTimestamp, boost::vertex_timestamp_t >::type TimestampMap
Definition Common.h:75
pcl::PointCloud< PointT > PointCloudT
Definition Common.h:32
boost::graph_traits< GraphWithTimestamp >::vertex_descriptor VertexWTsId
Definition Common.h:69
boost::graph_traits< Graph >::adjacency_iterator AdjacencyIterator
Definition Common.h:73
Agraph_t * GraphPtr
Definition Layout.h:41
boost::shared_ptr< const GraphWithTimestamp > GraphWithTimestampConstPtr
Definition Common.h:65
boost::reference_wrapper< GraphWithTimestamp > GraphWithTimestampRef
Definition Common.h:66
pcl::graph::point_cloud_graph< PointWithNormalT, boost::vecS, boost::undirectedS, boost::property< boost::vertex_color_t, uint32_t >, boost::property< boost::edge_weight_t, float, boost::property< boost::edge_index_t, int > > > CloudGraph
Definition Common.h:57
boost::graph_traits< Graph >::edge_iterator EdgeIterator
Definition Common.h:72
boost::shared_ptr< const Graph > GraphConstPtr
Definition Common.h:62
boost::subgraph< CloudGraphWithTimestamp > GraphWithTimestamp
Definition Common.h:59
boost::graph_traits< Graph >::vertex_iterator VertexIterator
Definition Common.h:71
boost::subgraph< CloudGraph > Graph
Definition Common.h:58
pcl::graph::point_cloud_graph< PointWithNormalT, boost::vecS, boost::undirectedS, boost::property< boost::vertex_color_t, uint32_t, boost::property< boost::vertex_timestamp_t, double, boost::property< boost::vertex_confidence_t, float > > >, boost::property< boost::edge_weight_t, float, boost::property< boost::edge_index_t, int > > > CloudGraphWithTimestamp
Definition Common.h:48
pcl::PointXYZRGBL PointT
Definition Common.h:30
pcl::PointXYZRGBLNormal PointWithNormalT
Definition Common.h:31
boost::reference_wrapper< Graph > GraphRef
Definition Common.h:63
vertex_property_tag kind
Definition Common.h:23
vertex_property_tag kind
Definition Common.h:18