CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
GEMTrackMatch Class Referenceabstract

#include <GEMTrackMatch.h>

Inheritance diagram for GEMTrackMatch:
DQMEDAnalyzer edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase GEMDigiTrackMatch GEMRecHitTrackMatch GEMSimTrackMatch

Public Member Functions

virtual void analyze (const edm::Event &e, const edm::EventSetup &)=0
 
void buildLUT (const int maxChamberId)
 
void FillWithTrigger (MonitorElement *me[3], Float_t eta)
 
void FillWithTrigger (MonitorElement *me[3][3], Float_t eta, Float_t phi, bool odd[3], bool even[3])
 
void FillWithTrigger (MonitorElement *me[4][3], bool array[3][2], Float_t value)
 
void FillWithTrigger (MonitorElement *me[4][3][3], bool array[3][2], Float_t eta, Float_t phi, bool odd[3], bool even[3])
 
 GEMTrackMatch (const edm::ParameterSet &cfg)
 
std::pair< int, int > getClosestChambers (const int maxChamberId, int region, float phi)
 
std::pair< double, double > getEtaRange (int station, int chamber)
 
std::pair< double, double > getEtaRangeForPhi (int station)
 
bool isSimTrackGood (const SimTrack &)
 
void setGeometry (const GEMGeometry &geom)
 
virtual ~GEMTrackMatch ()
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
virtual void bookHistograms (DQMStore::IBooker &i, edm::Run const &, edm::EventSetup const &)=0
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer (void)
 
virtual void endLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
virtual void endRunSummary (edm::Run const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
uint32_t streamId () const
 
- Public Member Functions inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
 EDAnalyzer ()=default
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Protected Attributes

edm::ParameterSet cfg_
 
float chamberHeight_
 
bool detailPlot_
 
std::vector< double > etaRangeForPhi
 
const GEMGeometrygem_geom_
 
float maxEta_
 
float minEta_
 
float minPt_
 
std::pair< std::vector< float >, std::vector< int > > negativeLUT_
 
unsigned int nstation
 
std::pair< std::vector< float >, std::vector< int > > positiveLUT_
 
float radiusCenter_
 
edm::EDGetToken simHitsToken_
 
edm::EDGetToken simTracksToken_
 
edm::EDGetToken simVerticesToken_
 
int useRoll_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr< dqmDetails::NoCacheglobalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr< dqmDetails::NoCacheglobalBeginRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *)
 
static void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *, dqmDetails::NoCache *)
 
static void globalEndRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *, dqmDetails::NoCache *)
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 42 of file GEMTrackMatch.h.

Constructor & Destructor Documentation

GEMTrackMatch::GEMTrackMatch ( const edm::ParameterSet cfg)
explicit

Definition at line 6 of file GEMTrackMatch.cc.

References edm::ParameterSet::getUntrackedParameter(), maxEta_, minEta_, and minPt_.

7 {
8  minPt_ = ps.getUntrackedParameter<double>("gemMinPt",5.0);
9  minEta_ = ps.getUntrackedParameter<double>("gemMinEta",1.55);
10  maxEta_ = ps.getUntrackedParameter<double>("gemMaxEta",2.45);
11 }
GEMTrackMatch::~GEMTrackMatch ( )
virtual

Definition at line 14 of file GEMTrackMatch.cc.

14  {
15 }

Member Function Documentation

virtual void GEMTrackMatch::analyze ( const edm::Event e,
const edm::EventSetup  
)
pure virtual
void GEMTrackMatch::buildLUT ( const int  maxChamberId)

Definition at line 140 of file GEMTrackMatch.cc.

References mps_fire::i, negativeLUT_, positiveLUT_, and useRoll_.

Referenced by setGeometry().

141 {
142 
143  edm::LogInfo("GEMTrackMatch")<<"max chamber "<<maxChamberId<<"\n";
144 
145  std::vector<int> pos_ids;
146  pos_ids.push_back(GEMDetId(1,1,1,1,maxChamberId,useRoll_).rawId());
147 
148  std::vector<int> neg_ids;
149  neg_ids.push_back(GEMDetId(-1,1,1,1,maxChamberId,useRoll_).rawId());
150 
151  // VK: I would really suggest getting phis from GEMGeometry
152 
153  std::vector<float> phis;
154  phis.push_back(0.);
155  for(int i=1; i<maxChamberId+1; ++i)
156  {
157  pos_ids.push_back(GEMDetId(1,1,1,1,i,useRoll_).rawId());
158  neg_ids.push_back(GEMDetId(-1,1,1,1,i,useRoll_).rawId());
159  phis.push_back(i*10.);
160  }
161  positiveLUT_ = std::make_pair(phis,pos_ids);
162  negativeLUT_ = std::make_pair(phis,neg_ids);
163 }
std::pair< std::vector< float >, std::vector< int > > negativeLUT_
Definition: GEMTrackMatch.h:69
std::pair< std::vector< float >, std::vector< int > > positiveLUT_
Definition: GEMTrackMatch.h:68
void GEMTrackMatch::FillWithTrigger ( MonitorElement me[3],
Float_t  eta 
)

Definition at line 17 of file GEMTrackMatch.cc.

References MonitorElement::Fill(), mps_fire::i, and nstation.

Referenced by GEMSimTrackMatch::analyze(), GEMDigiTrackMatch::analyze(), and GEMRecHitTrackMatch::analyze().

18 {
19  for( unsigned int i=0 ; i<nstation ; i++) {
20  hist[i]->Fill(eta);
21  }
22  return;
23 }
unsigned int nstation
Definition: GEMTrackMatch.h:80
void GEMTrackMatch::FillWithTrigger ( MonitorElement me[3][3],
Float_t  eta,
Float_t  phi,
bool  odd[3],
bool  even[3] 
)

Definition at line 25 of file GEMTrackMatch.cc.

References MonitorElement::Fill(), plotBeamSpotDB::first, getEtaRange(), mps_fire::i, nstation, edm::second(), and relativeConstraints::station.

26 {
27  for( unsigned int i=0 ; i<nstation ; i++) {
28  int station = i+1;
29  if ( odd[i] && eta > getEtaRange(station,1).first&& eta < getEtaRange(station,1).second ) {
30  hist[i][0]->Fill(phi);
31  if( hist[i][1] != nullptr) hist[i][1]->Fill(phi);
32  }
33  if ( even[i] && eta > getEtaRange(station,2).first&& eta < getEtaRange(station,2).second ) {
34  hist[i][0]->Fill(phi);
35  if( hist[i][2] != nullptr) hist[i][2]->Fill(phi);
36  }
37  }
38  return;
39 }
unsigned int nstation
Definition: GEMTrackMatch.h:80
U second(std::pair< T, U > const &p)
std::pair< double, double > getEtaRange(int station, int chamber)
void GEMTrackMatch::FillWithTrigger ( MonitorElement me[4][3],
bool  array[3][2],
Float_t  value 
)

Definition at line 41 of file GEMTrackMatch.cc.

References MonitorElement::Fill(), mps_fire::i, and nstation.

42 {
43  for( unsigned int i=0 ; i<nstation ; i++) {
44  if ( array[i][0] ) hist[0][i]->Fill(value);
45  if ( array[i][1] ) hist[1][i]->Fill(value);
46  if ( array[i][0] || array[i][1] ) hist[2][i]->Fill(value);
47  if ( array[i][0] && array[i][1] ) hist[3][i]->Fill(value);
48  }
49  return;
50 }
unsigned int nstation
Definition: GEMTrackMatch.h:80
Definition: value.py:1
void GEMTrackMatch::FillWithTrigger ( MonitorElement me[4][3][3],
bool  array[3][2],
Float_t  eta,
Float_t  phi,
bool  odd[3],
bool  even[3] 
)

Definition at line 52 of file GEMTrackMatch.cc.

References MonitorElement::Fill(), plotBeamSpotDB::first, getEtaRange(), mps_fire::i, nstation, edm::second(), and relativeConstraints::station.

53 {
54  for( unsigned int i=0 ; i<nstation ; i++) {
55  int station = i+1;
56  if ( odd[i] && eta > getEtaRange(station,1).first&& eta < getEtaRange(station,1).second ) {
57  if ( array[i][0] ) {
58  hist[0][i][0]->Fill(phi);
59  if ( hist[0][i][1] != nullptr) hist[0][i][1]->Fill(phi);
60  }
61  if ( array[i][1] ) {
62  hist[1][i][0]->Fill(phi);
63  if( hist[1][i][1] != nullptr ) hist[1][i][1]->Fill(phi);
64  }
65  if ( array[i][0] || array[i][1] ) {
66  hist[2][i][0]->Fill(phi);
67  if ( hist[2][i][1] != nullptr) hist[2][i][1]->Fill(phi);
68  }
69  if ( array[i][0] && array[i][1] ) {
70  hist[3][i][0]->Fill(phi);
71  if ( hist[3][i][1] != nullptr) hist[3][i][1]->Fill(phi);
72  }
73  }
74  if ( even[i] && eta > getEtaRange(station,2).first&& eta < getEtaRange(station,2).second ) {
75  if ( array[i][0] ) {
76  hist[0][i][0]->Fill(phi);
77  if ( hist[0][i][2]!=nullptr) hist[0][i][2]->Fill(phi);
78  }
79  if ( array[i][1] ) {
80  hist[1][i][0]->Fill(phi);
81  if( hist[1][i][2]!=nullptr ) hist[1][i][2]->Fill(phi);
82  }
83  if ( array[i][0] || array[i][1] ) {
84  hist[2][i][0]->Fill(phi);
85  if( hist[2][i][2]!=nullptr) hist[2][i][2]->Fill(phi);
86  }
87  if ( array[i][0] && array[i][1] ) {
88  hist[3][i][0]->Fill(phi);
89  if( hist[3][i][2]!=nullptr) hist[3][i][2]->Fill(phi);
90  }
91  }
92  }
93  return;
94 }
unsigned int nstation
Definition: GEMTrackMatch.h:80
U second(std::pair< T, U > const &p)
std::pair< double, double > getEtaRange(int station, int chamber)
std::pair< int, int > GEMTrackMatch::getClosestChambers ( const int  maxChamberId,
int  region,
float  phi 
)

Definition at line 194 of file GEMTrackMatch.cc.

References negativeLUT_, phi, positiveLUT_, and pileupCalc::upper.

195 {
196  auto& phis(positiveLUT_.first);
197  auto upper = std::upper_bound(phis.begin(), phis.end(), phi);
198  auto& LUT = (region == 1 ? positiveLUT_.second : negativeLUT_.second);
199  return std::make_pair(LUT.at(upper - phis.begin()), (LUT.at((upper - phis.begin() + 1)%maxChamberId)));
200 }
std::pair< std::vector< float >, std::vector< int > > negativeLUT_
Definition: GEMTrackMatch.h:69
std::pair< std::vector< float >, std::vector< int > > positiveLUT_
Definition: GEMTrackMatch.h:68
std::vector< unsigned short int > LUT
Definition: DTTracoLUTs.h:32
std::pair< double, double > GEMTrackMatch::getEtaRange ( int  station,
int  chamber 
)

Definition at line 96 of file GEMTrackMatch.cc.

References gather_cfg::cout, gem_geom_, and GEMGeometry::regions().

Referenced by FillWithTrigger().

97 {
98  if( gem_geom_ != nullptr) {
99  auto& ch = gem_geom_->regions()[0]->stations()[station-1]->rings()[0]->superChambers()[chamber-1]->chambers()[0];
100  auto& roll1 = ch->etaPartitions()[0]; //.begin();
101  auto& roll2 = ch->etaPartitions()[ch->nEtaPartitions()-1];
102  const BoundPlane& bSurface1(roll1->surface());
103  const BoundPlane& bSurface2(roll2->surface());
104  auto& parameters1( roll1->specs()->parameters());
105  float height1(parameters1[2]);
106  auto& parameters2( roll2->specs()->parameters());
107  float height2(parameters2[2]);
108  LocalPoint lTop1( 0., height1, 0.);
109  GlobalPoint gTop1(bSurface1.toGlobal(lTop1));
110  //LocalPoint lBottom1( 0., -height1, 0.);
111  //GlobalPoint gBottom1(bSurface1.toGlobal(lBottom1));
112  //LocalPoint lTop2( 0., height2, 0.);
113  //GlobalPoint gTop2(bSurface2.toGlobal(lTop2));
114  LocalPoint lBottom2( 0., -height2, 0.);
115  GlobalPoint gBottom2(bSurface2.toGlobal(lBottom2));
116  double eta1 = fabs(gTop1.eta()) - 0.01;
117  double eta2 = fabs(gBottom2.eta()) + 0.01;
118  return std::make_pair(eta1,eta2);
119  }
120  else { std::cout<<"Failed to get geometry information"<<std::endl;
121  return std::make_pair(0,0);
122  }
123 }
const std::vector< const GEMRegion * > & regions() const
Return a vector of all GEM regions.
Definition: GEMGeometry.cc:43
const GEMGeometry * gem_geom_
Definition: GEMTrackMatch.h:79
std::pair< double, double > GEMTrackMatch::getEtaRangeForPhi ( int  station)

Definition at line 202 of file GEMTrackMatch.cc.

References etaRangeForPhi.

203 {
204  std::pair<double, double> range;
205  if( station== 0 ) range = std::make_pair( etaRangeForPhi[0],etaRangeForPhi[1]) ;
206  else if( station== 1 ) range = std::make_pair( etaRangeForPhi[2],etaRangeForPhi[3]) ;
207  else if( station== 2 ) range = std::make_pair( etaRangeForPhi[4],etaRangeForPhi[5]) ;
208 
209  return range;
210 }
std::vector< double > etaRangeForPhi
Definition: GEMTrackMatch.h:71
bool GEMTrackMatch::isSimTrackGood ( const SimTrack t)

Definition at line 126 of file GEMTrackMatch.cc.

References funct::abs(), stringResolutionProvider_cfi::eta, maxEta_, minEta_, minPt_, CoreSimTrack::momentum(), SimTrack::noGenpart(), SimTrack::noVertex(), and CoreSimTrack::type().

Referenced by GEMSimTrackMatch::analyze(), GEMDigiTrackMatch::analyze(), and GEMRecHitTrackMatch::analyze().

127 {
128 
129  // SimTrack selection
130  if (t.noVertex()) return false;
131  if (t.noGenpart()) return false;
132  if (std::abs(t.type()) != 13) return false; // only interested in direct muon simtracks
133  if (t.momentum().pt() < minPt_ ) return false;
134  const float eta(std::abs(t.momentum().eta()));
135  if (eta > maxEta_ || eta < minEta_ ) return false; // no GEMs could be in such eta
136  return true;
137 }
bool noGenpart() const
Definition: SimTrack.h:34
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
bool noVertex() const
Definition: SimTrack.h:30
int type() const
particle type (HEP PDT convension)
Definition: CoreSimTrack.h:25
const math::XYZTLorentzVectorD & momentum() const
Definition: CoreSimTrack.h:22
void GEMTrackMatch::setGeometry ( const GEMGeometry geom)

Definition at line 166 of file GEMTrackMatch.cc.

References buildLUT(), GEMGeometry::chamber(), chamberHeight_, GEMGeometry::etaPartition(), gem_geom_, relativeConstraints::geom, GEMGeometry::idToDetUnit(), GEMChamber::nEtaPartitions(), PV3DBase< T, PVType, FrameType >::perp(), radiusCenter_, GEMGeometry::regions(), GEMEtaPartitionSpecs::specificTopology(), GEMEtaPartition::specs(), StripTopology::stripLength(), and useRoll_.

Referenced by GEMSimTrackMatch::bookHistograms(), GEMDigiTrackMatch::bookHistograms(), and GEMRecHitTrackMatch::bookHistograms().

167 {
168  gem_geom_ = &geom;
169  bool isEvenOK = true;
170  bool isOddOK = true;
171  useRoll_=1;
172  if ( geom.etaPartition( GEMDetId(1,1,1,1,1,1) ) == nullptr) isOddOK = false;
173  if ( geom.etaPartition( GEMDetId(1,1,1,1,2,1) ) == nullptr) isEvenOK = false;
174  if ( !isEvenOK || !isOddOK) useRoll_=2;
175 
176  const auto top_chamber = static_cast<const GEMEtaPartition*>(geom.idToDetUnit(GEMDetId(1,1,1,1,1,useRoll_)));
177  const int nEtaPartitions(geom.chamber(GEMDetId(1,1,1,1,1,useRoll_))->nEtaPartitions());
178  const auto bottom_chamber = static_cast<const GEMEtaPartition*>(geom.idToDetUnit(GEMDetId(1,1,1,1,1,nEtaPartitions)));
179  const float top_half_striplength = top_chamber->specs()->specificTopology().stripLength()/2.;
180  const float bottom_half_striplength = bottom_chamber->specs()->specificTopology().stripLength()/2.;
181  const LocalPoint lp_top(0., top_half_striplength, 0.);
182  const LocalPoint lp_bottom(0., -bottom_half_striplength, 0.);
183  const GlobalPoint gp_top = top_chamber->toGlobal(lp_top);
184  const GlobalPoint gp_bottom = bottom_chamber->toGlobal(lp_bottom);
185 
186  radiusCenter_ = (gp_bottom.perp() + gp_top.perp())/2.;
187  chamberHeight_ = gp_top.perp() - gp_bottom.perp();
188 
189  const int maxChamberId = geom.regions()[0]->stations()[0]->superChambers().size();
190  buildLUT(maxChamberId);
191 }
float radiusCenter_
Definition: GEMTrackMatch.h:77
virtual float stripLength() const =0
T perp() const
Definition: PV3DBase.h:72
void buildLUT(const int maxChamberId)
float chamberHeight_
Definition: GEMTrackMatch.h:77
const GEMEtaPartition * etaPartition(GEMDetId id) const
Return a GEMEtaPartition given its id.
Definition: GEMGeometry.cc:99
const StripTopology & specificTopology() const
virtual const GeomDetUnit * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
Definition: GEMGeometry.cc:33
const std::vector< const GEMRegion * > & regions() const
Return a vector of all GEM regions.
Definition: GEMGeometry.cc:43
const GEMEtaPartitionSpecs * specs() const
const GEMChamber * chamber(GEMDetId id) const
Definition: GEMGeometry.cc:95
const GEMGeometry * gem_geom_
Definition: GEMTrackMatch.h:79
int nEtaPartitions() const
Retunr numbers of eta partitions.
Definition: GEMChamber.cc:43

Member Data Documentation

edm::ParameterSet GEMTrackMatch::cfg_
protected
float GEMTrackMatch::chamberHeight_
protected

Definition at line 77 of file GEMTrackMatch.h.

Referenced by setGeometry().

bool GEMTrackMatch::detailPlot_
protected
std::vector< double > GEMTrackMatch::etaRangeForPhi
protected

Definition at line 71 of file GEMTrackMatch.h.

Referenced by getEtaRangeForPhi().

const GEMGeometry* GEMTrackMatch::gem_geom_
protected

Definition at line 79 of file GEMTrackMatch.h.

Referenced by getEtaRange(), and setGeometry().

float GEMTrackMatch::maxEta_
protected
float GEMTrackMatch::minEta_
protected
float GEMTrackMatch::minPt_
protected

Definition at line 74 of file GEMTrackMatch.h.

Referenced by GEMTrackMatch(), and isSimTrackGood().

std::pair<std::vector<float>,std::vector<int> > GEMTrackMatch::negativeLUT_
protected

Definition at line 69 of file GEMTrackMatch.h.

Referenced by buildLUT(), and getClosestChambers().

unsigned int GEMTrackMatch::nstation
protected
std::pair<std::vector<float>,std::vector<int> > GEMTrackMatch::positiveLUT_
protected

Definition at line 68 of file GEMTrackMatch.h.

Referenced by buildLUT(), and getClosestChambers().

float GEMTrackMatch::radiusCenter_
protected

Definition at line 77 of file GEMTrackMatch.h.

Referenced by setGeometry().

edm::EDGetToken GEMTrackMatch::simHitsToken_
protected
edm::EDGetToken GEMTrackMatch::simTracksToken_
protected
edm::EDGetToken GEMTrackMatch::simVerticesToken_
protected
int GEMTrackMatch::useRoll_
protected

Definition at line 78 of file GEMTrackMatch.h.

Referenced by buildLUT(), and setGeometry().