MieModelOff.h
Go to the documentation of this file.
1 #ifndef _atm_MieModelOff_h_
2 #define _atm_MieModelOff_h_
3 
4 
5 #include <atm/VMieModel.h>
6 #include <vector>
7 #include <limits>
8 
9 
10 namespace atm {
11 
12  class ScatteringResult;
13  class AttenuationResult;
14 
26  class MieModelOff : public atm::VMieModel {
27 
28  public:
30  virtual ~MieModelOff() { }
31 
34  const utl::Point& xB,
35  const double angle,
36  const double distance,
37  const std::vector<double>& wLength) const;
38 
41  const utl::Point& xB,
42  const double angle,
43  const double distance,
44  const atm::AttenuationResult& mieAttenuation) const;
45 
48  const utl::Point& xFinal,
49  const std::vector<double>& wLength) const;
50 
51  double
53  const utl::Point& /*xB*/,
54  const double /*angle*/,
55  const double /*distance*/,
56  const double /*wLength*/) const
57  { return 0; }
58 
59  double
61  const utl::Point& /*xB*/,
62  const double /*angle*/,
63  const double /*distance*/,
64  const double /*wLength*/,
65  const double /*mieAttenuation*/) const
66  { return 0; }
67 
68  double
70  const utl::Point& /*xFinal*/,
71  const double /*wLength*/) const
72  { return 1; }
73 
74  double
75  GetVerticalAerosolOpticalDepth(const unsigned int /*eyeId*/,
76  const double /*altitude*/) const
77  { return 0; }
78 
79  double
81  const double /*wLength*/) const
83 
84  double
86  const double /*angle*/,
87  const double /*wLength*/) const
88  { return 0; }
89 
90 
91  void Init() { }
92 
93  bool HasData() const { return true; }
94 
96  };
97 
98 }
99 
100 
101 #endif
102 
103 // Configure (x)emacs for this file ...
104 // Local Variables:
105 // mode: c++
106 // compile-command: "make -C .. -k"
107 // End:
double GetAttenuationLength(const utl::Point &, const double) const
Definition: MieModelOff.h:80
Base class for a Mie Model.
Definition: VMieModel.h:38
Point object.
Definition: Point.h:32
double EvaluateMieScattering(const utl::Point &, const utl::Point &, const double, const double, const double, const double) const
Definition: MieModelOff.h:60
double EvaluateScatteringAngle(const utl::Point &, const double, const double) const
Definition: MieModelOff.h:85
In case you don&#39;t believe in Mie scattering ...
Definition: MieModelOff.h:26
atm::AttenuationResult EvaluateMieAttenuation(const utl::Point &xInit, const utl::Point &xFinal, const std::vector< double > &wLength) const
Definition: MieModelOff.cc:69
REGISTER_MODEL(atm::VMieModel,"off", MieModelOff)
double EvaluateMieAttenuation(const utl::Point &, const utl::Point &, const double) const
Definition: MieModelOff.h:69
Class holding the output of the ScatteringResult function.
#define max(a, b)
double EvaluateMieScattering(const utl::Point &, const utl::Point &, const double, const double, const double) const
Definition: MieModelOff.h:52
double GetVerticalAerosolOpticalDepth(const unsigned int, const double) const
Definition: MieModelOff.h:75
virtual ~MieModelOff()
Definition: MieModelOff.h:30
bool HasData() const
True if a data source is for the given model.
Definition: MieModelOff.h:93
atm::ScatteringResult EvaluateMieScattering(const utl::Point &xA, const utl::Point &xB, const double angle, const double distance, const std::vector< double > &wLength) const
Definition: MieModelOff.cc:39
Class describing the Atmospheric attenuation.

, generated on Tue Sep 26 2023.