| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

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/IBaseHistogram.h>
32 #include <AIDA/IHistogram1D.h>
33 #include <AIDA/IHistogram2D.h>
34 #include <AIDA/IHistogram3D.h>
35 #include <AIDA/IProfile1D.h>
36 #include <AIDA/IProfile2D.h>
37 #include <AIDA/IAnnotation.h>
38 #include <AIDA/IAxis.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 }
Kernel.h
TI
#define TI(x)
Definition: AIDA_visibility_hack.cpp:45
AIDA
GaudiKernel.
Definition: Fill.h:8