21 #ifndef otbAtmosphericCorrectionParameters_h
22 #define otbAtmosphericCorrectionParameters_h
24 #include "OTBOpticalCalibrationExport.h"
25 #include "itkObject.h"
26 #include "itkVariableSizeMatrix.h"
27 #include "itkVariableLengthVector.h"
61 typedef enum { NO_AEROSOL = 0, CONTINENTAL = 1, MARITIME = 2, URBAN = 3, DESERTIC = 4 } AerosolModelType;
69 itkSetMacro(AtmosphericPressure,
double);
70 itkGetMacro(AtmosphericPressure,
double);
76 itkSetMacro(WaterVaporAmount,
double);
77 itkGetMacro(WaterVaporAmount,
double);
83 itkSetMacro(OzoneAmount,
double);
84 itkGetMacro(OzoneAmount,
double);
97 itkSetMacro(AerosolOptical,
double);
98 itkGetMacro(AerosolOptical,
double);
103 itkSetMacro(AeronetFileName, std::string);
104 itkGetMacro(AeronetFileName, std::string);
109 void ReadAeronetData(
const std::string& file,
int year,
int month,
int day,
int hour,
int minute,
double epsi);
112 void UpdateAeronetData(
const std::string& file,
int year,
int month,
int day,
int hour,
int minute,
double epsi);
113 void UpdateAeronetData(
const std::string& file,
int year,
int month,
int day,
int hour,
int minute)
115 this->UpdateAeronetData(file, year, month, day, hour, minute, 0.4);
119 this->UpdateAeronetData(m_AeronetFileName, year, month, day, hour, minute, epsi);
123 this->UpdateAeronetData(m_AeronetFileName, year, month, day, hour, minute, 0.4);
127 this->UpdateAeronetData(file, year, m_Month, m_Day, hour, minute, 0.4);
131 this->UpdateAeronetData(m_AeronetFileName, year, m_Month, m_Day, hour, minute, 0.4);
153 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
This class contains all atmospheric correction parameters.
double m_AtmosphericPressure
void ReadAeronetData(const std::string &file, int year, int month, int day, int hour, int minute, double epsi)
ObjectList< FilterFunctionValues > InternalWavelengthSpectralBandVectorType
void UpdateAeronetData(int year, int month, int day, int hour, int minute, double epsi)
AtmosphericCorrectionParameters Self
AtmosphericCorrectionParameters(const Self &)=delete
AtmosphericCorrectionParameters()
void UpdateAeronetData(const std::string &file, int year, int hour, int minute)
std::string m_AeronetFileName
double m_WaterVaporAmount
void PrintSelf(std::ostream &os, itk::Indent indent) const override
void operator=(const Self &)=delete
~AtmosphericCorrectionParameters() override
void UpdateAeronetData(int year, int month, int day, int hour, int minute)
void UpdateAeronetData(const std::string &file, int year, int month, int day, int hour, int minute, double epsi)
InternalWavelengthSpectralBandVectorType::Pointer WavelengthSpectralBandVectorType
void UpdateAeronetData(const std::string &file, int year, int month, int day, int hour, int minute)
itk::SmartPointer< const Self > ConstPointer
void UpdateAeronetData(int year, int hour, int minute)
itk::SmartPointer< Self > Pointer
AerosolModelType m_AerosolModel
This class is a generic all-purpose wrapping around an std::vector<itk::SmartPointer<ObjectType> >.
itk::SmartPointer< Self > Pointer
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.