Iterate over DetUnits, then over Clusters and invoke the CPE on each, and make a RecHit to store the result.
Definition at line 95 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().
101 DEBUG(
"inputCollection " << input.
size());
102 for ( ; DSViter != input.
end() ; DSViter++) {
103 unsigned int detid = DSViter->detId();
104 DetId detIdObject( detid );
106 if( genericDet ==
nullptr ) {
107 throw cms::Exception(
"MTDTrackingRecHitProducer") <<
"GeographicalID: " << std::hex
117 for ( ; clustIt != clustEnd; clustIt++) {
118 DEBUG(
"Cluster: size " << clustIt->
size() <<
" " << clustIt->x() <<
"," << clustIt->y() <<
" " << clustIt->energy() <<
" " << clustIt->time());
128 DEBUG(
"MTD_TRH: " <<
hit.localPosition().
x() <<
"," <<
hit.localPosition().
y()
129 <<
" : " <<
hit.localPositionError().xx() <<
"," <<
hit.localPositionError().yy()
130 <<
" : " <<
hit.time() <<
" : " <<
hit.timeError());
132 recHitsOnDet.push_back(
hit);
135 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)
boost::transform_iterator< IterHelp, const_IdIter > const_iterator
const_iterator end(bool update=false) const
data_type const * const_iterator
static std::string const input
const MTDClusterParameterEstimator * cpe_
std::tuple< LocalPoint, LocalError, TimeValue, TimeValueError > ReturnType
virtual ReturnType getParameters(const FTLCluster &cl, const GeomDetUnit &det) const =0
A 2D TrackerRecHit with time and time error information.
const MTDGeometry * geom_
const_iterator begin(bool update=false) const
const MTDGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.