Project
Loading...
Searching...
No Matches
Spline2D.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
16
17#ifndef ALICEO2_GPUCOMMON_TPCFASTTRANSFORMATION_SPLINE2D_H
18#define ALICEO2_GPUCOMMON_TPCFASTTRANSFORMATION_SPLINE2D_H
19
20#include "Spline1D.h"
21#include "Spline2DSpec.h"
22#include "FlatObject.h"
23#include "GPUCommonDef.h"
24
25#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
26#include <Vc/Vc>
27#include <Vc/SimdArray>
28#endif
29
30class TFile;
31
32namespace o2
33{
34namespace gpu
35{
60
73template <typename DataT, int32_t YdimT = 0>
75 : public Spline2DSpec<DataT, YdimT, SplineUtil::getSpec(YdimT)>
76{
78 typedef Spline2DSpec<DataT, YdimT, SplineUtil::getSpec(YdimT)> TBase;
79
80 public:
82 typedef typename TVeryBase::Knot Knot;
83
84#if !defined(GPUCA_GPUCODE)
85 using TBase::TBase; // inherit constructors
86
89 {
91 return *this;
92 }
93#else
95 Spline2D() = delete;
96 Spline2D(const Spline2D&) = delete;
97#endif
98
99#if !defined(GPUCA_GPUCODE) && !defined(GPUCA_STANDALONE)
101 static Spline2D* readFromFile(TFile& inpf, const char* name)
102 {
103 return (Spline2D*)TVeryBase::readFromFile(inpf, name);
104 }
105#endif
106
108};
109
110} // namespace gpu
111} // namespace o2
112
113#endif
Definition of FlatObject class.
Definition of Spline1D class.
Definition of Spline2DSpec class.
SafetyLevel
Named enumeration for the safety level used by some methods.
void cloneFromObject(const Spline2DContainer &obj, char *newFlatBufferPtr)
static Spline2DContainer * readFromFile(TFile &inpf, const char *name)
read a class object from the file
TVeryBase::SafetyLevel SafetyLevel
Definition Spline2D.h:81
TVeryBase::Knot Knot
Definition Spline2D.h:82
Spline2D & operator=(const Spline2D &v)
Assignment operator.
Definition Spline2D.h:88
static Spline2D * readFromFile(TFile &inpf, const char *name)
read a class object from the file
Definition Spline2D.h:101
ClassDefNV(Spline2D, 0)
static constexpr int32_t getSpec(int32_t nXdim, int32_t nYdim)
Definition SplineUtil.h:33
const GLdouble * v
Definition glcorearb.h:832
GLuint const GLchar * name
Definition glcorearb.h:781
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...