descriptions/PointCloudIO.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #ifndef LVR2_IO_HDF5_POINTBUFFERIO_HPP
4 #define LVR2_IO_HDF5_POINTBUFFERIO_HPP
5 
6 #include <boost/optional.hpp>
7 
9 
10 // Dependencies
11 #include "ChannelIO.hpp"
12 #include "VariantChannelIO.hpp"
13 
14 namespace lvr2 {
15 
44 template<typename FeatureBase>
46 {
47 public:
48  void savePointCloud(const std::string& group, const std::string& name, const PointBufferPtr& buffer);
49  PointBufferPtr loadPointCloud(const std::string& group, const std::string& container);
50 
51 protected:
52 
53  bool isPointCloud(const std::string& group);
54 
55  FeatureBase* m_FeatureBase = static_cast<FeatureBase*>(this);
56  // dependencies
58 
59  static constexpr const char* ID = "PointCloudIO";
60  static constexpr const char* OBJID = "PointBuffer";
61 };
62 
63 template<typename FeatureBase>
65 
66  // DEPS
68 
69  // add actual feature
70  using type = typename deps::template add_features<PointCloudIO>::type;
71 
72 };
73 
74 } // namespace lvr2
75 
76 #include "PointCloudIO.tcc"
77 
78 
79 #endif // LVR2_IO_HDF5_POINTBUFFERIO_HPP
typename FeatureConstruct< VariantChannelIO, FeatureBase >::type deps
Manager Class for all FeatureBase components located in hdf5 directory.
Definition: FeatureBase.hpp:31
Helper class how to construct a IO feature with its dependencies.
Definition: FeatureBase.hpp:20
typename deps::template add_features< PointCloudIO >::type type
static constexpr const char * OBJID
std::shared_ptr< PointBuffer > PointBufferPtr
typename Derived::template add_features< Feature >::type type
VariantChannelIO< FeatureBase > * m_vchannel_io
Hdf5IO Feature for handling VariantChannel related IO.
void savePointCloud(const std::string &group, const std::string &name, const PointBufferPtr &buffer)
Hdf5IO Feature for handling PointBuffer related IO.
static constexpr const char * ID
bool isPointCloud(const std::string &group)
PointBufferPtr loadPointCloud(const std::string &group, const std::string &container)


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Mon Feb 28 2022 22:46:08