SimPPS
RPDigiProducer
plugins
RPHitChargeConverter.cc
Go to the documentation of this file.
1
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
2
#include "
DataFormats/GeometryVector/interface/LocalPoint.h
"
3
#include "
SimPPS/RPDigiProducer/plugins/RPLinearChargeDivider.h
"
4
#include "
SimPPS/RPDigiProducer/plugins/RPHitChargeConverter.h
"
5
#include "
SimPPS/RPDigiProducer/plugins/RPLinearChargeCollectionDrifter.h
"
6
#include "
SimPPS/RPDigiProducer/plugins/RPLinearInduceChargeOnStrips.h
"
7
8
RPHitChargeConverter::RPHitChargeConverter
(
const
edm::ParameterSet
&
params
, CLHEP::HepRandomEngine &eng,
RPDetId
det_id)
9
: det_id_(det_id) {
10
verbosity_
=
params
.getParameter<
int
>(
"RPVerbosity"
);
11
theRPChargeDivider
= std::make_unique<RPLinearChargeDivider>(
params
, eng, det_id);
12
theRPChargeCollectionDrifter
= std::make_unique<RPLinearChargeCollectionDrifter>(
params
, det_id);
13
theRPInduceChargeOnStrips
= std::make_unique<RPLinearInduceChargeOnStrips>(
params
, det_id);
14
}
15
16
RPHitChargeConverter::~RPHitChargeConverter
() {}
17
18
simromanpot::strip_charge_map
RPHitChargeConverter::processHit
(
const
PSimHit
&
hit
) {
19
simromanpot::energy_path_distribution
ions_along_path =
theRPChargeDivider
->divide(
hit
);
20
if
(
verbosity_
)
21
edm::LogInfo
(
"HitChargeConverter"
) <<
det_id_
<<
" clouds no generated on the path="
<< ions_along_path.size()
22
<<
"\n"
;
23
return
theRPInduceChargeOnStrips
->Induce(
theRPChargeCollectionDrifter
->Drift(ions_along_path));
24
}
simromanpot::energy_path_distribution
std::vector< RPEnergyDepositUnit > energy_path_distribution
Definition:
RPSimTypes.h:16
RPLinearChargeCollectionDrifter.h
MessageLogger.h
RPHitChargeConverter::processHit
simromanpot::strip_charge_map processHit(const PSimHit &hit)
Definition:
RPHitChargeConverter.cc:18
CalibrationSummaryClient_cfi.params
params
Definition:
CalibrationSummaryClient_cfi.py:14
RPHitChargeConverter::~RPHitChargeConverter
~RPHitChargeConverter()
Definition:
RPHitChargeConverter.cc:16
simromanpot::strip_charge_map
std::map< unsigned short, double > strip_charge_map
Definition:
RPSimTypes.h:14
edm::LogInfo
Log< level::Info, false > LogInfo
Definition:
MessageLogger.h:125
RPHitChargeConverter::theRPChargeCollectionDrifter
std::unique_ptr< RPLinearChargeCollectionDrifter > theRPChargeCollectionDrifter
Definition:
RPHitChargeConverter.h:24
RPHitChargeConverter::verbosity_
int verbosity_
Definition:
RPHitChargeConverter.h:26
RPHitChargeConverter::theRPInduceChargeOnStrips
std::unique_ptr< RPLinearInduceChargeOnStrips > theRPInduceChargeOnStrips
Definition:
RPHitChargeConverter.h:25
edm::ParameterSet
Definition:
ParameterSet.h:47
RPHitChargeConverter::RPHitChargeConverter
RPHitChargeConverter(const edm::ParameterSet ¶ms_, CLHEP::HepRandomEngine &eng, RPDetId det_id)
Definition:
RPHitChargeConverter.cc:8
RPHitChargeConverter.h
RPDetId
uint32_t RPDetId
Definition:
RPSimTypes.h:11
RPLinearInduceChargeOnStrips.h
RPHitChargeConverter::det_id_
const RPDetId det_id_
Definition:
RPHitChargeConverter.h:21
LocalPoint.h
RPHitChargeConverter::theRPChargeDivider
std::unique_ptr< RPLinearChargeDivider > theRPChargeDivider
Definition:
RPHitChargeConverter.h:23
RPLinearChargeDivider.h
PSimHit
Definition:
PSimHit.h:15
hit
Definition:
SiStripHitEffFromCalibTree.cc:88
Generated for CMSSW Reference Manual by
1.8.16