CMS 3D CMS Logo

RPCRecHitBaseAlgo.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  */
6 
12 
14  // theSync = RPCTTrigSyncFactory::get()->create(config.getParameter<string>("tTrigMode"),
15  //config.getParameter<ParameterSet>("tTrigModeConfig"));
16 }
17 
18 // Build all hits in the range associated to the layerId, at the 1st step.
20  const RPCDetId& rpcId,
21  const RPCDigiCollection::Range& digiRange,
22  const RollMask& mask) {
24 
25  RPCClusterizer clizer;
26  RPCClusterContainer tcls = clizer.doAction(digiRange);
27  RPCMaskReClusterizer mrclizer;
28  RPCClusterContainer cls = mrclizer.doAction(rpcId,tcls,mask);
29 
30  for ( auto cl : cls ) {
31  LocalError tmpErr;
33  float time = 0, timeErr = -1;
34 
35  // Call the compute method
36  const bool OK = this->compute(roll, cl, point, tmpErr, time, timeErr);
37  if (!OK) continue;
38 
39  // Build a new pair of 1D rechit
40  const int firstClustStrip = cl.firstStrip();
41  const int clusterSize = cl.clusterSize();
42  RPCRecHit* recHit = new RPCRecHit(rpcId,cl.bx(),firstClustStrip,clusterSize,point,tmpErr);
43  if ( timeErr >= 0 ) recHit->setTimeAndError(time, timeErr);
44 
45  result.push_back(recHit);
46  }
47 
48  return result;
49 }
Definition: config.py:1
RPCClusterContainer doAction(const RPCDigiCollection::Range &digiRange)
void push_back(D *&d)
Definition: OwnVector.h:290
std::bitset< maskSIZE > RollMask
Definition: RPCRollMask.h:7
RPCRecHitBaseAlgo(const edm::ParameterSet &config)
Constructor.
void setTimeAndError(float time, float err)
Set the time and its error.
Definition: RPCRecHit.h:96
std::pair< int, edm::FunctionWithDict > OK
Definition: findMethod.cc:136
RPCClusterContainer doAction(const RPCDetId &id, RPCClusterContainer &initClusters, const RollMask &mask) const
std::pair< const_iterator, const_iterator > Range
virtual edm::OwnVector< RPCRecHit > reconstruct(const RPCRoll &roll, const RPCDetId &rpcId, const RPCDigiCollection::Range &digiRange, const RollMask &mask)
Build all hits in the range associated to the rpcId, at the 1st step.
virtual bool compute(const RPCRoll &roll, const RPCCluster &cl, LocalPoint &Point, LocalError &error, float &time, float &timeErr) const =0
standard local recHit computation
std::set< RPCCluster > RPCClusterContainer
*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