CalibTracker
SiStripCommon
interface
ShallowClustersProducer.h
Go to the documentation of this file.
1
#ifndef SHALLOW_CLUSTERS_PRODUCER
2
#define SHALLOW_CLUSTERS_PRODUCER
3
4
#include "
FWCore/Framework/interface/EDProducer.h
"
5
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
6
#include "
FWCore/Utilities/interface/InputTag.h
"
7
#include "
FWCore/Utilities/interface/EDGetToken.h
"
8
#include "
DataFormats/Common/interface/DetSetVector.h
"
9
#include "
DataFormats/Common/interface/DetSetVectorNew.h
"
10
11
#include "
DataFormats/SiStripCluster/interface/SiStripCluster.h
"
12
#include "
RecoLocalTracker/SiStripClusterizer/interface/SiStripClusterInfo.h
"
13
14
class
SiStripProcessedRawDigi
;
15
class
TrackerTopology
;
16
17
class
ShallowClustersProducer
:
public
edm::EDProducer
{
18
public
:
19
explicit
ShallowClustersProducer
(
const
edm::ParameterSet
&);
20
21
private
:
22
edm::InputTag
theClustersLabel
;
23
std::string
Prefix
;
24
void
produce
(
edm::Event
&,
const
edm::EventSetup
&)
override
;
25
26
struct
moduleVars
{
27
moduleVars
(uint32_t,
const
TrackerTopology
*);
28
int
subdetid
,
side
,
layerwheel
,
stringringrod
,
petal
,
stereo
;
29
uint32_t
module
;
30
};
31
32
struct
NearDigis
{
33
NearDigis
(
const
SiStripClusterInfo
&);
34
NearDigis
(
const
SiStripClusterInfo
&,
const
edm::DetSetVector<SiStripProcessedRawDigi>
&);
35
float
max
,
left
,
right
,
first
,
last
,
Lleft
,
Rright
;
36
float
etaX
()
const
{
return
((
left
+
right
) /
max
) / 2.; }
37
float
eta
()
const
{
return
right
>
left
?
max
/ (
max
+
right
) :
left
/ (
left
+
max
); }
38
float
etaasymm
()
const
{
return
right
>
left
? (
right
-
max
) / (
right
+
max
) : (
max
-
left
) / (
max
+
left
); }
39
float
outsideasymm
()
const
{
return
(
last
-
first
) / (
last
+
first
); }
40
};
41
42
edm::EDGetTokenT<edmNew::DetSetVector<SiStripCluster>
>
theClustersToken_
;
43
edm::EDGetTokenT<edm::DetSetVector<SiStripProcessedRawDigi>
>
theDigisToken_
;
44
SiStripClusterInfo
siStripClusterInfo_
;
45
};
46
47
#endif
SiStripClusterInfo
Definition:
SiStripClusterInfo.h:21
edm::DetSetVector
Definition:
DetSetVector.h:61
SiStripClusterInfo.h
ShallowClustersProducer::NearDigis::max
float max
Definition:
ShallowClustersProducer.h:35
ShallowClustersProducer::NearDigis::etaX
float etaX() const
Definition:
ShallowClustersProducer.h:36
EDProducer.h
edm::EDGetTokenT
Definition:
EDGetToken.h:33
ShallowClustersProducer::NearDigis::left
float left
Definition:
ShallowClustersProducer.h:35
ShallowClustersProducer::moduleVars::petal
int petal
Definition:
ShallowClustersProducer.h:28
TrackerTopology
Definition:
TrackerTopology.h:16
ShallowClustersProducer::NearDigis::etaasymm
float etaasymm() const
Definition:
ShallowClustersProducer.h:38
ShallowClustersProducer::moduleVars::layerwheel
int layerwheel
Definition:
ShallowClustersProducer.h:28
ShallowClustersProducer::NearDigis::last
float last
Definition:
ShallowClustersProducer.h:35
ShallowClustersProducer::moduleVars::side
int side
Definition:
ShallowClustersProducer.h:28
ShallowClustersProducer::moduleVars::subdetid
int subdetid
Definition:
ShallowClustersProducer.h:28
ShallowClustersProducer::NearDigis::Rright
float Rright
Definition:
ShallowClustersProducer.h:35
ShallowClustersProducer::moduleVars::stereo
int stereo
Definition:
ShallowClustersProducer.h:28
ShallowClustersProducer::ShallowClustersProducer
ShallowClustersProducer(const edm::ParameterSet &)
Definition:
ShallowClustersProducer.cc:12
EDGetToken.h
ShallowClustersProducer::moduleVars::moduleVars
moduleVars(uint32_t, const TrackerTopology *)
Definition:
ShallowClustersProducer.cc:221
ShallowClustersProducer::NearDigis::Lleft
float Lleft
Definition:
ShallowClustersProducer.h:35
ShallowClustersProducer::moduleVars
Definition:
ShallowClustersProducer.h:26
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
ShallowClustersProducer::NearDigis::outsideasymm
float outsideasymm() const
Definition:
ShallowClustersProducer.h:39
edm::ParameterSet
Definition:
ParameterSet.h:36
SiStripCluster.h
ShallowClustersProducer::NearDigis::first
float first
Definition:
ShallowClustersProducer.h:35
ShallowClustersProducer
Definition:
ShallowClustersProducer.h:17
edm::EventSetup
Definition:
EventSetup.h:57
DetSetVector.h
ShallowClustersProducer::moduleVars::stringringrod
int stringringrod
Definition:
ShallowClustersProducer.h:28
ShallowClustersProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition:
ShallowClustersProducer.cc:55
ShallowClustersProducer::NearDigis::eta
float eta() const
Definition:
ShallowClustersProducer.h:37
ShallowClustersProducer::Prefix
std::string Prefix
Definition:
ShallowClustersProducer.h:23
InputTag.h
ShallowClustersProducer::theClustersToken_
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > theClustersToken_
Definition:
ShallowClustersProducer.h:42
ShallowClustersProducer::NearDigis
Definition:
ShallowClustersProducer.h:32
Frameworkfwd.h
ShallowClustersProducer::NearDigis::right
float right
Definition:
ShallowClustersProducer.h:35
edm::EDProducer
Definition:
EDProducer.h:36
ShallowClustersProducer::theDigisToken_
edm::EDGetTokenT< edm::DetSetVector< SiStripProcessedRawDigi > > theDigisToken_
Definition:
ShallowClustersProducer.h:43
SiStripProcessedRawDigi
A signed Digi for the silicon strip detector, containing only adc information, and suitable for stori...
Definition:
SiStripProcessedRawDigi.h:16
ShallowClustersProducer::theClustersLabel
edm::InputTag theClustersLabel
Definition:
ShallowClustersProducer.h:22
edm::Event
Definition:
Event.h:73
ShallowClustersProducer::NearDigis::NearDigis
NearDigis(const SiStripClusterInfo &)
Definition:
ShallowClustersProducer.cc:195
DetSetVectorNew.h
edm::InputTag
Definition:
InputTag.h:15
ShallowClustersProducer::siStripClusterInfo_
SiStripClusterInfo siStripClusterInfo_
Definition:
ShallowClustersProducer.h:44
ShallowClustersProducer::moduleVars::module
uint32_t module
Definition:
ShallowClustersProducer.h:29
Generated for CMSSW Reference Manual by
1.8.16