ATLAS Offline Software
Loading...
Searching...
No Matches
LArReadoutModuleService.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5//Dear emacs, this is -*-c++-*-
6
7#ifndef ILARREADOUTMODULESERVICE_H
8#define ILARREADOUTMODULESERVICE_H
9
10#include <string>
12
21
22public:
23
52
53
57 static int atlas_tb( const HWIdentifier & id) ;
58
62 static int barrel_ec(const HWIdentifier & id) ;
63
69 static int pos_neg(const HWIdentifier & id) ;
70
75 static int em_hec_fcal(const HWIdentifier & id) ;
76
77
78
82 static int subDet(const HWIdentifier & id) ;
83
87 static int robFragId(const HWIdentifier & id) ;
88
92 static int rol(const HWIdentifier & id) ;
93
97 static int rosId(const HWIdentifier & id) ;
98
102 static int rodFragId(const HWIdentifier & id) ;
103
107 static int rodCrate(const HWIdentifier & id) ;
108
112 static int rodSlot(const HWIdentifier & id) ;
113
117 static std::string cnvToString(const HWIdentifier & id) ;
121 static std::string cnvToStringTDAQ(const HWIdentifier & id) ;
122
123 static std::string checkReadoutModuleValues(int atlas_tb, int barrel_ec, int pos_neg, int em_hec_fcal, int rosId, int rodFragId, int rodCrate, int rodSlot);
126
127 private:
128 static const unsigned int m_atlas_tb ;
129 static const unsigned int m_barrel_ec ;
130 static const unsigned int m_pos_neg ;
131
132 // for LArReadoutModuleID
133 static const unsigned int m_emhf ;
134 static const unsigned int s_rosId ;
135 static const unsigned int s_rodFragId ;
136 static const unsigned int s_rodCrate ;
137 static const unsigned int s_rodSlot ;
138
139 static const int s_LAR_EM_BARREL_A_SIDE ;
140 static const int s_LAR_EM_BARREL_C_SIDE ;
141 static const int s_LAR_EM_ENDCAP_A_SIDE ;
142 static const int s_LAR_EM_ENDCAP_C_SIDE ;
143 static const int s_LAR_HAD_ENDCAP_A_SIDE ;
144 static const int s_LAR_HAD_ENDCAP_C_SIDE ;
145 static const int s_LAR_FCAL_A_SIDE ;
146 static const int s_LAR_FCAL_C_SIDE ;
147
148
149};
150#endif //LARREADOUTMODULESERVICE_H
Service for creating and interpreting LAr readout modules identifiers.
static const unsigned int s_rosId
static int rodSlot(const HWIdentifier &id)
return ROD slot number
static int pos_neg(const HWIdentifier &id)
return side positive side : 1 negative side : 0
static int robFragId(const HWIdentifier &id)
return ROB fragment identifier ( == ROL == RODFrag identifier )
static const unsigned int m_emhf
static const unsigned int m_atlas_tb
static int rodCrate(const HWIdentifier &id)
return ROD crate number
static int rol(const HWIdentifier &id)
return ROL identifier ( == RODFrag == ROBFrag identifier )
static const unsigned int m_pos_neg
static int rosId(const HWIdentifier &id)
return ROS identifier
static const unsigned int m_barrel_ec
static std::string checkReadoutModuleValues(int atlas_tb, int barrel_ec, int pos_neg, int em_hec_fcal, int rosId, int rodFragId, int rodCrate, int rodSlot)
static const unsigned int s_rodCrate
static int subDet(const HWIdentifier &id)
return sub-detector identifier
static int barrel_ec(const HWIdentifier &id)
return location (0: barrel or 1: end cap )
static int rodFragId(const HWIdentifier &id)
return ROD fragment identifier ( == ROL == ROB identifier )
static HWIdentifier createReadoutModuleID(int atlas_tb, int barrel_ec, int pos_neg, int em_hec_fcal, int rosId, int rodFragId, int rodCrate, int rodSlot)
create a HWIdentifier valid parameter values atlas_tb : 0 atlas , 1 test beam barrel_ec : 0 bar...
static std::string cnvToStringTDAQ(const HWIdentifier &id)
convert a HWIdentifier into a STL string, TDAQ convention for sub-detector numbering
static const unsigned int s_rodSlot
static std::string cnvToString(const HWIdentifier &id)
convert a HWIdentifier into a STL string
static int em_hec_fcal(const HWIdentifier &id)
return subdetector em : 0, hec : 1, fcal : 2
static int atlas_tb(const HWIdentifier &id)
return 0 for ATLAS , 1 for Test Beam
static const unsigned int s_rodFragId