Main Page
Modules
Namespaces
Classes
Files
File List
File Members
ModuleUtils.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/ModuleUtils.h
22
23
\brief Utility functions for module definition.
24
*/
25
26
#ifndef __TERRALIB_COMMON_INTERNAL_MODULEUTILS_H
27
#define __TERRALIB_COMMON_INTERNAL_MODULEUTILS_H
28
29
//#if !TE_TERRALIB_STATIC_BUILD
30
// #if TE_COMPILER == TE_COMPILERCODE_VCPLUSPLUS
31
// #include <windows.h>
32
//
33
// #define TE_REGISTER_MODULE(moduleName, startupFunction, shutdownFunction) \
34
// BOOL WINAPI DllMain(HINSTANCE /*hinstDLL*/, DWORD fdwReason, LPVOID /*lpReserved*/) \
35
// { \
36
// switch(fdwReason) \
37
// { \
38
// case DLL_PROCESS_ATTACH: \
39
// startupFunction(); \
40
// break; \
41
// \
42
// case DLL_THREAD_ATTACH: \
43
// break; \
44
// \
45
// case DLL_THREAD_DETACH: \
46
// break; \
47
// \
48
// case DLL_PROCESS_DETACH: \
49
// shutdownFunction(); \
50
// break; \
51
// } \
52
// \
53
// return TRUE; \
54
// }
55
// #elif TE_COMPILER == TE_COMPILERCODE_GNUC
56
// #define TE_REGISTER_MODULE(moduleName, startupFunction, shutdownFunction) \
57
// void __attribute__ ((constructor)) TeInitialize ## moduleName(void) \
58
// { \
59
// startupFunction(); \
60
// } \
61
// \
62
// void __attribute__ ((destructor)) TeFinalize ## moduleName(void) \
63
// { \
64
// shutdownFunction(); \
65
// }
66
// #else
67
// #define TE_REGISTER_MODULE(moduleName, startupFunction, shutdownFunction)
68
// #endif
69
//
70
//#else
71
// #define TE_REGISTER_MODULE(moduleName, startupFunction, shutdownFunction)
72
//#endif // TE_TERRALIB_STATIC_BUILD
73
74
#endif // __TERRALIB_COMMON_INTERNAL_MODULEUTILS_H
75
git_master
terralib5
src
terralib
common
ModuleUtils.h
Generated on Tue Jan 12 2016 08:40:54 for TerraLib by
1.8.9.1