19 |
|
|
20 |
|
AnaMuonDistribution::AnaMuonDistribution(const edm::ParameterSet& cfg) |
21 |
|
: ptMin( cfg.getParameter<double>("ptMin") ), |
22 |
+ |
etaMax (cfg.getParameter<double>("etaMax") ), |
23 |
|
minNumberOfMatchedStations( cfg.getParameter<unsigned int>("minNumberOfMatchedStations") ), |
24 |
|
minNumberRpcHits( cfg.getParameter<uint>("minNumberRpcHits") ), |
25 |
< |
minNumberDtCscHits( cfg.getParameter<unsigned int>("minNumberDtCscHits") ) |
25 |
> |
minNumberDtCscHits( cfg.getParameter<unsigned int>("minNumberDtCscHits") ), |
26 |
> |
requireUnique (cfg.getParameter<bool>("requireUnique")) |
27 |
|
{ } |
28 |
|
|
29 |
|
void AnaMuonDistribution::init(TObjArray& histos) |
40 |
|
|
41 |
|
bool AnaMuonDistribution::filter(const MuonObj *muon) |
42 |
|
{ |
43 |
+ |
// std::cout << *muon << std::endl; |
44 |
+ |
if (requireUnique && !muon->isUnique) return false; |
45 |
|
if (muon->pt() < ptMin) return false; |
46 |
+ |
if (muon->pt() < 0.001) return false; // no muon case with ptMin set to 0. |
47 |
+ |
if (fabs(muon->eta()) > etaMax) return false; |
48 |
|
if (muon->nMatchedStations < minNumberOfMatchedStations) return false; |
49 |
|
if (muon->nRPCHits < minNumberRpcHits) return false; |
50 |
|
if (muon->nDTHits + muon->nCSCHits < minNumberDtCscHits) return false; |