CMS 3D CMS Logo

GEMRecHitBaseAlgo.cc
Go to the documentation of this file.
1 /*
2  * See header file for a description of this class.
3  *
4  * \author M. Maggi -- INFN Bari
5  */
9 
13 
15 
17 
18 // Build all hits in the range associated to the layerId, at the 1st step.
20  const GEMDetId& gemId,
21  const GEMDigiCollection::Range& digiRange,
22  const EtaPartitionMask& mask) {
24 
25  GEMClusterizer clizer;
26  GEMClusterContainer tcls = clizer.doAction(digiRange, mask);
27  GEMMaskReClusterizer mrclizer;
28  GEMClusterContainer cls = mrclizer.doAction(gemId, tcls, mask);
29 
30  for (GEMClusterContainer::const_iterator cl = cls.begin(); cl != cls.end(); cl++) {
31  LocalError tmpErr;
33  // Call the compute method
34  bool OK = this->compute(roll, *cl, point, tmpErr);
35  if (!OK)
36  continue;
37 
38  // Build a new pair of 1D rechit
39  int firstClustStrip = cl->firstStrip();
40  int clusterSize = cl->clusterSize();
41  GEMRecHit* recHit = new GEMRecHit(gemId, cl->bx(), firstClustStrip, clusterSize, point, tmpErr);
42 
43  result.push_back(recHit);
44  }
45  return result;
46 }
GEMClusterizer.h
GEMRecHitBaseAlgo::compute
virtual bool compute(const GEMEtaPartition &roll, const GEMCluster &cl, LocalPoint &Point, LocalError &error) const =0
standard local recHit computation
GEMEtaPartition
Definition: GEMEtaPartition.h:12
GEMRecHitBaseAlgo::~GEMRecHitBaseAlgo
virtual ~GEMRecHitBaseAlgo()
Destructor.
Definition: GEMRecHitBaseAlgo.cc:16
reco::OK
std::pair< int, edm::FunctionWithDict > OK
Definition: findMethod.cc:126
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
GetRecoTauVFromDQM_MC_cff.cl
cl
Definition: GetRecoTauVFromDQM_MC_cff.py:38
config
Definition: config.py:1
GEMEtaPartition.h
GEMClusterContainer
std::set< GEMCluster > GEMClusterContainer
Definition: GEMClusterContainer.h:5
GEMRecHitBaseAlgo::reconstruct
virtual edm::OwnVector< GEMRecHit > reconstruct(const GEMEtaPartition &roll, const GEMDetId &gemId, const GEMDigiCollection::Range &digiRange, const EtaPartitionMask &mask)
Build all hits in the range associated to the gemId, at the 1st step.
Definition: GEMRecHitBaseAlgo.cc:19
Point3DBase< float, LocalTag >
GEMRecHitBaseAlgo.h
GEMClusterizer
Definition: GEMClusterizer.h:12
GEMMaskReClusterizer.h
GEMMaskReClusterizer::doAction
GEMClusterContainer doAction(const GEMDetId &id, GEMClusterContainer &initClusters, const EtaPartitionMask &mask) const
Definition: GEMMaskReClusterizer.cc:7
edm::ParameterSet
Definition: ParameterSet.h:36
EtaPartitionMask
std::bitset< maskSIZE > EtaPartitionMask
Definition: GEMEtaPartitionMask.h:8
LocalError
Definition: LocalError.h:12
GEMDetId
Definition: GEMDetId.h:17
GEMClusterizer::doAction
GEMClusterContainer doAction(const GEMDigiCollection::Range &digiRange, const EtaPartitionMask &mask)
Definition: GEMClusterizer.cc:3
GEMMaskReClusterizer
Definition: GEMMaskReClusterizer.h:11
GEMRecHitBaseAlgo::GEMRecHitBaseAlgo
GEMRecHitBaseAlgo(const edm::ParameterSet &config)
Constructor.
Definition: GEMRecHitBaseAlgo.cc:14
MuonDigiCollection::Range
std::pair< const_iterator, const_iterator > Range
Definition: MuonDigiCollection.h:95
GEMRecHit
Definition: GEMRecHit.h:14
GEMDigiCollection.h
mps_fire.result
result
Definition: mps_fire.py:303
ParameterSet.h
point
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
edm::OwnVector
Definition: OwnVector.h:24