Project
Loading...
Searching...
No Matches
TrackletTransformer.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
12#ifndef O2_TRD_TRACKLETTRANSFORMER_H
13#define O2_TRD_TRACKLETTRANSFORMER_H
14
15#include "TRDBase/Geometry.h"
19
20namespace o2
21{
22namespace trd
23{
24
26{
27 public:
30
31 void init();
32
33 void setCalVdriftExB(const CalVdriftExB* cal) { mCalVdriftExB = cal; };
34 void setApplyXOR() { mApplyXOR = true; }
35 void setApplyShift(bool f) { mApplyShift = f; }
36 bool isShiftApplied() const { return mApplyShift; }
37
38 float calculateZ(int padrow, const PadPlane* padPlane) const;
39
40 float calculateDy(int hcid, int slope, const PadPlane* padPlane) const;
41
42 float calibrateX(double x) const;
43
44 std::array<float, 3> transformL2T(int hcid, std::array<double, 3> spacePoint) const;
45
46 CalibratedTracklet transformTracklet(Tracklet64 tracklet, bool trackingFrame = true) const;
47
48 double getTimebin(int detector, double x) const;
49
50 private:
51 Geometry* mGeo{nullptr};
52 bool mApplyXOR{false};
53 bool mApplyShift{true};
54
55 float mXAnode;
56
57 const CalVdriftExB* mCalVdriftExB{nullptr};
58};
59
60} // namespace trd
61} // namespace o2
62
63#endif
Object with vDrift and ExB values per chamber to be written into the CCDB.
uint16_t slope
Definition RawData.h:1
uint32_t padrow
Definition RawData.h:5
CalibratedTracklet transformTracklet(Tracklet64 tracklet, bool trackingFrame=true) const
double getTimebin(int detector, double x) const
float calculateZ(int padrow, const PadPlane *padPlane) const
std::array< float, 3 > transformL2T(int hcid, std::array< double, 3 > spacePoint) const
void setCalVdriftExB(const CalVdriftExB *cal)
float calculateDy(int hcid, int slope, const PadPlane *padPlane) const
GLint GLenum GLint x
Definition glcorearb.h:403
GLdouble f
Definition glcorearb.h:310
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...