descriptions/ScanImageIO.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #ifndef LVR2_IO_HDF5_SCANIMAGEIO_HPP
4 #define LVR2_IO_HDF5_SCANIMAGEIO_HPP
5 
6 #include "ImageIO.hpp"
7 #include "MatrixIO.hpp"
9 
10 namespace lvr2
11 {
12 
13 template <typename FeatureBase>
15 {
16  public:
17  void saveScanImage(const size_t& scanPos, const size_t& camNr, const size_t& imgNr, ScanImagePtr& buffer);
18  ScanImagePtr loadScanImage(const size_t& scanPos, const size_t& camNr, const size_t& imgNr);
19 
20  protected:
21  //bool isScanImage(const std::string& group);
22 
23  FeatureBase* m_featureBase = static_cast<FeatureBase*>(this);
24 
25  // dependencies
28 
29  static constexpr const char* ID = "ScanImageIO";
30  static constexpr const char* OBJID = "ScanImage";
31 };
32 
40 template <typename FeatureBase>
42 {
43  // DEPS
46  using deps = typename dep1::template Merge<dep2>;
47 
48  // ADD THE FEATURE ITSELF
49  using type = typename deps::template add_features<ScanImageIO>::type;
50 };
51 
52 } // namespace lvr2
53 
54 #include "ScanImageIO.tcc"
55 
56 #endif // LVR2_IO_HDF5_SCANIMAGEIO_HPP
lvr2::ScanImageIO::saveScanImage
void saveScanImage(const size_t &scanPos, const size_t &camNr, const size_t &imgNr, ScanImagePtr &buffer)
lvr2::FeatureConstruct< ScanImageIO, FeatureBase >::dep1
typename FeatureConstruct< ImageIO, FeatureBase >::type dep1
Definition: descriptions/ScanImageIO.hpp:44
lvr2::FeatureConstruct
Helper class how to construct a IO feature with its dependencies.
Definition: FeatureBase.hpp:20
lvr2::ScanImageIO::OBJID
static constexpr const char * OBJID
Definition: descriptions/ScanImageIO.hpp:30
lvr2::ScanImagePtr
std::shared_ptr< ScanImage > ScanImagePtr
Definition: ScanTypes.hpp:127
lvr2::FeatureConstruct< ScanImageIO, FeatureBase >::dep2
typename FeatureConstruct< MatrixIO, FeatureBase >::type dep2
Definition: descriptions/ScanImageIO.hpp:45
ImageIO.hpp
ScanTypes.hpp
lvr2::FeatureConstruct< ScanImageIO, FeatureBase >::type
typename deps::template add_features< ScanImageIO >::type type
Definition: descriptions/ScanImageIO.hpp:49
lvr2::ScanImageIO::m_featureBase
FeatureBase * m_featureBase
Definition: descriptions/ScanImageIO.hpp:23
lvr2::ScanImageIO::ID
static constexpr const char * ID
Definition: descriptions/ScanImageIO.hpp:29
lvr2::ScanImageIO
Definition: descriptions/ScanImageIO.hpp:14
lvr2::ScanImageIO::loadScanImage
ScanImagePtr loadScanImage(const size_t &scanPos, const size_t &camNr, const size_t &imgNr)
lvr2::ScanImageIO::m_matrixIO
MatrixIO< FeatureBase > * m_matrixIO
Definition: descriptions/ScanImageIO.hpp:27
lvr2::ScanImageIO::m_imageIO
ImageIO< FeatureBase > * m_imageIO
Definition: descriptions/ScanImageIO.hpp:26
lvr2::FeatureConstruct::type
typename Derived::template add_features< Feature >::type type
Definition: FeatureBase.hpp:151
lvr2
Definition: BaseBufferManipulators.hpp:39
lvr2::MatrixIO
Definition: descriptions/MatrixIO.hpp:11
lvr2::FeatureBase
Manager Class for all FeatureBase components located in hdf5 directory.
Definition: FeatureBase.hpp:31
lvr2::FeatureConstruct< ScanImageIO, FeatureBase >::deps
typename dep1::template Merge< dep2 > deps
Definition: descriptions/ScanImageIO.hpp:46
MatrixIO.hpp
lvr2::ImageIO
Definition: descriptions/ImageIO.hpp:13


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