hdf5/ScanCameraIO.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #ifndef LVR2_IO_HDF5_SCANCAMERAIO_HPP
4 #define LVR2_IO_HDF5_SCANCAMERAIO_HPP
5 
6 #include "ScanImageIO.hpp"
8 
9 namespace lvr2
10 {
11 
12 namespace hdf5features
13 {
14 
15 template <typename Derived>
17 {
18  public:
19  void save(uint scanPos, uint camNr, const ScanCameraPtr& buffer);
20  void save(HighFive::Group& group, uint camNr, const ScanCameraPtr& buffer);
21  void save(HighFive::Group& group, const ScanCameraPtr& buffer);
22 
23  ScanCameraPtr load(uint scanPos, uint camNr);
24  ScanCameraPtr load(HighFive::Group& group, uint camNr);
26 
27  protected:
28  bool isScanCamera(HighFive::Group& group);
29 
30  Derived* m_file_access = static_cast<Derived*>(this);
31 
32  // dependencies
34 
35  static constexpr const char* ID = "ScanCameraIO";
36  static constexpr const char* OBJID = "ScanCamera";
37 };
38 
39 } // namespace hdf5features
40 
48 template <typename Derived>
49 struct Hdf5Construct<hdf5features::ScanCameraIO, Derived>
50 {
51 
52  // DEPS
54 
55  // ADD THE FEATURE ITSELF
56  using type = typename deps::template add_features<hdf5features::ScanCameraIO>::type;
57 };
58 
59 } // namespace lvr2
60 
61 #include "ScanCameraIO.tcc"
62 
63 #endif // LVR2_IO_HDF5_SCANCAMERAIO_HPP
lvr2::hdf5features::ScanCameraIO::load
ScanCameraPtr load(uint scanPos, uint camNr)
lvr2::hdf5features::ScanCameraIO::m_file_access
Derived * m_file_access
Definition: hdf5/ScanCameraIO.hpp:30
lvr2::ScanCameraIO
Definition: descriptions/ScanCameraIO.hpp:13
lvr2::Hdf5Construct::type
typename Derived::template add_features< Feature >::type type
Definition: HDF5FeatureBase.hpp:165
lvr2::hdf5features::ScanImageIO
Definition: hdf5/ScanImageIO.hpp:17
lvr2::hdf5features::ScanCameraIO::isScanCamera
bool isScanCamera(HighFive::Group &group)
ScanTypes.hpp
lvr2::Hdf5Construct< hdf5features::ScanCameraIO, Derived >::deps
typename Hdf5Construct< hdf5features::ScanImageIO, Derived >::type deps
Definition: hdf5/ScanCameraIO.hpp:53
lvr2::hdf5features::ScanCameraIO
Definition: hdf5/ScanCameraIO.hpp:16
lvr2::hdf5features::ScanCameraIO::OBJID
static constexpr const char * OBJID
Definition: hdf5/ScanCameraIO.hpp:36
lvr2::hdf5features::ScanCameraIO::save
void save(uint scanPos, uint camNr, const ScanCameraPtr &buffer)
HighFive::Group
Definition: H5Group.hpp:20
lvr2::hdf5features::ScanCameraIO::m_scanImageIO
ScanImageIO< Derived > * m_scanImageIO
Definition: hdf5/ScanCameraIO.hpp:33
lvr2::Hdf5Construct< hdf5features::ScanCameraIO, Derived >::type
typename deps::template add_features< hdf5features::ScanCameraIO >::type type
Definition: hdf5/ScanCameraIO.hpp:56
lvr2
Definition: BaseBufferManipulators.hpp:39
ScanImageIO.hpp
lvr2::Hdf5Construct
Helper class how to construct a IO feature with its dependencies.
Definition: HDF5FeatureBase.hpp:27
uint
unsigned int uint
Definition: Model.hpp:46
lvr2::hdf5features::ScanCameraIO::ID
static constexpr const char * ID
Definition: hdf5/ScanCameraIO.hpp:35
lvr2::ScanCameraPtr
std::shared_ptr< ScanCamera > ScanCameraPtr
Definition: ScanTypes.hpp:153


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:24