Config.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/dataaccess/Config.h
22 
23  \brief Configuration flags for the Data Access module of TerraLib.
24 */
25 
26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_CONFIG_H
27 #define __TERRALIB_DATAACCESS_INTERNAL_CONFIG_H
28 
29 /** @name General Defines for the DataAccess module
30  * Defines for configuring DataAccess module.
31  */
32 //@{
33 
34 /*!
35  \def TE_DATAACCESS_MODULE_NAME
36 
37  \brief An identifier for this module.
38 */
39 #define TE_DATAACCESS_MODULE_NAME "te.dataaccess"
40 
41 /*!
42  \def TERRALIB_USE_CONNECTION_POOL_MANAGER
43 
44  \brief Set this macro to 1 if you want to use the TerraLib connection pool manager.
45 */
46 #define TERRALIB_USE_CONNECTION_POOL_MANAGER 1
47 
48 /*!
49  \def TERRALIB_AUTOMATICALLY_INITIALIZE_CONNECTION_POOL_MANAGER
50 
51  \brief Set this macro to 1 if you want TerraLib to automatically initialize a thread for managing all the connection pools registered in the system.
52 */
53 #if TERRALIB_USE_CONNECTION_POOL_MANAGER
54  #define TERRALIB_AUTOMATICALLY_INITIALIZE_CONNECTION_POOL_MANAGER 1
55 #else
56  #define TERRALIB_AUTOMATICALLY_INITIALIZE_CONNECTION_POOL_MANAGER 0
57 #endif
58 
59 /*!
60  \def TERRALIB_POOL_DEFAULT_MONITORING_TIME
61 
62  \brief This sets the default monitoring time in seconds for the connection pool manager.
63 */
64 #define TERRALIB_POOL_DEFAULT_MONITORING_TIME 60
65 
66 //@}
67 
68 /** @name DLL/LIB Module
69  * Flags for building TerraLib as a DLL or as a Static Library
70  */
71 //@{
72 
73 /*!
74  \def TEDATAACCESSEXPORT
75 
76  \brief You can use this macro in order to export/import classes and functions from this module.
77 
78  \note If you want to compile TerraLib as DLL in Windows, remember to insert TEDATAACCESSDLL into the project's list of defines.
79 
80  \note If you want to compile TerraLib as an Static Library under Windows, remember to insert the TEDATAACCESSSTATIC flag into the project list of defines.
81 */
82 #ifdef WIN32
83 
84  #ifdef _MSC_VER
85  #pragma warning( disable : 4251 4127)
86  #pragma warning( disable : 4275 )
87  #endif
88 
89  #ifdef TEDATAACCESSSTATIC
90  #define TEDATAACCESSEXPORT // Don't need to export/import... it is a static library
91  #elif TEDATAACCESSDLL
92  #define TEDATAACCESSEXPORT __declspec(dllexport) // export DLL information
93  #else
94  #define TEDATAACCESSEXPORT __declspec(dllimport) // import DLL information
95  #endif
96 #else
97  #define TEDATAACCESSEXPORT
98 #endif
99 
100 //@}
101 
102 #endif // __TERRALIB_DATAACCESS_INTERNAL_CONFIG_H