Enums.h
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file terralib/common/Enums.h
22 
23  \brief General enumerations.
24 
25  \ingroup common
26  */
27 
28 #ifndef __TERRALIB_COMMON_INTERNAL_ENUMS_H
29 #define __TERRALIB_COMMON_INTERNAL_ENUMS_H
30 
31 namespace te
32 {
33  namespace common
34  {
35  /*!
36  \enum AccessPolicy
37 
38  \brief Supported data access policies (can be used as bitfield).
39  */
41  {
42  NoAccess = 0, /*!< No access allowed */
43  RAccess = 1, /*!< Read-only access allowed */
44  WAccess = 2, /*!< Write-only access allowed */
45  RWAccess = 3 /*!< Read and write access allowed */
46  };
47 
48  /*!
49  \enum TraverseType
50 
51  \brief A dataset can be traversed in two ways:
52  */
54  {
55  FORWARDONLY = 0, /*!< Used when the dataset is only able to move forward. */
56  BIDIRECTIONAL = 1, /*!< Used when the dataset is able to move forward and backward. */
57  RANDOM = 2 /*!< Used when the dataset is able to move to any item. */
58  };
59 
60  /*!
61  \enum LoggerConfigurationType
62 
63  \brief Each enumerated type tells TerraLib how the configuration is done for a logger.
64  */
66  {
67  LOGGER_XML_CONFIG, /*!< It indicates the use of a XML based configuration for a logger. */
68  LOGGER_TXT_CONFIG /*!< It indicates the use of a plain text file based configuration for a logger. */
69  };
70 
71  /*!
72  \enum MeasureType
73 
74  \brief Defines the possible types of unit of measurements.
75  */
77  {
78  Length, /*!< Refers to lenght measurements. */
79  Area, /*!< Refers to area measurements. */
80  Volume, /*!< Refers to volume measurements. */
81  Angle, /*!< Refers to angular measurements. */
82  Scale, /*!< Refers to scale measurements. */
83  Time, /*!< Refers to time measurements. */
84  Speed /*!< Refers to speed measurements. */
85  };
86 
87  /*!
88  \brief Defines some known UOM (Unit of Measure) codes.
89 
90  \note Values from 9001 to 9302 coincide with EPSG codes.
91  \note Used above 99xx values to represent area measure codes.
92  */
93  enum
94  {
95  UOM_Metre = 9001,
96  UOM_Foot = 9002,
98  UOM_Kilometre = 9036,
99  UOM_Yard = 9096,
100  UOM_Radian = 9101,
101  UOM_Degree = 9102,
102  UOM_Unity = 9201,
106  UOM_Hectare = 9904,
107  UOM_Acre = 9905
108  };
109 
110 
112  {
113  NorthHem = 0, /*!< North hemisphere. */
114  SouthHem = 1 /*!< South hemisphere. */
115  };
116 
117  /*!
118  \enum MachineByteOrder
119 
120  \brief Endianness.
121  */
123  {
124  XDR = 0, /*!< Big endian. */
125  NDR = 1 /*!< Little endian. */
126  };
127 
128  /*! \brief Common TerraLib Exception Codes. */
129  enum
130  {
133  };
134 
135  /*! \brief An anonymous union that marks the last common TerraLib Exception Code. */
136  enum
137  {
139  };
140 
141  } // end namespace common
142 } // end namespace te
143 
144 #endif // __TERRALIB_COMMON_INTERNAL_ENUMS_H
te::common::UOM_Foot
@ UOM_Foot
Definition: Enums.h:96
te::common::WAccess
@ WAccess
Definition: Enums.h:44
te::common::MachineByteOrder
MachineByteOrder
Endianness.
Definition: Enums.h:123
te
TerraLib.
Definition: AddressGeocodingOp.h:52
te::common::UNKNOWN_EXCEPTION
@ UNKNOWN_EXCEPTION
Definition: Enums.h:131
te::common::NorthHem
@ NorthHem
Definition: Enums.h:113
te::common::UOM_Unity
@ UOM_Unity
Definition: Enums.h:102
te::common::UOM_NauticalMile
@ UOM_NauticalMile
Definition: Enums.h:97
te::common::UOM_Acre
@ UOM_Acre
Definition: Enums.h:107
te::common::RAccess
@ RAccess
Definition: Enums.h:43
te::common::MeasureType
MeasureType
Defines the possible types of unit of measurements.
Definition: Enums.h:77
te::common::UOM_Degree
@ UOM_Degree
Definition: Enums.h:101
te::common::UOM_Hectare
@ UOM_Hectare
Definition: Enums.h:106
te::common::RWAccess
@ RWAccess
Definition: Enums.h:45
te::common::UOM_SquareKilometre
@ UOM_SquareKilometre
Definition: Enums.h:105
te::common::TraverseType
TraverseType
A dataset can be traversed in two ways:
Definition: Enums.h:54
te::common::Angle
@ Angle
Definition: Enums.h:81
te::common::LOGGER_TXT_CONFIG
@ LOGGER_TXT_CONFIG
Definition: Enums.h:68
te::common::NO_CONNECTION_AVAILABLE
@ NO_CONNECTION_AVAILABLE
Definition: Enums.h:132
te::common::NoAccess
@ NoAccess
Definition: Enums.h:42
te::common::XDR
@ XDR
Definition: Enums.h:124
te::common::UOM_SquareMetre
@ UOM_SquareMetre
Definition: Enums.h:103
te::common::Speed
@ Speed
Definition: Enums.h:84
te::common::Hemisphere
Hemisphere
Definition: Enums.h:112
te::common::Time
@ Time
Definition: Enums.h:83
te::common::LAST_COMMON_EXCEPTION_CODE
@ LAST_COMMON_EXCEPTION_CODE
Definition: Enums.h:138
te::common::UOM_SquareFoot
@ UOM_SquareFoot
Definition: Enums.h:104
te::common::Area
@ Area
Definition: Enums.h:79
te::common::SouthHem
@ SouthHem
Definition: Enums.h:114
te::common::UOM_Kilometre
@ UOM_Kilometre
Definition: Enums.h:98
te::common::RANDOM
@ RANDOM
Definition: Enums.h:57
te::common::UOM_Yard
@ UOM_Yard
Definition: Enums.h:99
te::common::NDR
@ NDR
Definition: Enums.h:125
te::common::Scale
@ Scale
Definition: Enums.h:82
te::common::Length
@ Length
Definition: Enums.h:78
te::common::UOM_Metre
@ UOM_Metre
Definition: Enums.h:95
te::common::LoggerConfigurationType
LoggerConfigurationType
Each enumerated type tells TerraLib how the configuration is done for a logger.
Definition: Enums.h:66
te::common::Volume
@ Volume
Definition: Enums.h:80
te::common::UOM_Radian
@ UOM_Radian
Definition: Enums.h:100
te::common::BIDIRECTIONAL
@ BIDIRECTIONAL
Definition: Enums.h:56
te::common::LOGGER_XML_CONFIG
@ LOGGER_XML_CONFIG
Definition: Enums.h:67
te::common::AccessPolicy
AccessPolicy
Supported data access policies (can be used as bitfield).
Definition: Enums.h:41
te::common::FORWARDONLY
@ FORWARDONLY
Definition: Enums.h:55