ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArGeoModel
LArHV
src
EMECHVElectrode.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
LArHV/EMECHVElectrode.h
"
6
#include "
LArHV/EMECHVModule.h
"
7
#include "
LArHV/EMECHVManager.h
"
8
#include <cmath>
9
10
#include "
EMECHVPayload.h
"
11
12
class
EMECHVElectrode::Clockwork
{
13
public
:
14
Clockwork
(
const
EMECHVModule
* modulePtr,
unsigned
int
electrode)
15
:
module
(modulePtr)
16
,
iElectrode
(electrode)
17
{}
18
const
EMECHVModule
*
module
;
19
unsigned
int
iElectrode
;
20
};
21
22
EMECHVElectrode::EMECHVElectrode
(
const
EMECHVModule
* module,
unsigned
int
iElectrode)
23
:
m_c
(new
Clockwork
(module,iElectrode))
24
{
25
}
26
27
unsigned
int
EMECHVElectrode::getElectrodeIndex
()
const
28
{
29
return
m_c
->iElectrode;
30
}
31
32
EMECHVElectrode::~EMECHVElectrode
()
33
{
34
delete
m_c
;
35
}
36
37
const
EMECHVModule
&
EMECHVElectrode::getModule
()
const
38
{
39
return
*(
m_c
->module);
40
}
41
42
double
EMECHVElectrode::getPhi
()
const
43
{
44
double
N=
m_c
->module->getWheelIndex()==
EMECHVModule::OUTER
? 768:256;
45
return
m_c
->module->getPhiMin()+
m_c
->iElectrode*2.0*
M_PI
/N;
46
}
47
48
#if !(defined(SIMULATIONBASE) || defined(GENERATIONBASE))
49
int
EMECHVElectrode::hvLineNo
(
int
iGap,
const
LArHVIdMapping
* hvIdMapping)
const
{
50
return
m_c
->module->getManager().hvLineNo(*
this
, iGap, hvIdMapping);
51
}
52
#endif
M_PI
#define M_PI
Definition
ActiveFraction.h:14
EMECHVElectrode.h
EMECHVManager.h
EMECHVModule.h
EMECHVPayload.h
EMECHVElectrode::Clockwork
Definition
EMECHVElectrode.cxx:12
EMECHVElectrode::Clockwork::module
const EMECHVModule * module
Definition
EMECHVElectrode.cxx:18
EMECHVElectrode::Clockwork::iElectrode
unsigned int iElectrode
Definition
EMECHVElectrode.cxx:19
EMECHVElectrode::Clockwork::Clockwork
Clockwork(const EMECHVModule *modulePtr, unsigned int electrode)
Definition
EMECHVElectrode.cxx:14
EMECHVElectrode::hvLineNo
int hvLineNo(int iGap, const LArHVIdMapping *hvIdMapping) const
Definition
EMECHVElectrode.cxx:49
EMECHVElectrode::EMECHVElectrode
EMECHVElectrode(const EMECHVModule *module, unsigned int iElectrode)
Definition
EMECHVElectrode.cxx:22
EMECHVElectrode::~EMECHVElectrode
~EMECHVElectrode()
Definition
EMECHVElectrode.cxx:32
EMECHVElectrode::getPhi
double getPhi() const
Definition
EMECHVElectrode.cxx:42
EMECHVElectrode::getElectrodeIndex
unsigned int getElectrodeIndex() const
Definition
EMECHVElectrode.cxx:27
EMECHVElectrode::m_c
Clockwork * m_c
Definition
EMECHVElectrode.h:38
EMECHVElectrode::getModule
const EMECHVModule & getModule() const
Definition
EMECHVElectrode.cxx:37
EMECHVModule
Definition
EMECHVModule.h:22
EMECHVModule::OUTER
@ OUTER
Definition
EMECHVModule.h:24
LArHVIdMapping
Definition
LArHVIdMapping.h:21
Generated on
for ATLAS Offline Software by
1.17.0