ATLAS Offline Software
Loading...
Searching...
No Matches
TRT_DetElementLink_xk.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6// Header file for class TRT_DetElementLink_xk
8// (c) ATLAS Detector software
10// Class for detector elements links
12// Version 1.0 3/10/2004 I.Gavrilenko
14
15#ifndef TRT_DetElementLink_xk_H
16#define TRT_DetElementLink_xk_H
17
18#include <array>
19#include <vector>
20
22
23namespace InDet {
24
27 // Public methods:
29
30 public:
31 class Used_t {
32 public:
33 Used_t() : m_used(false) {}
34
35 bool used() const { return m_used; }
36
37 void setUsed() { m_used = true; }
38
39 private:
40 bool m_used;
41 };
42 using TRT_DetElemUsedMap = std::array<std::vector<std::vector<Used_t> >, 3>;
43
45 TRT_DetElementLink_xk(const InDetDD::TRT_BaseElement*&, const double*);
46
49
52
54 // Main methods
56
58 const float& phi() const { return m_phi; }
59 const float& sin() const { return m_sin; }
60 const float& cos() const { return m_cos; }
61 const float& centerf() const { return m_centerf; }
62
63 protected:
65 // Protected Data
67
69 float m_phi;
70 float m_sin;
71 float m_cos;
72 float m_centerf;
73
75 // Methods
77};
78
80// Inline methods
82
84 m_detelement = 0;
85 m_phi = 0.;
86 m_sin = 0.;
87 m_cos = 0.;
88 m_centerf = 0.;
89}
90
92 const InDetDD::TRT_BaseElement*& el, const double* P) {
93 m_detelement = el; // det elements
94 m_phi = float(P[2]); // azimuthal angle
95 m_sin = float(P[5]); // sin(phi)
96 m_cos = float(P[6]); // cos(phi)
97 m_centerf = float(P[18]); //
98}
99
100} // namespace InDet
101
102#endif // TRT_DetElementLink_xk
103
static Double_t P(Double_t *tt, Double_t *par)
Virtual base class of TRT readout elements.
Primary Vertex Finder.