All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
LoadFactoryEntries.h
Go to the documentation of this file.
1 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiKernel/GaudiKernel/LoadFactoryEntries.h,v 1.4 2006/11/30 14:43:13 mato Exp $
2 #ifndef GAUDIKERNEL_LOADFACTORYENTRIES_H
3 #define GAUDIKERNEL_LOADFACTORYENTRIES_H 1
4 //====================================================================
5 // LoadFactoryEntries.h
6 //--------------------------------------------------------------------
7 //
8 // Package : GaudiKernel
9 //
10 // Description: Implementation of getFactoryEntries() routine.
11 // This routine is needed for forcing the linker
12 // to load all the components of the library.
13 //
14 //====================================================================
15 
16 // DllMain entry point
17 #include "GaudiKernel/DllMain.icpp"
18 
19 #if !defined(__APPLE__)
20  void GaudiDll::initialize(void*) {}
21  void GaudiDll::finalize(void*) {}
22 #endif
23 
24 #if defined(GAUDI_V20_COMPAT) && !defined(G21_HIDE_SYMBOLS)
25 #ifdef _WIN32
26  #define FACTORYTABLE_API __declspec(dllexport)
27 #else
28  #define FACTORYTABLE_API
29 #endif
30 
31 #define LOAD_FACTORY_ENTRIES(x) \
32 extern "C" FACTORYTABLE_API void* x##_getFactoryEntries() { \
33  return 0; \
34 }
35 
36 #else
37 
38 #define LOAD_FACTORY_ENTRIES(x) \
39 extern "C" GAUDI_EXPORT void* x##_getFactoryEntries() { \
40 return 0; \
41 }
42 
43 #endif // GAUDI_V20_COMPAT
44 
45 #endif // GAUDIKERNEL_LOADFACTORYENTRIES_H
static void initialize(void *hinstDLL)
static void finalize(void *hinstDLL)