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#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
14
15#ifdef __clang__
16#pragma clang diagnostic ignored "-Wconditional-uninitialized"
17#endif
18
19#include <Vc/Vc>
20#pragma GCC diagnostic pop
21#endif
22
23#include <VecCore/VecCore>
24
25namespace ROOT {
26
27namespace Internal {
28 using ScalarBackend = vecCore::backend::Scalar;
29#ifdef VECCORE_ENABLE_VC
30 using VectorBackend = vecCore::backend::VcVector;
31#else
32 using VectorBackend = vecCore::backend::Scalar;
33#endif
34}
41}
42
43#else // R__HAS_VECCORE
44
45// We do not have explicit vectorisation support enabled. Fall back to regular ROOT types.
46
47#include "RtypesCore.h"
48
49namespace ROOT {
52 using Int_v = Int_t;
53 using Int32_v = Int_t; // FIXME: Should we introduce Int32_t in RtypesCore.h?
54 using UInt_v = UInt_t;
55 using UInt32_v = UInt_t; // FIXME: Should we introduce UInt32_t in RtypesCore.h?
56}
57#endif
58
59#endif // ROOT_Math_VecTypes
int Int_t
Definition: RtypesCore.h:45
unsigned int UInt_t
Definition: RtypesCore.h:46
double Double_t
Definition: RtypesCore.h:59
float Float_t
Definition: RtypesCore.h:57
Rotation3D::Scalar Scalar
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
UInt_t UInt_v
Definition: Types.h:54
Int_t Int32_v
Definition: Types.h:53
UInt_t UInt32_v
Definition: Types.h:55
Int_t Int_v
Definition: Types.h:52
Double_t Double_v
Definition: Types.h:51
Float_t Float_v
Definition: Types.h:50