CMS 3D CMS Logo

GEMCSCSegAlgoRR.h
Go to the documentation of this file.
1 #ifndef GEMRecHit_GEMCSCSegAlgoRR_h
2 #define GEMRecHit_GEMCSCSegAlgoRR_h
3 
19 
20 #include <deque>
21 #include <vector>
22 
23 class GEMCSCSegFit;
24 
26 public:
28  explicit GEMCSCSegAlgoRR(const edm::ParameterSet& ps);
29 
31  ~GEMCSCSegAlgoRR() override;
32 
36  std::vector<GEMCSCSegment> run(const std::map<uint32_t, const CSCLayer*>& csclayermap,
37  const std::map<uint32_t, const GEMEtaPartition*>& gemrollmap,
38  const std::vector<const CSCSegment*>& cscsegments,
39  const std::vector<const GEMRecHit*>& gemrechits) override;
40 
41 private:
43 
46  std::vector<const TrackingRecHit*> chainHitsToSegm(const CSCSegment* cscsegment,
47  const std::vector<const GEMRecHit*>& gemrechits);
48 
52  std::vector<GEMCSCSegment> buildSegments(const CSCSegment* cscsegment,
53  const std::vector<const TrackingRecHit*>& rechits);
54 
56  bool debug;
57  unsigned int minHitsPerSegment;
59  double dXclusBoxMax;
60  double dYclusBoxMax;
64  double dRChainBoxMax;
66 
68  const std::string myName; // name of the algorithm, here: GEMCSCSegAlgoRR
69 
70  std::map<uint32_t, const CSCLayer*> theCSCLayers_;
71  std::map<uint32_t, const GEMEtaPartition*> theGEMEtaParts_;
73 };
74 
75 #endif
GEMCSCSegAlgoRR::maxRecHitsInCluster
int maxRecHitsInCluster
Definition: GEMCSCSegAlgoRR.h:65
GEMCSCSegFit
Definition: GEMCSCSegFit.h:47
GEMCSCSegAlgoRR::minHitsPerSegment
unsigned int minHitsPerSegment
Definition: GEMCSCSegAlgoRR.h:57
GEMCSCSegAlgoRR::~GEMCSCSegAlgoRR
~GEMCSCSegAlgoRR() override
Destructor.
Definition: GEMCSCSegAlgoRR.cc:47
GEMRecHit.h
GEMCSCSegAlgoRR::dRChainBoxMax
double dRChainBoxMax
Definition: GEMCSCSegAlgoRR.h:64
GEMCSCSegAlgoRR::run
std::vector< GEMCSCSegment > run(const std::map< uint32_t, const CSCLayer * > &csclayermap, const std::map< uint32_t, const GEMEtaPartition * > &gemrollmap, const std::vector< const CSCSegment * > &cscsegments, const std::vector< const GEMRecHit * > &gemrechits) override
Definition: GEMCSCSegAlgoRR.cc:52
GEMCSCSegAlgoRR::preClustering
bool preClustering
Definition: GEMCSCSegAlgoRR.h:58
GEMCSCSegAlgoRR::preClustering_useChaining
bool preClustering_useChaining
Definition: GEMCSCSegAlgoRR.h:61
GEMCSCSegAlgoRR::dThetaChainBoxMax
double dThetaChainBoxMax
Definition: GEMCSCSegAlgoRR.h:63
GEMCSCSegAlgoRR::dPhiChainBoxMax
double dPhiChainBoxMax
Definition: GEMCSCSegAlgoRR.h:62
GEMCSCSegAlgoRR::dXclusBoxMax
double dXclusBoxMax
Definition: GEMCSCSegAlgoRR.h:59
CSCSegment
Definition: CSCSegment.h:21
GEMCSCSegAlgoRR
Definition: GEMCSCSegAlgoRR.h:25
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::ParameterSet
Definition: ParameterSet.h:36
GEMCSCSegmentAlgorithm.h
GEMCSCSegAlgoRR::buildSegments
std::vector< GEMCSCSegment > buildSegments(const CSCSegment *cscsegment, const std::vector< const TrackingRecHit * > &rechits)
Definition: GEMCSCSegAlgoRR.cc:279
GEMCSCSegAlgoRR::theCSCLayers_
std::map< uint32_t, const CSCLayer * > theCSCLayers_
Definition: GEMCSCSegAlgoRR.h:70
TrackInfoProducer_cfi.rechits
rechits
Definition: TrackInfoProducer_cfi.py:9
GEMCSCSegAlgoRR::debug
bool debug
Configuration parameters.
Definition: GEMCSCSegAlgoRR.h:56
GEMCSCSegmentAlgorithm
Definition: GEMCSCSegmentAlgorithm.h:27
GEMCSCSegAlgoRR::theGEMEtaParts_
std::map< uint32_t, const GEMEtaPartition * > theGEMEtaParts_
Definition: GEMCSCSegAlgoRR.h:71
GEMCSCSegAlgoRR::dYclusBoxMax
double dYclusBoxMax
Definition: GEMCSCSegAlgoRR.h:60
CSCSegment.h
GEMCSCSegAlgoRR::GEMCSCSegAlgoRR
GEMCSCSegAlgoRR(const edm::ParameterSet &ps)
Constructor.
Definition: GEMCSCSegAlgoRR.cc:30
GEMCSCSegAlgoRR::chainHitsToSegm
std::vector< const TrackingRecHit * > chainHitsToSegm(const CSCSegment *cscsegment, const std::vector< const GEMRecHit * > &gemrechits)
Utility functions.
Definition: GEMCSCSegAlgoRR.cc:154
GEMCSCSegAlgoRR::myName
const std::string myName
Member variables.
Definition: GEMCSCSegAlgoRR.h:68
GEMCSCSegAlgoRR::sfit_
GEMCSCSegFit * sfit_
Definition: GEMCSCSegAlgoRR.h:72