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