OTB  6.7.0
Orfeo Toolbox
otbWrapperTypes.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005-2019 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 otbWrapperTypes_h
22 #define otbWrapperTypes_h
23 
24 #include <complex>
25 #include <array>
26 #include "itkRGBPixel.h"
27 #include "itkRGBAPixel.h"
28 #include "otbImage.h"
29 #include "otbVectorImage.h"
30 #include "otbVectorData.h"
31 
32 namespace otb
33 {
34 namespace Wrapper
35 {
36 
37 typedef enum
38 {
63 
64 namespace
65 {
66 constexpr char const* parameterTypesStrings [] = {
67  "Int",
68  "Float",
69  "String",
70  "StringList",
71  "InputFilename",
72  "InputFilenameList",
73  "OutputFilename",
74  "Directory",
75  "Choice",
76  "InputImage",
77  "InputImageList",
78  "InputVectorData",
79  "InputVectorDataList",
80  "OutputImage",
81  "OutputVectorData",
82  "Radius",
83  "Group",
84  "ListView",
85  "RAM",
86  "OutputProcessXML",
87  "InputProcessXML",
88  "Bool"
89 };
90 static_assert(std::extent<decltype(parameterTypesStrings)>::value == ParameterType_MAX__,
91  "Wrong number of parameters in parameterTypesStrings");
92 }
93 
94 // Free functions to convert from and to std::string
95 std::string ParameterTypeToString(ParameterType type);
96 ParameterType ParameterStringToType(const std::string& str);
97 
98 typedef enum
99 {
102 } UserLevel;
103 
104 typedef enum
105 {
106  // Not int8 because not handle by Gdal
119 
120 typedef enum
121 {
127 
128 typedef enum
129 {
132 } Role;
133 
134 // enum used for the map projection choices
135 typedef enum
136 {
139  //Elevation_Tiff,
140 } ElevationType;
141 
142 
150 
158 
161 
162 typedef std::complex<short> Int16ComplexPixelType;
163 typedef std::complex<int> Int32ComplexPixelType;
164 typedef std::complex<float> FloatComplexPixelType;
165 typedef std::complex<double> DoubleComplexPixelType;
166 
167 // Complex Image Type
172 
177 
178 
182  2,
186 
189 
191 
192 
193 } // end namespace Wrapper
194 } // end namespace otb
195 
196 #endif // otbWrapperApplication_h_
Creation of an "otb" vector image which contains metadata.
otb::ObjectList< FloatVectorImageType > FloatVectorImageListType
otb::VectorData< VectorDataCoordinatePrecisionType, 2, VectorDataValuePrecisionType > VectorDataType
std::complex< float > FloatComplexPixelType
ParameterType ParameterStringToType(const std::string &str)
otb::Image< Int16ComplexPixelType, 2 > ComplexInt16ImageType
otb::Image< double > DoubleImageType
otb::VectorImage< unsigned short > UInt16VectorImageType
std::complex< double > DoubleComplexPixelType
otb::VectorImage< Int16ComplexPixelType, 2 > ComplexInt16VectorImageType
std::complex< int > Int32ComplexPixelType
otb::VectorImage< FloatComplexPixelType, 2 > ComplexFloatVectorImageType
double VectorDataCoordinatePrecisionType
otb::VectorImage< double > DoubleVectorImageType
itk::ImageBase< 2 > ImageBaseType
otb::Image< unsigned char > UInt8ImageType
otb::VectorImage< unsigned int > UInt32VectorImageType
otb::VectorImage< unsigned char > UInt8VectorImageType
This class is a generic all-purpose wrapping around an std::vector<itk::SmartPointer<ObjectType> >...
Definition: otbObjectList.h:40
otb::Image< short > Int16ImageType
std::complex< short > Int16ComplexPixelType
otb::Image< Int32ComplexPixelType, 2 > ComplexInt32ImageType
otb::ObjectList< FloatImageType > FloatImageListType
otb::VectorImage< float > FloatVectorImageType
otb::Image< unsigned int > UInt32ImageType
otb::VectorImage< DoubleComplexPixelType, 2 > ComplexDoubleVectorImageType
Creation of an "otb" image which contains metadata.
Definition: otbImage.h:89
otb::Image< float > FloatImageType
otb::ObjectList< VectorDataType > VectorDataListType
std::string ParameterTypeToString(ParameterType type)
otb::VectorImage< int > Int32VectorImageType
otb::Image< int > Int32ImageType
This class represents a hierarchy of vector data.
Definition: otbVectorData.h:58
otb::Image< unsigned short > UInt16ImageType
otb::Image< itk::RGBAPixel< unsigned char > > UInt8RGBAImageType
otb::Image< DoubleComplexPixelType, 2 > ComplexDoubleImageType
otb::VectorImage< Int32ComplexPixelType, 2 > ComplexInt32VectorImageType
otb::Image< itk::RGBPixel< unsigned char > > UInt8RGBImageType
double VectorDataValuePrecisionType
otb::VectorImage< short > Int16VectorImageType
otb::Image< FloatComplexPixelType, 2 > ComplexFloatImageType