Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
Calibration
Tools
interface
EcalRingCalibrationTools.h
Go to the documentation of this file.
1
#ifndef EcalRingCalibrationTools_h
2
#define EcalRingCalibrationTools_h
3
4
/****************************************
5
*
6
* 25/09/2007 P. Meridiani (CERN)
7
* Description:
8
* Tools to ease the hanling of indices
9
* for ECAL ring intercalibration
10
*
11
***************************************/
12
13
#include <vector>
14
#include <mutex>
15
#include <atomic>
16
#include "
DataFormats/EcalDetId/interface/EBDetId.h
"
17
#include "
DataFormats/EcalDetId/interface/EEDetId.h
"
18
#include "
FWCore/Utilities/interface/thread_safety_macros.h
"
19
20
class
DetId
;
21
class
CaloGeometry
;
22
23
class
EcalRingCalibrationTools
{
24
public
:
25
EcalRingCalibrationTools
(){};
26
~EcalRingCalibrationTools
(){};
27
29
static
short
getRingIndex
(
DetId
aDetId);
30
31
static
short
getModuleIndex
(
DetId
aDetId);
32
34
static
std::vector<DetId>
getDetIdsInRing
(
short
aRingIndex);
35
static
std::vector<DetId>
getDetIdsInModule
(
short
int
);
36
static
std::vector<DetId>
getDetIdsInECAL
();
37
38
static
constexpr
short
N_RING_TOTAL
= 248;
39
static
constexpr
short
N_RING_BARREL
= 170;
40
static
constexpr
short
N_RING_ENDCAP
= 78;
41
42
static
constexpr
short
N_MODULES_BARREL
= 144;
43
44
static
void
setCaloGeometry
(
const
CaloGeometry
*
geometry
);
45
46
private
:
47
static
void
initializeFromGeometry
(
CaloGeometry
const
*
geometry
);
// needed only for the endcap
48
49
static
std::atomic<bool>
isInitializedFromGeometry_
;
50
51
CMS_THREAD_GUARD
(
isInitializedFromGeometry_
)
52
static
short
endcapRingIndex_
[
EEDetId
::
IX_MAX
][
EEDetId
::
IY_MAX
];
// array needed only for the endcaps
53
54
static std::once_flag
once_
;
55
};
56
#endif
EcalRingCalibrationTools::endcapRingIndex_
static short endcapRingIndex_[EEDetId::IX_MAX][EEDetId::IY_MAX]
Definition:
EcalRingCalibrationTools.h:52
EcalRingCalibrationTools::getModuleIndex
static short getModuleIndex(DetId aDetId)
Definition:
EcalRingCalibrationTools.cc:49
EcalRingCalibrationTools
Definition:
EcalRingCalibrationTools.h:23
EcalRingCalibrationTools::setCaloGeometry
static void setCaloGeometry(const CaloGeometry *geometry)
Definition:
EcalRingCalibrationTools.cc:181
EcalRingCalibrationTools::isInitializedFromGeometry_
static std::atomic< bool > isInitializedFromGeometry_
Definition:
EcalRingCalibrationTools.h:49
EcalRingCalibrationTools::N_MODULES_BARREL
static constexpr short N_MODULES_BARREL
Definition:
EcalRingCalibrationTools.h:42
EcalRingCalibrationTools::N_RING_ENDCAP
static constexpr short N_RING_ENDCAP
Definition:
EcalRingCalibrationTools.h:40
EcalRingCalibrationTools::initializeFromGeometry
static void initializeFromGeometry(CaloGeometry const *geometry)
Definition:
EcalRingCalibrationTools.cc:185
thread_safety_macros.h
EcalRingCalibrationTools::getRingIndex
static short getRingIndex(DetId aDetId)
Retrieve the phi-ring index corresponding to a DetId.
Definition:
EcalRingCalibrationTools.cc:24
EcalRingCalibrationTools::getDetIdsInRing
static std::vector< DetId > getDetIdsInRing(short aRingIndex)
Retrieve the DetIds in a phi-ring.
Definition:
EcalRingCalibrationTools.cc:66
IX_MAX
Definition:
EcalFloatCondObjectContainerUtils.h:20
EEDetId
Definition:
EEDetId.h:14
EcalRingCalibrationTools::N_RING_BARREL
static constexpr short N_RING_BARREL
Definition:
EcalRingCalibrationTools.h:39
CMS_THREAD_GUARD
#define CMS_THREAD_GUARD(_var_)
CaloGeometry
Definition:
CaloGeometry.h:21
IY_MAX
Definition:
EcalFloatCondObjectContainerUtils.h:21
EcalRingCalibrationTools::getDetIdsInModule
static std::vector< DetId > getDetIdsInModule(short int)
Definition:
EcalRingCalibrationTools.cc:125
DetId
Definition:
DetId.h:17
EcalRingCalibrationTools::N_RING_TOTAL
static constexpr short N_RING_TOTAL
Definition:
EcalRingCalibrationTools.h:38
relativeConstraints.geometry
tuple geometry
Definition:
relativeConstraints.py:39
EcalRingCalibrationTools::~EcalRingCalibrationTools
~EcalRingCalibrationTools()
Definition:
EcalRingCalibrationTools.h:26
EcalRingCalibrationTools::getDetIdsInECAL
static std::vector< DetId > getDetIdsInECAL()
Definition:
EcalRingCalibrationTools.cc:102
EBDetId.h
EEDetId.h
EcalRingCalibrationTools::EcalRingCalibrationTools
EcalRingCalibrationTools()
Definition:
EcalRingCalibrationTools.h:25
EcalRingCalibrationTools::once_
static std::once_flag once_
Definition:
EcalRingCalibrationTools.h:54
Generated for CMSSW Reference Manual by
1.8.5