ATLAS Offline Software
Loading...
Searching...
No Matches
SiHitIdHelper.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef INDETSIMEVENT_SIHITIDHELPER
6#define INDETSIMEVENT_SIHITIDHELPER
7
8//
9// This is a helper class to build an identifing integer used by
10// the simulation. It inherits from HitIdHelper, in order to get
11// all the packing and shifting for free.
12// The class is a singleton and a static GetHelper() is provided
13// the constructor calls the Initialize() method which sets all the
14// field dimensions
15// Methods are provided to get access to the SiTracker Geometry
16// description
17//
18
19
20//
21// Base Class
23
24
26 public:
27 //
28 // Access to the helper
29 static const SiHitIdHelper* GetHelper();
30 //
31 // Info retrieval:
32 // Pixel, SCT, or HGTD
33 bool isPixel(const int& hid) const;
34 bool isSCT(const int& hid) const;
35 bool isHGTD(const int& hid) const;
36 bool isPLR(const int& hid) const;
37
38 // Barrel or Endcap
39 int getBarrelEndcap(const int& hid) const;
40
41 // Layer/Disk
42 int getLayerDisk(const int& hid) const;
43
44 // eta module
45 int getEtaModule(const int& hid) const;
46
47 // phi module&
48 int getPhiModule(const int& hid) const;
49
50 // side
51 int getSide(const int& hid) const;
52 //
53 // Info packing:
54 int buildHitId(const int, const int, const int, const int, const int, const int) const;
55
56 int buildHitIdFromStringITk(int part, const std::string&) const;
57
58 int buildHitIdFromStringHGTD(int part, const std::string&) const;
59
60 private:
61 //
62 // private constructor to have a singleton
64 //
65 // Initialize the helper, only called by the constructor
66 void Initialize();
67 //
68 // ITk/HGTD flag
70};
71
72#endif // INDETSIMEVENT_SIHITIDHELPER
int buildHitIdFromStringHGTD(int part, const std::string &) const
int getBarrelEndcap(const int &hid) const
int buildHitId(const int, const int, const int, const int, const int, const int) const
int buildHitIdFromStringITk(int part, const std::string &) const
bool isPixel(const int &hid) const
int getEtaModule(const int &hid) const
bool isPLR(const int &hid) const
int getLayerDisk(const int &hid) const
int getPhiModule(const int &hid) const
bool isHGTD(const int &hid) const
bool isSCT(const int &hid) const
int getSide(const int &hid) const
static const SiHitIdHelper * GetHelper()