All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Config.h
Go to the documentation of this file.
1 /* Copyright (C) 2001-2009 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/gdal/Config.h
22 
23  \brief Configuration flags for the GDAL Driver of TerraLib.
24  */
25 
26 #ifndef __TERRALIB_GDAL_INTERNAL_CONFIG_H
27 #define __TERRALIB_GDAL_INTERNAL_CONFIG_H
28 
29 #include "../Config.h"
30 
31 #define TE_GDAL_MODULE_NAME "te.da.gdal"
32 
33 /*!
34  \def GDAL_DRIVER_IDENTIFIER
35 
36  \brief The GDAL driver identifier string.
37  */
38 #define TE_GDAL_DRIVER_IDENTIFIER "GDAL"
39 
40 /** @name Internationalization Defines
41  * Flags for TerraLib code internationalization.
42  */
43 //@{
44 
45 /*!
46  \def TE_GDAL_TEXT_DOMAIN
47 
48  \brief It contains the name of the text domain used in the translation of messages in TerraLib Coverage module.
49  */
50 #define TE_GDAL_TEXT_DOMAIN "tegdal"
51 
52 /*!
53  \def TE_GDAL_TEXT_DOMAIN_DIR
54 
55  \brief It contains the translation catalog directory.
56  */
57 #define TE_GDAL_TEXT_DOMAIN_DIR "locale"
58 
59 /*!
60  \def TR_GDAL
61 
62  \brief It marks a string in order to get translated. This is a special mark used in the Vector Geometry module of TerraLib.
63  */
64 #define TR_GDAL(message) TR(message, TE_GDAL_TEXT_DOMAIN)
65 
66 #define TR_GDAL_PLURAL(message1, message2, n) TR_PLURAL(TE_GDAL_TEXT_DOMAIN, message1, message2, n)
67 
68 //@}
69 
70 /** @name Logger Defines
71  * Flags for building TerraLib with Log support
72  */
73 //@{
74 
75 /*!
76  \def TE_GDAL_LOGGER_NAME
77 
78  \brief This is the fully qualified TerraLib Vector Geometry Model logger name.
79  */
80 #define TE_GDAL_LOGGER_NAME "te.da.gdal"
81 
82 //@}
83 
84 /** @name DLL/LIB Module
85  * Flags for building TerraLib as a DLL or as a Static Library
86  */
87 //@{
88 
89 /*!
90  \def TEGDALEXPORT
91 
92  \brief You can use this macro in order to export/import classes and functions from this module.
93 
94  \note If you want to compile TerraLib as DLL in Windows, remember to insert TEGDALDLL into the project's list of defines.
95 
96  \note If you want to compile TerraLib as an Static Library under Windows, remember to insert the TEGDALSTATIC flag into the project list of defines.
97  */
98 
99 #ifdef WIN32
100 
101  #ifdef _MSC_VER
102  #pragma warning( disable : 4251 )
103  #endif
104 
105  #ifdef TEGDALSTATIC
106  #define TEGDALEXPORT // Don't need to export/import... it is a static library
107  #elif TEGDALDLL
108  #define TEGDALEXPORT __declspec(dllexport) // export DLL information
109  #else
110  #define TEGDALEXPORT __declspec(dllimport) // import DLL information
111  #endif
112 #else
113  #define TEGDALEXPORT
114 #endif
115 
116 //@}
117 
118 #endif // __TERRALIB_GDAL_INTERNAL_CONFIG_H
119