Iterate over DetUnits, then over Clusters and invoke the CPE on each, and make a RecHit to store the result.
Definition at line 92 of file MTDTrackingRecHitProducer.cc.
References edmNew::DetSetVector< T >::begin(), cpe_, DEBUG, TauDecayModes::dec, DEFINE_FWK_MODULE, edmNew::DetSetVector< T >::end(), Exception, geom_, MTDClusterParameterEstimator::getParameters(), MTDGeometry::idToDetUnit(), input, BaseTrackerRecHit::localPosition(), BaseTrackerRecHit::localPositionError(), edmNew::makeRefTo(), edmNew::DetSetVector< T >::FastFiller::push_back(), edmNew::DetSet< T >::size(), edmNew::DetSetVector< T >::size(), MTDTrackingRecHit::time(), MTDTrackingRecHit::timeError(), PV3DBase< T, PVType, FrameType >::x(), LocalError::xx(), PV3DBase< T, PVType, FrameType >::y(), and LocalError::yy().
Referenced by produce().
96 DEBUG(
"inputCollection " << input.
size());
97 for (; DSViter != input.
end(); DSViter++) {
98 unsigned int detid = DSViter->detId();
99 DetId detIdObject(detid);
101 if (genericDet ==
nullptr) {
103 <<
"GeographicalID: " << std::hex << detid <<
" is invalid!" <<
std::dec << std::endl;
110 for (; clustIt != clustEnd; clustIt++) {
111 DEBUG(
"Cluster: size " << clustIt->
size() <<
" " << clustIt->x() <<
"," << clustIt->y() <<
" " 112 << clustIt->energy() <<
" " << clustIt->time());
121 DEBUG(
"MTD_TRH: " <<
hit.localPosition().
x() <<
"," <<
hit.localPosition().
y() <<
" : " 122 <<
hit.localPositionError().xx() <<
"," <<
hit.localPositionError().yy() <<
" : " <<
hit.time()
123 <<
" : " <<
hit.timeError());
125 recHitsOnDet.push_back(
hit);
128 DEBUG(
"outputCollection " << output.
size());
edm::Ref< typename HandleT::element_type, typename HandleT::element_type::value_type::value_type > makeRefTo(const HandleT &iHandle, typename HandleT::element_type::value_type::const_iterator itIter)
const_iterator end(bool update=false) const
data_type const * const_iterator
static std::string const input
const MTDClusterParameterEstimator * cpe_
boost::transform_iterator< IterHelp, const_IdIter > const_iterator
virtual ReturnType getParameters(const FTLCluster &cl, const GeomDetUnit &det) const =0
A 2D TrackerRecHit with time and time error information.
const MTDGeometry * geom_
std::tuple< LocalPoint, LocalError, TimeValue, TimeValueError > ReturnType
const_iterator begin(bool update=false) const
const MTDGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.