descriptions/ScanProjectIO.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #ifndef LVR2_IO_HDF5_SCANPROJECTIO_HPP
4 #define LVR2_IO_HDF5_SCANPROJECTIO_HPP
5 
7 
8 #include <boost/optional.hpp>
9 #include <regex>
10 
11 // Dependencies
12 #include "ArrayIO.hpp"
13 #include "MatrixIO.hpp"
14 #include "ScanIO.hpp"
15 #include "ScanPositionIO.hpp"
16 
17 namespace lvr2
18 {
19 
48 template <typename FeatureBase>
50 {
51  public:
52  void saveScanProject(const ScanProjectPtr& scanProjectPtr);
53 
55 
56  protected:
57  FeatureBase* m_featureBase = static_cast<FeatureBase*>(this);
58  // dependencies
61 
62  // static constexpr const char* ID = "ScanProjectIO";
63  // static constexpr const char* OBJID = "ScanProject";
64 };
65 
66 template <typename FeatureBase>
68 {
69 
70  // DEPS
72 
73  // add the feature itself
74  using type = typename deps::template add_features<ScanProjectIO>::type;
75 };
76 
77 } // namespace lvr2
78 
79 #include "ScanProjectIO.tcc"
80 
81 #endif // LVR2_IO_HDF5_SCANPROJECTIO_HPP
ArrayIO.hpp
lvr2::FeatureConstruct
Helper class how to construct a IO feature with its dependencies.
Definition: FeatureBase.hpp:20
ScanIO.hpp
lvr2::ScanProjectIO
Hdf5IO Feature for handling ScanProject related IO.
Definition: descriptions/ScanProjectIO.hpp:49
lvr2::ScanProjectIO::m_featureBase
FeatureBase * m_featureBase
Definition: descriptions/ScanProjectIO.hpp:57
lvr2::ScanProjectPtr
std::shared_ptr< ScanProject > ScanProjectPtr
Definition: ScanTypes.hpp:344
lvr2::ScanProjectIO::loadScanProject
ScanProjectPtr loadScanProject()
ScanPositionIO.hpp
lvr2::ScanPositionIO
Definition: descriptions/ScanPositionIO.hpp:49
ScanTypes.hpp
lvr2::FeatureConstruct< ScanProjectIO, FeatureBase >::deps
typename FeatureConstruct< ScanPositionIO, FeatureBase >::type deps
Definition: descriptions/ScanProjectIO.hpp:71
lvr2::ScanProjectIO::saveScanProject
void saveScanProject(const ScanProjectPtr &scanProjectPtr)
lvr2::ScanProjectIO::m_scanPositionIO
ScanPositionIO< FeatureBase > * m_scanPositionIO
Definition: descriptions/ScanProjectIO.hpp:59
lvr2::FeatureConstruct< ScanProjectIO, FeatureBase >::type
typename deps::template add_features< ScanProjectIO >::type type
Definition: descriptions/ScanProjectIO.hpp:74
lvr2::FeatureConstruct::type
typename Derived::template add_features< Feature >::type type
Definition: FeatureBase.hpp:151
lvr2
Definition: BaseBufferManipulators.hpp:39
lvr2::FeatureBase
Manager Class for all FeatureBase components located in hdf5 directory.
Definition: FeatureBase.hpp:31
MatrixIO.hpp


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 Wed Mar 2 2022 00:37:25