SiStripClusterToDigiProducer::SiStripClusterToDigiProducer |
( |
const edm::ParameterSet & |
conf | ) |
|
|
explicit |
Definition at line 54 of file SiStripClusterToDigiProducer.cc.
References edm::ParameterSet::getParameter(), produce(), and token.
59 produces< DigiCollection > (
"ZeroSuppressed");
60 produces< DigiCollection > (
"VirginRaw" );
61 produces< DigiCollection > (
"ProcessedRaw" );
62 produces< DigiCollection > (
"ScopeMode" );
T getParameter(std::string const &) const
edm::EDGetTokenT< ClusterCollection > token
uint16_t SiStripClusterToDigiProducer::applyGain |
( |
const uint16_t & |
strip, |
|
|
const uint16_t & |
adc |
|
) |
| |
|
inlineprivate |
float SiStripClusterToDigiProducer::gain |
( |
const uint16_t & |
strip | ) |
const |
|
inlineprivate |
void SiStripClusterToDigiProducer::initialize |
( |
const edm::EventSetup & |
es | ) |
|
|
private |
Definition at line 91 of file SiStripClusterToDigiProducer.cc.
References applyGain(), edmNew::DetSetVector< T >::begin(), edm::DetSet< T >::data, edm::DetSet< T >::empty(), edmNew::DetSetVector< T >::end(), initialize(), setDetId(), and ApeEstimator_cff::width.
Referenced by produce().
95 uint32_t detid=it->detId();
101 for(;clus!=endclus;clus++){
103 size_t width = clus->amplitudes().size();
104 size_t firstStrip = clus->firstStrip();
105 uint16_t stripPos=firstStrip;
106 for(;istrip<
width;++istrip){
107 detDigis.data.push_back(
SiStripDigi( stripPos,
applyGain(stripPos,clus->amplitudes()[istrip]) ) );
112 if (!detDigis.empty())
113 output_base.push_back(detDigis);
void setDetId(const uint32_t id)
boost::transform_iterator< IterHelp, const_IdIter > const_iterator
const_iterator end(bool update=false) const
uint16_t applyGain(const uint16_t &strip, const uint16_t &adc)
edm::DetSet< SiStripDigi > DetDigiCollection
A Digi for the silicon strip detector, containing both strip and adc information, and suitable for st...
edmNew::DetSet< SiStripCluster >::const_iterator DetClusIter
const_iterator begin(bool update=false) const
Definition at line 67 of file SiStripClusterToDigiProducer.cc.
References initialize(), input, edm::HandleBase::isValid(), eostools::move(), process(), and token.
Referenced by SiStripClusterToDigiProducer().
71 std::vector<DetDigiCollection> output_base;
73 event.getByToken(
token,input);
79 auto outputZS = std::make_unique<DigiCollection>(output_base);
80 auto outputVR = std::make_unique<DigiCollection>();
81 auto outputPR = std::make_unique<DigiCollection>();
82 auto outputSM = std::make_unique<DigiCollection>();
84 event.put(
std::move(outputZS),
"ZeroSuppressed");
85 event.put(
std::move(outputVR),
"VirginRaw" );
86 event.put(
std::move(outputPR),
"ProcessedRaw" );
87 event.put(
std::move(outputSM),
"ScopeMode" );
static std::string const input
void initialize(const edm::EventSetup &es)
edm::EDGetTokenT< ClusterCollection > token
void process(const ClusterCollection &input, std::vector< DetDigiCollection > &output_base)
void SiStripClusterToDigiProducer::setDetId |
( |
const uint32_t |
id | ) |
|
|
inlineprivate |
uint32_t SiStripClusterToDigiProducer::detId |
|
private |
uint32_t SiStripClusterToDigiProducer::gain_cache_id |
|
private |