OTB  10.0.0
Orfeo Toolbox
otbSarDefaultImageMetadataInterface.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005-2024 Centre National d'Etudes Spatiales (CNES)
3  *
4  * This file is part of Orfeo Toolbox
5  *
6  * https://www.orfeo-toolbox.org/
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  */
20 
21 #ifndef otbSarDefaultImageMetadataInterface_h
22 #define otbSarDefaultImageMetadataInterface_h
23 
24 
25 #include "otbMacro.h"
26 
28 
29 namespace otb
30 {
39 {
40 public:
43  typedef itk::SmartPointer<Self> Pointer;
44  typedef itk::SmartPointer<const Self> ConstPointer;
45 
47  itkNewMacro(Self);
48 
51 
52  typedef Superclass::ImageType ImageType;
53  typedef ImageType::IndexType IndexType;
54  typedef std::array<int, 2> ArrayIndexType;
55  typedef Superclass::MetaDataDictionaryType MetaDataDictionaryType;
58  typedef itk::PointSet<double, 2> PointSetType;
59  typedef PointSetType::Pointer PointSetPointer;
60  typedef double RealType;
61  typedef PointSetType::PointType PointType;
62 
64  {
65  itkExceptionMacro("GetRadiometricCalibrationAntennaPatternNewGain() not implemented in SarDefaultImageMetadataInterface, no captor type found");
66  }
67 
69  {
70  itkExceptionMacro("GetRadiometricCalibrationAntennaPatternOldGain() not implemented in SarDefaultImageMetadataInterface, no captor type found");
71  }
72 
74  {
75  itkExceptionMacro("GetRadiometricCalibrationIncidenceAngle(const MetadataSupplierInterface&) not implemented in SarDefaultImageMetadataInterface, no captor type found");
76  }
77 
79  {
80  itkExceptionMacro("GetRadiometricCalibrationRangeSpreadLoss() not implemented in SarDefaultImageMetadataInterface, no captor type found");
81  }
82 
84  {
85  itkExceptionMacro("GetRadiometricCalibrationNoise(const MetadataSupplierInterface&) not implemented in SarDefaultImageMetadataInterface, no captor type found");
86  }
87 
89  {
90  itkExceptionMacro(
91  "GetRadiometricCalibrationAntennaPatternNewGainPolynomialDegree() not implemented in SarDefaultImageMetadataInterface, no captor type found");
92  }
93 
95  {
96  itkExceptionMacro(
97  "GetRadiometricCalibrationAntennaPatternOldGainPolynomialDegree() not implemented in SarDefaultImageMetadataInterface, no captor type found");
98  }
99 
101  {
102  itkExceptionMacro("GetRadiometricCalibrationIncidenceAnglePolynomialDegree() not implemented in SarDefaultImageMetadataInterface, no captor type found");
103  }
104 
106  {
107  itkExceptionMacro("GetRadiometricCalibrationRangeSpreadLossPolynomialDegree() not implemented in SarDefaultImageMetadataInterface, no captor type found");
108  }
109 
111  {
112  itkExceptionMacro("GetRadiometricCalibrationNoisePolynomialDegree() not implemented in SarDefaultImageMetadataInterface, no captor type found");
113  }
114 
117  {
118  itkExceptionMacro("GetCenterIncidenceAngle not implemented in SarDefaultImageMetadataInterface, no captor type found");
119  }
120 
121  void ParseGdal(ImageMetadata &) override
122  {
123  itkExceptionMacro("ParseGdal not implemented in SarDefaultImageMetadataInterface, no captor type found");
124  }
125 
126  void ParseGeom(ImageMetadata &) override
127  {
128  itkExceptionMacro("ParseGeom not implemented in SarDefaultImageMetadataInterface, no captor type found");
129  }
130 
131 
132 protected:
134  ~SarDefaultImageMetadataInterface() override = default;
135 
136 private:
138  void operator=(const Self&) = delete;
139 };
140 
141 } // end namespace otb
142 
143 #endif
Base class for captor metadata reading.
Generic class containing image metadata used in OTB.
Base class to access metadata information in files/images.
Creation of an "otb" DefaultImageMetadataInterface that gets metadata.
ArrayIndexType GetRadiometricCalibrationAntennaPatternOldGainPolynomialDegree() const override
double GetCenterIncidenceAngle(const MetadataSupplierInterface &) const override
Superclass::MetaDataDictionaryType MetaDataDictionaryType
PointSetPointer GetRadiometricCalibrationAntennaPatternOldGain() const override
Superclass::VariableLengthVectorType VariableLengthVectorType
PointSetPointer GetRadiometricCalibrationRangeSpreadLoss() const override
PointSetPointer GetRadiometricCalibrationIncidenceAngle(const MetadataSupplierInterface &) const override
PointSetPointer GetRadiometricCalibrationAntennaPatternNewGain() const override
~SarDefaultImageMetadataInterface() override=default
ArrayIndexType GetRadiometricCalibrationRangeSpreadLossPolynomialDegree() const override
void operator=(const Self &)=delete
ArrayIndexType GetRadiometricCalibrationAntennaPatternNewGainPolynomialDegree() const override
PointSetPointer GetRadiometricCalibrationNoise(const MetadataSupplierInterface &, const ImageMetadata &, const std::string &) const override
SarDefaultImageMetadataInterface(const Self &)=delete
ArrayIndexType GetRadiometricCalibrationIncidenceAnglePolynomialDegree() const override
ArrayIndexType GetRadiometricCalibrationNoisePolynomialDegree() const override
Class for SAR captor metadata reading.
std::vector< double > VectorType
itk::VariableLengthVector< double > VariableLengthVectorType
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.