| The Gaudi Framework v32r1 (f65d50dc)

AIDA_visibility_hack.cpp
Go to the documentation of this file.
1 /*
2 * AIDA_visibility_hack.cpp
3 *
4 * Created on: Jan 27, 2009
5 * Author: Marco Clemencic
6 */
7
8 #ifdef __ICC
9 // disable icc remark #177: declared but never referenced
10 # pragma warning( disable : 177 )
11 #elif __clang__
12 # pragma clang diagnostic ignored "-Wunused-variable"
13 #endif
14
15 // For the GAUDI_API macro
16 #include "GaudiKernel/Kernel.h"
17
18 // To avoid breaking STL
19 #include <string>
20 #include <vector>
21
22 // Force visibility of the classes
23 #ifdef __clang__
24 # pragma clang diagnostic push
25 # pragma clang diagnostic ignored "-Wkeyword-macro"
26 #endif
27 #define class class GAUDI_API
28 #ifdef __clang__
29 # pragma clang diagnostic pop
30 #endif
31 #include <AIDA/IAnnotation.h>
32 #include <AIDA/IAxis.h>
33 #include <AIDA/IBaseHistogram.h>
34 #include <AIDA/IHistogram1D.h>
35 #include <AIDA/IHistogram2D.h>
36 #include <AIDA/IHistogram3D.h>
37 #include <AIDA/IProfile1D.h>
38 #include <AIDA/IProfile2D.h>
39 #undef class
40
41 #include <typeinfo>
42
43 using namespace AIDA;
44
45 #define TI( x ) const std::type_info& x##Info = typeid( x )
46 namespace {
47 TI( IBaseHistogram );
48 TI( IHistogram );
49 TI( IHistogram1D );
50 TI( IHistogram2D );
51 TI( IHistogram3D );
52 TI( IProfile );
53 TI( IProfile1D );
54 TI( IProfile2D );
55 TI( IAnnotation );
56 TI( IAxis );
57 } // namespace
Kernel.h
TI
#define TI(x)
Definition: AIDA_visibility_hack.cpp:45
AIDA
GaudiKernel.
Definition: Fill.h:10