CMS 3D CMS Logo

GEMClusterProcessor.h
Go to the documentation of this file.
1 #ifndef L1Trigger_CSCTriggerPrimitives_GEMClusterProcessor_h
2 #define L1Trigger_CSCTriggerPrimitives_GEMClusterProcessor_h
3 
16 
17 #include <vector>
18 
20 public:
22  GEMClusterProcessor(int region, unsigned station, unsigned chamber, const edm::ParameterSet& conf);
23 
25  void clear();
26 
28  void run(const GEMPadDigiClusterCollection*);
29 
30  /* Returns clusters around deltaBX for a given BX
31  The parameter option determines which clusters should be returned
32  1: single and coincidence, 2: only coincidence, 3: only single
33  */
35  std::vector<GEMInternalCluster> getClusters(int bx, ClusterTypes option = AllClusters) const;
36 
38  std::vector<GEMCoPadDigi> readoutCoPads() const;
39 
41 
43 
45 
46 private:
47  // put coincidence clusters in GEMInternalCluster vector
49 
50  // put single clusters in GEMInternalCluster vector who are not
51  // part of any coincidence cluster
53 
54  // translate the cluster central pad numbers into 1/8-strip number,
55  // and roll numbers into min and max wiregroup numbers
56  // for matching with CSC trigger primitives
58 
59  // Chamber id (trigger-type labels)
60  const int region_;
61  const int station_;
62  const int chamber_;
63  bool isEven_;
64 
65  unsigned int tmbL1aWindowSize_;
66  unsigned int delayGEMinOTMB_;
67  unsigned int maxDeltaPad_;
68  unsigned int maxDeltaBX_;
69  unsigned int maxDeltaRoll_;
70 
72 
73  // output collection
74  std::vector<GEMInternalCluster> clusters_;
75 
78 };
79 
80 #endif
std::vector< GEMInternalCluster > clusters_
void run(const GEMPadDigiClusterCollection *)
std::vector< GEMInternalCluster > getClusters(int bx, ClusterTypes option=AllClusters) const
unsigned int tmbL1aWindowSize_
void addSingleClusters(const GEMPadDigiClusterCollection *)
std::vector< GEMCoPadDigi > readoutCoPads() const
const CSCL1TPLookupTableME21ILT * lookupTableME21ILT_
void setESLookupTables(const CSCL1TPLookupTableME11ILT *conf)
void addCoincidenceClusters(const GEMPadDigiClusterCollection *)
bool hasGE21Geometry16Partitions() const
GEMClusterProcessor(int region, unsigned station, unsigned chamber, const edm::ParameterSet &conf)
unsigned int delayGEMinOTMB_
const CSCL1TPLookupTableME11ILT * lookupTableME11ILT_