IModelFromAxis.hpp
1 #pragma once
2 
3 #include <opals/IModuleBase.hpp>
4 #include <opals/Path.hpp>
5 #include <opals/Vector.hpp>
6 
7 #if defined(_MSC_VER) && !defined(OPALS_NO_AUTOLINK)
8  #if defined _DEBUG && !defined OPALS_NO_DEBUG
9  #pragma comment(lib, "opalsModelFromAxis_d.lib")
10  #else
11  #pragma comment(lib, "opalsModelFromAxis.lib")
12  #endif
13 #endif
14 
15 namespace opals {
16 
17  namespace opts
18  {
19  /// Options of \ref ModuleModelFromAxis
20  namespace ModelFromAxis
21  {
22  /// Options of \ref ModuleModelFromAxis
23  using Options =
24  IGroup< Names::_,
30  >;
31  }
32  }
33 
34  /// Extracts a road (or river) probability raster model based on a given axis and a list of DTM models.
35  /** The axis file is a vector file containing Linestring geometry with a fixed sampling between points (e.g. 10m)
36  TODO:
37  More details on opalsModelFromAxis with much more words,
38  possibly on several lines. */
39  /// \see \ref ModuleModelFromAxis
40  class OPALS_API IModelFromAxis : virtual public IModuleBase
41  {
42 
43  public:
44  static IModelFromAxis* New();
45  static IModelFromAxis* New( IControlObject &controlObject );
46  static IModelFromAxis* New( const IModuleBase &parent );
47  static IModelFromAxis* New( const IModuleBase &parent, IControlObject &controlObject );
48 
49  virtual ~IModelFromAxis() {}
50 
51  /// \name Access to module-specific options.
52  ///@{
54  Options& opts() override = 0;
55  const Options& opts() const override = 0;
56  ///@}
57 
58  };
59 
60 };
A leaf that holds a value.
Definition: IOption.hpp:62
Contains the public interface of OPALS.
Definition: AbsValueOrQuantile.hpp:8
Abstract base class of all opals modules.
Definition: IModuleBase.hpp:13
Interface for retrieving status and progress information from a module run.
Definition: c++_api/inc/opals/IControlObject.hpp:30
Extracts a road (or river) probability raster model based on a given axis and a list of DTM models.
Definition: IModelFromAxis.hpp:40
IGroup< Names::_, IValue< Names::axisFile, false, Path >, IValue< Names::inFile, false, Vector< Path > >, IValue< Names::outFile, false, Path >, IValue< Names::oFormat, false, String >, IValue< Names::modelPlaneThreshold, false, double > > Options
Options of Module ModelFromAxis.
Definition: IModelFromAxis.hpp:30
A group of options.
Definition: IOption.hpp:136