Project
Loading...
Searching...
No Matches
GPUROOTSMatrixFwd.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license 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
14
15#ifndef GPUROOTSMATRIXFWD_H
16#define GPUROOTSMATRIXFWD_H
17
18// Standalone forward declarations for Svector / SMatrix / etc.
19// To be used on GPU where ROOT is not available.
20
21#include "GPUCommonDef.h"
22
23namespace ROOT
24{
25namespace Math
26{
27template <typename T, uint32_t N>
28class SVector;
29template <class T, uint32_t D1, uint32_t D2, class R>
30class SMatrix;
31template <class T, uint32_t D>
32class MatRepSym;
33template <class T, uint32_t D1, uint32_t D2>
34class MatRepStd;
35} // namespace Math
36} // namespace ROOT
37
38namespace o2
39{
40namespace math_utils
41{
42
43namespace detail
44{
45template <typename T, uint32_t N>
46class SVectorGPU;
47template <class T, uint32_t D1, uint32_t D2, class R>
48class SMatrixGPU;
49template <class T, uint32_t D>
50class MatRepSymGPU;
51template <class T, uint32_t D1, uint32_t D2>
52class MatRepStdGPU;
53} // namespace detail
54
55#if !defined(GPUCA_STANDALONE) && !defined(GPUCA_GPUCODE) && !defined(GPUCOMMONRTYPES_H_ACTIVE)
56template <typename T, uint32_t N>
58template <class T, uint32_t D1, uint32_t D2, class R>
60template <class T, uint32_t D>
62template <class T, uint32_t D1, uint32_t D2 = D1>
64#else
65template <typename T, uint32_t N>
67template <class T, uint32_t D1, uint32_t D2 = D1, class R = detail::MatRepStdGPU<T, D1, D2>>
69template <class T, uint32_t D>
71template <class T, uint32_t D1, uint32_t D2 = D1>
73#endif
74
75} // namespace math_utils
76} // namespace o2
77
78#endif
SMatReprStd starting port here.
Definition SMatrixGPU.h:357
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...