Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-07-09 08:32:12

0001 /***********************************************************************************\
0002 * (c) Copyright 1998-2024 CERN for the benefit of the LHCb and ATLAS collaborations *
0003 *                                                                                   *
0004 * This software is distributed under the terms of the Apache version 2 licence,     *
0005 * copied verbatim in the file "LICENSE".                                            *
0006 *                                                                                   *
0007 * In applying this licence, CERN does not waive the privileges and immunities       *
0008 * granted to it by virtue of its status as an Intergovernmental Organization        *
0009 * or submit itself to any jurisdiction.                                             *
0010 \***********************************************************************************/
0011 #ifndef GAUDIKERNEL_LOADFACTORYENTRIES_H
0012 #define GAUDIKERNEL_LOADFACTORYENTRIES_H 1
0013 //====================================================================
0014 //  LoadFactoryEntries.h
0015 //--------------------------------------------------------------------
0016 //
0017 //  Package    : GaudiKernel
0018 //
0019 //  Description: Implementation of getFactoryEntries() routine.
0020 //               This routine is needed for forcing the linker
0021 //               to load all the components of the library.
0022 //
0023 //====================================================================
0024 
0025 #ifndef GAUDI_TEST_PUBLIC_HEADERS_BUILD
0026 #  warning "deprecated header file, not to be used"
0027 #endif
0028 
0029 // DllMain entry point
0030 #include <GaudiKernel/DllMain.icpp>
0031 
0032 #if !defined( __APPLE__ )
0033 void GaudiDll::initialize( void* ) {}
0034 void GaudiDll::finalize( void* ) {}
0035 #endif
0036 
0037 #if defined( GAUDI_V20_COMPAT ) && !defined( G21_HIDE_SYMBOLS )
0038 #  ifdef _WIN32
0039 #    define FACTORYTABLE_API __declspec( dllexport )
0040 #  else
0041 #    define FACTORYTABLE_API
0042 #  endif
0043 
0044 #  define LOAD_FACTORY_ENTRIES( x )                                                                                    \
0045     extern "C" FACTORYTABLE_API void* x##_getFactoryEntries() { return nullptr; }
0046 
0047 #else
0048 
0049 #  define LOAD_FACTORY_ENTRIES( x )                                                                                    \
0050     extern "C" GAUDI_EXPORT void* x##_getFactoryEntries() { return nullptr; }
0051 
0052 #endif // GAUDI_V20_COMPAT
0053 
0054 #endif // GAUDIKERNEL_LOADFACTORYENTRIES_H