CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions
RPCRecHitBaseAlgo Class Referenceabstract

#include <RPCRecHitBaseAlgo.h>

Inheritance diagram for RPCRecHitBaseAlgo:
RPCRecHitStandardAlgo

Public Member Functions

virtual bool compute (const RPCRoll &roll, const RPCCluster &cl, LocalPoint &Point, LocalError &error, float &time, float &timeErr) const =0
 standard local recHit computation More...
 
virtual bool compute (const RPCRoll &roll, const RPCCluster &cl, const float &angle, const GlobalPoint &globPos, LocalPoint &Point, LocalError &error, float &time, float &timeErr) const =0
 
virtual edm::OwnVector< RPCRecHitreconstruct (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. More...
 
 RPCRecHitBaseAlgo (const edm::ParameterSet &config)
 Constructor. More...
 
virtual void setES (const edm::EventSetup &setup)=0
 Pass the Event Setup to the algo at each event. More...
 
virtual ~RPCRecHitBaseAlgo ()
 Destructor. More...
 

Detailed Description

Abstract algorithmic class to compute Rec Hit form a RPC digi

Author
M. Maggi – INFN Bari

Definition at line 29 of file RPCRecHitBaseAlgo.h.

Constructor & Destructor Documentation

RPCRecHitBaseAlgo::RPCRecHitBaseAlgo ( const edm::ParameterSet config)

Constructor.

Definition at line 13 of file RPCRecHitBaseAlgo.cc.

13  {
14  // theSync = RPCTTrigSyncFactory::get()->create(config.getParameter<string>("tTrigMode"),
15  //config.getParameter<ParameterSet>("tTrigModeConfig"));
16 }
virtual RPCRecHitBaseAlgo::~RPCRecHitBaseAlgo ( )
inlinevirtual

Destructor.

Definition at line 35 of file RPCRecHitBaseAlgo.h.

35 {};

Member Function Documentation

virtual bool RPCRecHitBaseAlgo::compute ( const RPCRoll roll,
const RPCCluster cl,
LocalPoint Point,
LocalError error,
float &  time,
float &  timeErr 
) const
pure virtual

standard local recHit computation

Implemented in RPCRecHitStandardAlgo.

Referenced by reconstruct().

virtual bool RPCRecHitBaseAlgo::compute ( const RPCRoll roll,
const RPCCluster cl,
const float &  angle,
const GlobalPoint globPos,
LocalPoint Point,
LocalError error,
float &  time,
float &  timeErr 
) const
pure virtual

local recHit computation accounting for track direction and absolute position

Implemented in RPCRecHitStandardAlgo.

edm::OwnVector< RPCRecHit > RPCRecHitBaseAlgo::reconstruct ( const RPCRoll roll,
const RPCDetId rpcId,
const RPCDigiCollection::Range digiRange,
const RollMask mask 
)
virtual

Build all hits in the range associated to the rpcId, at the 1st step.

Definition at line 19 of file RPCRecHitBaseAlgo.cc.

References haddnano::cl, compute(), RPCClusterizer::doAction(), RPCMaskReClusterizer::doAction(), point, edm::OwnVector< T, P >::push_back(), mps_fire::result, and RPCRecHit::setTimeAndError().

22  {
24 
25  RPCClusterizer clizer;
26  RPCClusterContainer tcls = clizer.doAction(digiRange);
27  RPCMaskReClusterizer mrclizer;
28  RPCClusterContainer cls = mrclizer.doAction(rpcId, tcls, mask);
29 
30  for (const 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)
38  continue;
39 
40  // Build a new pair of 1D rechit
41  const int firstClustStrip = cl.firstStrip();
42  const int clusterSize = cl.clusterSize();
43  RPCRecHit* recHit = new RPCRecHit(rpcId, cl.bx(), firstClustStrip, clusterSize, point, tmpErr);
44  recHit->setTimeAndError(time, timeErr);
45 
46  result.push_back(recHit);
47  }
48 
49  return result;
50 }
RPCClusterContainer doAction(const RPCDigiCollection::Range &digiRange)
tuple cl
Definition: haddnano.py:49
tuple result
Definition: mps_fire.py:311
void push_back(D *&d)
Definition: OwnVector.h:326
virtual bool compute(const RPCRoll &roll, const RPCCluster &cl, LocalPoint &Point, LocalError &error, float &time, float &timeErr) const =0
standard local recHit computation
void setTimeAndError(float time, float err)
Set the time and its error.
Definition: RPCRecHit.h:65
std::pair< int, edm::FunctionWithDict > OK
Definition: findMethod.cc:126
RPCClusterContainer doAction(const RPCDetId &id, RPCClusterContainer &initClusters, const RollMask &mask) const
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
virtual void RPCRecHitBaseAlgo::setES ( const edm::EventSetup setup)
pure virtual

Pass the Event Setup to the algo at each event.

Implemented in RPCRecHitStandardAlgo.