CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
CSCSkim Class Reference

#include <RecoLocalMuon/CSCSkim/src/CSCSkim.cc>

Inheritance diagram for CSCSkim:
edm::EDFilter edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

virtual void beginJob ()
 
 CSCSkim (const edm::ParameterSet &pset)
 
virtual void endJob ()
 
virtual bool filter (edm::Event &event, const edm::EventSetup &eventSetup) override
 
 ~CSCSkim ()
 
- Public Member Functions inherited from edm::EDFilter
 EDFilter ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDFilter ()
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 ProducerBase ()
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription
const &)> 
registrationCallback () const
 used by the fwk to register list of products More...
 
virtual ~ProducerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (std::string const &iProcessName, std::string const &iModuleLabel, bool iPrint, std::vector< char const * > &oModuleLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Private Member Functions

int chamberSerial (int kE, int kS, int kR, int kCh)
 
bool doBFieldStudySelection (edm::Handle< reco::TrackCollection > saTracks, edm::Handle< reco::TrackCollection > Tracks, edm::Handle< reco::MuonCollection > gMuons)
 
bool doCertainChamberSelection (edm::Handle< CSCWireDigiCollection > wires, edm::Handle< CSCStripDigiCollection > strips)
 
bool doCSCSkimming (edm::Handle< CSCRecHit2DCollection > cscRecHits, edm::Handle< CSCSegmentCollection > cscSegments)
 
bool doDTOverlap (edm::Handle< CSCSegmentCollection > cscSegments)
 
bool doHaloLike (edm::Handle< CSCSegmentCollection > cscSegments)
 
bool doLongSATrack (edm::Handle< reco::TrackCollection > saTracks)
 
bool doMessyEventSkimming (edm::Handle< CSCRecHit2DCollection > cscRecHits, edm::Handle< CSCSegmentCollection > cscSegments)
 
bool doOverlapSkimming (edm::Handle< CSCSegmentCollection > cscSegments)
 

Private Attributes

bool demandChambersBothSides
 
edm::EDGetTokenT
< reco::MuonCollection
glm_token
 
std::string histogramFileName
 
TH1F * hxnHitChambers
 
TH1F * hxnRecHits
 
TH1F * hxnRecHitsSel
 
TH1F * hxnSegments
 
int iEvent
 
int iRun
 
bool isSimulation
 
bool makeHistograms
 
bool makeHistogramsForMessyEvents
 
TH1F * mevnChambers0
 
TH1F * mevnChambers1
 
TH1F * mevnRecHits0
 
TH1F * mevnRecHits1
 
TH1F * mevnSegments0
 
TH1F * mevnSegments1
 
int minimumHitChambers
 
int minimumSegments
 
int nCSCHitsMin
 
int nEventsAnalyzed
 
int nEventsCertainChamber
 
int nEventsChambersBothSides
 
int nEventsDTOverlap
 
int nEventsForBFieldStudies
 
int nEventsHaloLike
 
int nEventsLongSATrack
 
int nEventsMessy
 
int nEventsOverlappingChambers
 
int nEventsSelected
 
int nLayersWithHitsMinimum
 
int nTrHitsMin
 
int nValidHitsMin
 
std::string outputFileName
 
float pMin
 
float redChiSqMax
 
float rExtMax
 
edm::EDGetTokenT
< CSCRecHit2DCollection
rh_token
 
edm::EDGetTokenT
< reco::TrackCollection
sam_token
 
edm::EDGetTokenT
< CSCStripDigiCollection
sdr_token
 
edm::EDGetTokenT
< CSCStripDigiCollection
sds_token
 
edm::EDGetTokenT
< CSCSegmentCollection
seg_token
 
TFile * theHistogramFile
 
edm::EDGetTokenT
< reco::TrackCollection
trk_token
 
int typeOfSkim
 
edm::EDGetTokenT
< CSCWireDigiCollection
wdr_token
 
edm::EDGetTokenT
< CSCWireDigiCollection
wds_token
 
int whichChamber
 
int whichEndcap
 
int whichRing
 
int whichStation
 
TH1F * xxnCSCHits
 
TH1F * xxnTrackerHits
 
TH1F * xxnValidHits
 
TH1F * xxP
 
TH1F * xxredChiSq
 
float zInnerMax
 
float zLengthMin
 
float zLengthTrMin
 

Additional Inherited Members

- Public Types inherited from edm::EDFilter
typedef EDFilter ModuleType
 
- Public Types inherited from edm::ProducerBase
typedef
ProductRegistryHelper::TypeLabelList 
TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDFilter
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- 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

This simple program selects minimal CSC events for output.

Michael Schmitt, Northwestern University, July 2008

Description: Offline skim module for CSC cosmic ray data

Implementation: <Notes on="" implementation>="">

Definition at line 73 of file CSCSkim.h.

Constructor & Destructor Documentation

CSCSkim::CSCSkim ( const edm::ParameterSet pset)
explicit

Definition at line 52 of file CSCSkim.cc.

CSCSkim::~CSCSkim ( )

Definition at line 118 of file CSCSkim.cc.

Member Function Documentation

void CSCSkim::beginJob ( void  )
virtual

Reimplemented from edm::EDFilter.

Definition at line 127 of file CSCSkim.cc.

int CSCSkim::chamberSerial ( int  kE,
int  kS,
int  kR,
int  kCh 
)
private

Definition at line 1272 of file CSCSkim.cc.

bool CSCSkim::doBFieldStudySelection ( edm::Handle< reco::TrackCollection saTracks,
edm::Handle< reco::TrackCollection Tracks,
edm::Handle< reco::MuonCollection gMuons 
)
private

Definition at line 1081 of file CSCSkim.cc.

bool CSCSkim::doCertainChamberSelection ( edm::Handle< CSCWireDigiCollection wires,
edm::Handle< CSCStripDigiCollection strips 
)
private

Definition at line 706 of file CSCSkim.cc.

bool CSCSkim::doCSCSkimming ( edm::Handle< CSCRecHit2DCollection cscRecHits,
edm::Handle< CSCSegmentCollection cscSegments 
)
private

Definition at line 365 of file CSCSkim.cc.

bool CSCSkim::doDTOverlap ( edm::Handle< CSCSegmentCollection cscSegments)
private

Definition at line 752 of file CSCSkim.cc.

bool CSCSkim::doHaloLike ( edm::Handle< CSCSegmentCollection cscSegments)
private

Definition at line 860 of file CSCSkim.cc.

bool CSCSkim::doLongSATrack ( edm::Handle< reco::TrackCollection saTracks)
private

Definition at line 1005 of file CSCSkim.cc.

bool CSCSkim::doMessyEventSkimming ( edm::Handle< CSCRecHit2DCollection cscRecHits,
edm::Handle< CSCSegmentCollection cscSegments 
)
private

Definition at line 575 of file CSCSkim.cc.

bool CSCSkim::doOverlapSkimming ( edm::Handle< CSCSegmentCollection cscSegments)
private

Definition at line 493 of file CSCSkim.cc.

void CSCSkim::endJob ( void  )
virtual

Reimplemented from edm::EDFilter.

Definition at line 182 of file CSCSkim.cc.

bool CSCSkim::filter ( edm::Event event,
const edm::EventSetup eventSetup 
)
overridevirtual

Implements edm::EDFilter.

Definition at line 230 of file CSCSkim.cc.

Member Data Documentation

bool CSCSkim::demandChambersBothSides
private

Definition at line 161 of file CSCSkim.h.

edm::EDGetTokenT<reco::MuonCollection> CSCSkim::glm_token
private

Definition at line 153 of file CSCSkim.h.

std::string CSCSkim::histogramFileName
private

Definition at line 141 of file CSCSkim.h.

TH1F* CSCSkim::hxnHitChambers
private

Definition at line 183 of file CSCSkim.h.

TH1F* CSCSkim::hxnRecHits
private

Definition at line 181 of file CSCSkim.h.

TH1F* CSCSkim::hxnRecHitsSel
private

Definition at line 184 of file CSCSkim.h.

TH1F* CSCSkim::hxnSegments
private

Definition at line 182 of file CSCSkim.h.

int CSCSkim::iEvent
private

Definition at line 134 of file CSCSkim.h.

int CSCSkim::iRun
private

Definition at line 133 of file CSCSkim.h.

bool CSCSkim::isSimulation
private

Definition at line 156 of file CSCSkim.h.

bool CSCSkim::makeHistograms
private

Definition at line 162 of file CSCSkim.h.

bool CSCSkim::makeHistogramsForMessyEvents
private

Definition at line 163 of file CSCSkim.h.

TH1F* CSCSkim::mevnChambers0
private

Definition at line 186 of file CSCSkim.h.

TH1F* CSCSkim::mevnChambers1
private

Definition at line 189 of file CSCSkim.h.

TH1F* CSCSkim::mevnRecHits0
private

Definition at line 185 of file CSCSkim.h.

TH1F* CSCSkim::mevnRecHits1
private

Definition at line 188 of file CSCSkim.h.

TH1F* CSCSkim::mevnSegments0
private

Definition at line 187 of file CSCSkim.h.

TH1F* CSCSkim::mevnSegments1
private

Definition at line 190 of file CSCSkim.h.

int CSCSkim::minimumHitChambers
private

Definition at line 159 of file CSCSkim.h.

int CSCSkim::minimumSegments
private

Definition at line 160 of file CSCSkim.h.

int CSCSkim::nCSCHitsMin
private

Definition at line 171 of file CSCSkim.h.

int CSCSkim::nEventsAnalyzed
private

Definition at line 121 of file CSCSkim.h.

int CSCSkim::nEventsCertainChamber
private

Definition at line 126 of file CSCSkim.h.

int CSCSkim::nEventsChambersBothSides
private

Definition at line 123 of file CSCSkim.h.

int CSCSkim::nEventsDTOverlap
private

Definition at line 127 of file CSCSkim.h.

int CSCSkim::nEventsForBFieldStudies
private

Definition at line 130 of file CSCSkim.h.

int CSCSkim::nEventsHaloLike
private

Definition at line 128 of file CSCSkim.h.

int CSCSkim::nEventsLongSATrack
private

Definition at line 129 of file CSCSkim.h.

int CSCSkim::nEventsMessy
private

Definition at line 125 of file CSCSkim.h.

int CSCSkim::nEventsOverlappingChambers
private

Definition at line 124 of file CSCSkim.h.

int CSCSkim::nEventsSelected
private

Definition at line 122 of file CSCSkim.h.

int CSCSkim::nLayersWithHitsMinimum
private

Definition at line 158 of file CSCSkim.h.

int CSCSkim::nTrHitsMin
private

Definition at line 173 of file CSCSkim.h.

int CSCSkim::nValidHitsMin
private

Definition at line 177 of file CSCSkim.h.

std::string CSCSkim::outputFileName
private

Definition at line 140 of file CSCSkim.h.

float CSCSkim::pMin
private

Definition at line 169 of file CSCSkim.h.

float CSCSkim::redChiSqMax
private

Definition at line 176 of file CSCSkim.h.

float CSCSkim::rExtMax
private

Definition at line 175 of file CSCSkim.h.

edm::EDGetTokenT<CSCRecHit2DCollection> CSCSkim::rh_token
private

Definition at line 149 of file CSCSkim.h.

edm::EDGetTokenT<reco::TrackCollection> CSCSkim::sam_token
private

Definition at line 151 of file CSCSkim.h.

edm::EDGetTokenT<CSCStripDigiCollection> CSCSkim::sdr_token
private

Definition at line 147 of file CSCSkim.h.

edm::EDGetTokenT<CSCStripDigiCollection> CSCSkim::sds_token
private

Definition at line 145 of file CSCSkim.h.

edm::EDGetTokenT<CSCSegmentCollection> CSCSkim::seg_token
private

Definition at line 150 of file CSCSkim.h.

TFile* CSCSkim::theHistogramFile
private

Definition at line 137 of file CSCSkim.h.

edm::EDGetTokenT<reco::TrackCollection> CSCSkim::trk_token
private

Definition at line 152 of file CSCSkim.h.

int CSCSkim::typeOfSkim
private

Definition at line 157 of file CSCSkim.h.

edm::EDGetTokenT<CSCWireDigiCollection> CSCSkim::wdr_token
private

Definition at line 146 of file CSCSkim.h.

edm::EDGetTokenT<CSCWireDigiCollection> CSCSkim::wds_token
private

Definition at line 144 of file CSCSkim.h.

int CSCSkim::whichChamber
private

Definition at line 167 of file CSCSkim.h.

int CSCSkim::whichEndcap
private

Definition at line 164 of file CSCSkim.h.

int CSCSkim::whichRing
private

Definition at line 166 of file CSCSkim.h.

int CSCSkim::whichStation
private

Definition at line 165 of file CSCSkim.h.

TH1F * CSCSkim::xxnCSCHits
private

Definition at line 192 of file CSCSkim.h.

TH1F * CSCSkim::xxnTrackerHits
private

Definition at line 192 of file CSCSkim.h.

TH1F * CSCSkim::xxnValidHits
private

Definition at line 192 of file CSCSkim.h.

TH1F* CSCSkim::xxP
private

Definition at line 192 of file CSCSkim.h.

TH1F * CSCSkim::xxredChiSq
private

Definition at line 192 of file CSCSkim.h.

float CSCSkim::zInnerMax
private

Definition at line 172 of file CSCSkim.h.

float CSCSkim::zLengthMin
private

Definition at line 170 of file CSCSkim.h.

float CSCSkim::zLengthTrMin
private

Definition at line 174 of file CSCSkim.h.