CMS 3D CMS Logo

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::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 }

◆ ~RPCRecHitBaseAlgo()

virtual RPCRecHitBaseAlgo::~RPCRecHitBaseAlgo ( )
inlinevirtual

Destructor.

Definition at line 35 of file RPCRecHitBaseAlgo.h.

35 {};

Member Function Documentation

◆ compute() [1/2]

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().

◆ compute() [2/2]

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.

◆ reconstruct()

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(), gpuClustering::pixelStatus::mask, point, rpcPointValidation_cfi::recHit, mps_fire::result, and protons_cff::time.

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)
constexpr uint32_t mask
Definition: gpuClustering.h:24
RPCClusterContainer doAction(const RPCDetId &id, RPCClusterContainer &initClusters, const RollMask &mask) const
virtual bool compute(const RPCRoll &roll, const RPCCluster &cl, LocalPoint &Point, LocalError &error, float &time, float &timeErr) const =0
standard local recHit computation
std::pair< int, edm::FunctionWithDict > OK
Definition: findMethod.cc:126
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

◆ setES()

virtual void RPCRecHitBaseAlgo::setES ( const edm::EventSetup setup)
pure virtual

Pass the Event Setup to the algo at each event.

Implemented in RPCRecHitStandardAlgo.