The Gaudi Framework  v30r3 (a5ef0a68)
PluginServiceCommon.h
Go to the documentation of this file.
1 #ifndef _GAUDI_PLUGIN_SERVICE_COMMON_H_
2 /*****************************************************************************\
3 * (c) Copyright 2013 CERN *
4 * *
5 * This software is distributed under the terms of the GNU General Public *
6 * Licence version 3 (GPL Version 3), copied verbatim in the file "LICENCE". *
7 * *
8 * In applying this licence, CERN does not waive the privileges and immunities *
9 * granted to it by virtue of its status as an Intergovernmental Organization *
10 * or submit itself to any jurisdiction. *
11 \*****************************************************************************/
12 
14 
15 #ifndef GAUDI_PLUGIN_SERVICE_USE_V2
16 #if defined( GAUDI_PLUGIN_SERVICE_V2 ) || !defined( GAUDI_PLUGIN_SERVICE_V1 )
17 #define GAUDI_PLUGIN_SERVICE_V2_INLINE inline
18 #define GAUDI_PLUGIN_SERVICE_V1_INLINE
19 #define GAUDI_PLUGIN_SERVICE_USE_V2 1
20 #else
21 #define GAUDI_PLUGIN_SERVICE_V2_INLINE
22 #define GAUDI_PLUGIN_SERVICE_V1_INLINE inline
23 #define GAUDI_PLUGIN_SERVICE_USE_V2 0
24 #endif
25 #endif
26 
27 #if __GNUC__ >= 4
28 #define GAUDIPS_HASCLASSVISIBILITY
29 #endif
30 
31 #if defined( GAUDIPS_HASCLASSVISIBILITY )
32 #define GAUDIPS_IMPORT __attribute__( ( visibility( "default" ) ) )
33 #define GAUDIPS_EXPORT __attribute__( ( visibility( "default" ) ) )
34 #define GAUDIPS_LOCAL __attribute__( ( visibility( "hidden" ) ) )
35 #else
36 #define GAUDIPS_IMPORT
37 #define GAUDIPS_EXPORT
38 #define GAUDIPS_LOCAL
39 #endif
40 
41 #ifdef GaudiPluginService_EXPORTS
42 #define GAUDIPS_API GAUDIPS_EXPORT
43 #else
44 #define GAUDIPS_API GAUDIPS_IMPORT
45 #endif
46 
47 #endif