CMS 3D CMS Logo

List of all members | Public Member Functions
GEMRecHitBaseAlgo Class Referenceabstract

#include <GEMRecHitBaseAlgo.h>

Inheritance diagram for GEMRecHitBaseAlgo:
GEMRecHitStandardAlgo

Public Member Functions

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

Detailed Description

Abstract algorithmic class to compute Rec Hit form a GEM digi

Author
M. Maggi – INFN Bari

Definition at line 30 of file GEMRecHitBaseAlgo.h.

Constructor & Destructor Documentation

◆ GEMRecHitBaseAlgo()

GEMRecHitBaseAlgo::GEMRecHitBaseAlgo ( const edm::ParameterSet config)

Constructor.

Definition at line 14 of file GEMRecHitBaseAlgo.cc.

14 {}

◆ ~GEMRecHitBaseAlgo()

GEMRecHitBaseAlgo::~GEMRecHitBaseAlgo ( )
virtual

Destructor.

Definition at line 16 of file GEMRecHitBaseAlgo.cc.

16 {}

Member Function Documentation

◆ compute() [1/2]

virtual bool GEMRecHitBaseAlgo::compute ( const GEMEtaPartition roll,
const GEMCluster cl,
LocalPoint Point,
LocalError error 
) const
pure virtual

standard local recHit computation

Implemented in GEMRecHitStandardAlgo.

Referenced by reconstruct().

◆ compute() [2/2]

virtual bool GEMRecHitBaseAlgo::compute ( const GEMEtaPartition roll,
const GEMCluster cl,
const float &  angle,
const GlobalPoint globPos,
LocalPoint Point,
LocalError error 
) const
pure virtual

local recHit computation accounting for track direction and absolute position

Implemented in GEMRecHitStandardAlgo.

◆ reconstruct()

edm::OwnVector< GEMRecHit > GEMRecHitBaseAlgo::reconstruct ( const GEMEtaPartition roll,
const GEMDetId gemId,
const GEMDigiCollection::Range digiRange,
const EtaPartitionMask mask 
)
virtual

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

Definition at line 19 of file GEMRecHitBaseAlgo.cc.

References haddnano::cl, compute(), GEMMaskReClusterizer::doAction(), GEMClusterizer::doAction(), gpuClustering::pixelStatus::mask, point, rpcPointValidation_cfi::recHit, and mps_fire::result.

22  {
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 }
virtual bool compute(const GEMEtaPartition &roll, const GEMCluster &cl, LocalPoint &Point, LocalError &error) const =0
standard local recHit computation
std::set< GEMCluster > GEMClusterContainer
constexpr uint32_t mask
Definition: gpuClustering.h:26
GEMClusterContainer doAction(const GEMDetId &id, GEMClusterContainer &initClusters, const EtaPartitionMask &mask) const
std::pair< int, edm::FunctionWithDict > OK
Definition: findMethod.cc:126
GEMClusterContainer doAction(const GEMDigiCollection::Range &digiRange, const EtaPartitionMask &mask)
*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 GEMRecHitBaseAlgo::setES ( const edm::EventSetup setup)
pure virtual

Pass the Event Setup to the algo at each event.

Implemented in GEMRecHitStandardAlgo.