Logo ROOT  
Reference Guide
Types.h
Go to the documentation of this file.
1#ifndef ROOT_Math_VecTypes
2#define ROOT_Math_VecTypes
3
4#include "RConfigure.h"
5
6#ifdef R__HAS_VECCORE
7
8#if defined(R__HAS_VC)
9
10#pragma GCC diagnostic push
11#pragma GCC diagnostic ignored "-Wall"
12#pragma GCC diagnostic ignored "-Wunused-parameter"
13
14#ifdef __clang__
15#pragma clang diagnostic ignored "-Wconditional-uninitialized"
16#endif
17
18#include <Vc/Vc>
19#pragma GCC diagnostic pop
20#endif
21
22#include <VecCore/VecCore>
23
24namespace ROOT {
25
26namespace Internal {
27 using ScalarBackend = vecCore::backend::Scalar;
28#ifdef VECCORE_ENABLE_VC
29 using VectorBackend = vecCore::backend::VcVector;
30#else
31 using VectorBackend = vecCore::backend::Scalar;
32#endif
33}
40}
41
42#else // R__HAS_VECCORE
43
44// We do not have explicit vectorisation support enabled. Fall back to regular ROOT types.
45
46#include "Rtypes.h"
47
48namespace ROOT {
51 using Int_v = Int_t;
52 using Int32_v = Int_t; // FIXME: Should we introduce Int32_t in RtypesCore.h?
53 using UInt_v = UInt_t;
54 using UInt32_v = UInt_t; // FIXME: Should we introduce UInt32_t in RtypesCore.h?
55}
56#endif
57
58#endif // ROOT_Math_VecTypes
int Int_t
Definition: RtypesCore.h:41
unsigned int UInt_t
Definition: RtypesCore.h:42
double Double_t
Definition: RtypesCore.h:55
float Float_t
Definition: RtypesCore.h:53
Rotation3D::Scalar Scalar
VSD Structures.
Definition: StringConv.hxx:21
UInt_t UInt_v
Definition: Types.h:53
Int_t Int32_v
Definition: Types.h:52
UInt_t UInt32_v
Definition: Types.h:54
Int_t Int_v
Definition: Types.h:51
Double_t Double_v
Definition: Types.h:50
Float_t Float_v
Definition: Types.h:49