21 #ifndef otbAtmosphericRadiativeTerms_h
22 #define otbAtmosphericRadiativeTerms_h
24 #include "OTBOpticalCalibrationExport.h"
25 #include "itkDataObject.h"
26 #include "itkObjectFactory.h"
62 itkSetMacro(IntrinsicAtmosphericReflectance,
double);
63 itkGetMacro(IntrinsicAtmosphericReflectance,
double);
69 itkSetMacro(SphericalAlbedo,
double);
70 itkGetMacro(SphericalAlbedo,
double);
75 itkSetMacro(TotalGaseousTransmission,
double);
76 itkGetMacro(TotalGaseousTransmission,
double);
82 itkSetMacro(DownwardTransmittance,
double);
83 itkGetMacro(DownwardTransmittance,
double);
89 itkSetMacro(UpwardTransmittance,
double);
90 itkGetMacro(UpwardTransmittance,
double);
96 itkSetMacro(UpwardDiffuseTransmittance,
double);
97 itkGetMacro(UpwardDiffuseTransmittance,
double);
103 itkSetMacro(UpwardDirectTransmittance,
double);
104 itkGetMacro(UpwardDirectTransmittance,
double);
110 itkSetMacro(UpwardDiffuseTransmittanceForRayleigh,
double);
111 itkGetMacro(UpwardDiffuseTransmittanceForRayleigh,
double);
117 itkSetMacro(UpwardDiffuseTransmittanceForAerosol,
double);
118 itkGetMacro(UpwardDiffuseTransmittanceForAerosol,
double);
124 itkSetMacro(WavelengthSpectralBand,
double);
125 itkGetMacro(WavelengthSpectralBand,
double);
138 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
295 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
This class contains all atmospheric radiative terms for one channel.
itk::SmartPointer< Self > Pointer
double m_UpwardDiffuseTransmittanceForAerosol
double m_UpwardTransmittance
double m_IntrinsicAtmosphericReflectance
AtmosphericRadiativeTermsSingleChannel Self
double m_TotalGaseousTransmission
AtmosphericRadiativeTermsSingleChannel()
double m_DownwardTransmittance
void operator=(const Self &)=delete
void PrintSelf(std::ostream &os, itk::Indent indent) const override
~AtmosphericRadiativeTermsSingleChannel() override
AtmosphericRadiativeTermsSingleChannel(const Self &)=delete
double m_UpwardDiffuseTransmittance
itk::SmartPointer< const Self > ConstPointer
double m_UpwardDiffuseTransmittanceForRayleigh
itk::DataObject Superclass
double m_WavelengthSpectralBand
double m_UpwardDirectTransmittance
This class is a vector of AtmosphericRadiativeTermsSingleChannel, it contains all atmospheric radiati...
double GetUpwardTransmittance(unsigned int id) const
void SetUpwardDiffuseTransmittanceForAerosol(unsigned int id, const double &val)
double GetUpwardDiffuseTransmittanceForRayleigh(unsigned int id) const
VectorValueType & GetValues()
void SetUpwardDiffuseTransmittancesForRayleigh(const DataVectorType &vect)
void SetWavelengthSpectralBand(const DataVectorType &vect)
double GetDownwardTransmittance(unsigned int id) const
AtmosphericRadiativeTerms Self
void SetValues(const VectorValueType &val)
void SetDownwardTransmittances(const DataVectorType &vect)
itk::DataObject Superclass
DataVectorType GetWavelengthSpectralBand() const
void SetUpwardTransmittances(const DataVectorType &vect)
DataVectorType GetUpwardTransmittances() const
void SetUpwardDirectTransmittance(unsigned int id, const double &val)
void SetSphericalAlbedo(unsigned int id, const double &val)
DataVectorType GetSphericalAlbedos() const
DataVectorType::size_type DataVectorSizeType
DataVectorType GetDownwardTransmittances() const
void SetValueByIndex(unsigned int id, const ValueType &val)
void SetIntrinsicAtmosphericReflectances(const DataVectorType &vect)
double GetTotalGaseousTransmission(unsigned int id) const
double GetSphericalAlbedo(unsigned int id) const
void SetIntrinsicAtmosphericReflectance(unsigned int id, const double &val)
DataVectorType GetUpwardDiffuseTransmittancesForRayleigh() const
const ValueType GetValueByIndex(unsigned int id) const
~AtmosphericRadiativeTerms() override
double GetUpwardDiffuseTransmittanceForAerosol(unsigned int id) const
double GetUpwardDirectTransmittance(unsigned int id) const
void SetSphericalAlbedos(const DataVectorType &vect)
std::vector< double > DataVectorType
void SetDownwardTransmittance(unsigned int id, const double &val)
void SetWavelengthSpectralBand(unsigned int id, const double &val)
void ValuesInitialization(DataVectorSizeType nbChannel)
void PrintSelf(std::ostream &os, itk::Indent indent) const override
std::vector< ValueType > VectorValueType
AtmosphericRadiativeTerms()
void SetUpwardTransmittance(unsigned int id, const double &val)
itk::SmartPointer< const Self > ConstPointer
double GetUpwardDiffuseTransmittance(unsigned int id) const
const VectorValueType & GetValues() const
AtmosphericRadiativeTermsSingleChannel::Pointer ValueType
DataVectorType GetUpwardDirectTransmittances() const
void SetUpwardDirectTransmittances(const DataVectorType &vect)
AtmosphericRadiativeTerms(const Self &)=delete
void SetUpwardDiffuseTransmittance(unsigned int id, const double &val)
void SetUpwardDiffuseTransmittanceForRayleigh(unsigned int id, const double &val)
void SetUpwardDiffuseTransmittancesForAerosol(const DataVectorType &vect)
void SetUpwardDiffuseTransmittances(const DataVectorType &vect)
DataVectorType GetUpwardDiffuseTransmittancesForAerosol() const
void SetTotalGaseousTransmission(unsigned int id, const double &val)
void operator=(const Self &)=delete
DataVectorType GetUpwardDiffuseTransmittances() const
DataVectorType GetIntrinsicAtmosphericReflectances() const
itk::SmartPointer< Self > Pointer
double GetWavelengthSpectralBand(unsigned int id) const
double GetIntrinsicAtmosphericReflectance(unsigned int id) const
DataVectorType GetTotalGaseousTransmissions() const
void SetTotalGaseousTransmissions(const DataVectorType &vect)
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.