CMS 3D CMS Logo

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

#include <L1TDTTF.h>

Inheritance diagram for L1TDTTF:
DQMEDAnalyzer edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 L1TDTTF (const edm::ParameterSet &ps)
 base services More...
 
virtual ~L1TDTTF ()
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
 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
 
 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 ()
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 
virtual void beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void bookHistograms (DQMStore::IBooker &i, edm::Run const &, edm::EventSetup const &) override
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
- 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)
 

Private Member Functions

void bookEta (int wh, int &nbins, float &start, float &stop)
 
void fillMEs (std::vector< L1MuDTTrackCand > const *trackContainer, std::vector< L1MuRegionalCand > &gmtDttfCands)
 
void setQualLabel (MonitorElement *me, int axis)
 
void setWheelLabel (MonitorElement *me)
 

Private Attributes

MonitorElementdttf_bx [6][12]
 
MonitorElementdttf_bx_2ndTrack [6][12]
 
MonitorElementdttf_eta [6][12]
 
MonitorElementdttf_eta_fine_fraction [6][12]
 
MonitorElementdttf_eta_wheel_2ndTrack [6]
 
MonitorElementdttf_gmt_ghost
 
MonitorElementdttf_gmt_match
 
MonitorElementdttf_gmt_missed
 
MonitorElementdttf_nTracksPerEv [6][12]
 
MonitorElementdttf_nTracksPerEvent_integ
 
MonitorElementdttf_nTracksPerEvent_wheel [6]
 
MonitorElementdttf_phi [6][12]
 
MonitorElementdttf_phi_eta_coarse_wheel [6]
 
MonitorElementdttf_phi_eta_fine_wheel [6]
 
MonitorElementdttf_phi_eta_wheel_2ndTrack [6]
 
MonitorElementdttf_phi_wheel_2ndTrack [6]
 
MonitorElementdttf_pt [6][12]
 
MonitorElementdttf_pt_wheel_2ndTrack [6]
 
MonitorElementdttf_q [6][12]
 
MonitorElementdttf_q_wheel_2ndTrack [6]
 
MonitorElementdttf_qual [6][12]
 
MonitorElementdttf_quality_summary_wheel_2ndTrack [6]
 
MonitorElementdttf_quality_wheel_2ndTrack [6]
 
MonitorElementdttf_spare
 
edm::InputTag dttpgSource_
 
edm::InputTag gmtSource_
 
edm::EDGetTokenT
< L1MuGMTReadoutCollection
gmtSourceToken_
 
std::string l1tsubsystemfolder_
 
edm::InputTag muonCollectionLabel_
 
edm::EDGetTokenT
< reco::MuonCollection
muonCollectionToken_
 
int nev_
 
int nev_dttf_
 
int nev_dttf_track2_
 
int numTracks [6][12]
 
bool online_
 
std::string outputFile_
 
edm::InputTag trackInputTag_
 
edm::EDGetTokenT
< L1MuDTTrackContainer
trackInputToken_
 
bool verbose_
 

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, GlobalCache
LuminosityBlockContext
 
typedef
CacheTypes::LuminosityBlockSummaryCache 
LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache,
GlobalCache
RunContext
 
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::NoCache
globalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr
< dqmDetails::NoCache
globalBeginRunSummary (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)
 

Detailed Description

Definition at line 31 of file L1TDTTF.h.

Constructor & Destructor Documentation

L1TDTTF::L1TDTTF ( const edm::ParameterSet ps)

base services

DT input output tracks GMT GlobalMuon try

Verbose?

Use ROOT Output?

Definition at line 197 of file L1TDTTF.cc.

L1TDTTF::~L1TDTTF ( )
virtual

Nothing to destroy

Definition at line 239 of file L1TDTTF.cc.

Member Function Documentation

void L1TDTTF::analyze ( const edm::Event e,
const edm::EventSetup c 
)
protectedvirtual

counters

tracks handle

dttf counters

selection for offline

global muon selection plot

in case of problems accept all

in case of problems accept all

take only bx=0

in Gmt but not in DTTF

in phys values double phi= dttfCand->phiValue(); int sector = 1 + (phi + 15)/30; /// in phys values

Per event summaries

Implements edm::stream::EDAnalyzerBase.

Definition at line 584 of file L1TDTTF.cc.

void L1TDTTF::beginLuminosityBlock ( edm::LuminosityBlock const &  l,
edm::EventSetup const &  c 
)
protectedvirtual

Reimplemented from edm::stream::EDAnalyzerBase.

Definition at line 249 of file L1TDTTF.cc.

void L1TDTTF::bookEta ( int  wh,
int &  nbins,
float &  start,
float &  stop 
)
private

Definition at line 1018 of file L1TDTTF.cc.

void L1TDTTF::bookHistograms ( DQMStore::IBooker i,
edm::Run const &  ,
edm::EventSetup const &   
)
overrideprotectedvirtual

testing purposes

histo name

histo title

DTTF Output (6 wheels)


Per wheel summaries

number of tracks per event per wheel

phi vs etafine - for each wheel

phi vs etacoarse - for each wheel

Per wheel summaries : 2ND_TRACK_ONLY

DTTF Tracks Quality distribution

quality per wheel 2ND TRACK

phi vs eta - for each wheel 2ND TRACK

DTTF Tracks eta distribution (Packed values)

DTTF Tracks Phi distribution (Packed values)

DTTF Tracks p_{T} distribution (Packed values)

DTTF Tracks Charge distribution

Go in detailed subfolders

number of tracks per event folder

BX_SECTORS for each wheel

CHARGE folder

PT folder

PHI folder

QUALITY folder

ETA folder

ETA folder

integrated values: always packed

Only for online: occupancy summary - reset

Implements DQMEDAnalyzer.

Definition at line 254 of file L1TDTTF.cc.

void L1TDTTF::dqmBeginRun ( edm::Run const &  r,
edm::EventSetup const &  c 
)
protectedvirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 245 of file L1TDTTF.cc.

void L1TDTTF::fillMEs ( std::vector< L1MuDTTrackCand > const *  trackContainer,
std::vector< L1MuRegionalCand > &  gmtDttfCands 
)
private

Forget N0 with zero eta value for physical values

from 0 to 11

from 1 to 12

wh has possible values {-3,-2,-1,1,2,3}

make wh2 go from 0 to 5

useful conversions

calculate phi in physical coordinates: keep it int, set labels later

new attempt

Fill per sector bx WHEEL_s/dttf_bx_whs

Fill per sector 2nd bx

WHEEL_s/BX_SECTORS/TRACK_2_ONLY/dttf_bx_2ndTrack_whs_sed

COUNTERS global

Fill per sector phi: WHEEL_s/BX_d/dttf_phi_whs_sed

Fill per sector quality WHEEL_s/BX_d/dttf_qual_whs_sed

Fill per sector pt WHEEL_s/BX_d/dttf_pt_whs_sed

Fill per sector charge WHEEL_s/BX_d/dttf_q_whs_sed

Fill per sector eta WHEEL_s/BX_d/dttf_eta_whs_sed

WHEEL_s/dttf_phi_eta_whs

WHEEL_s/dttf_phi_eta_whs

Only for online: INCLUSIVE/dttf_occupancy_summary_r

second track summary

WHEEL_s/dttf_phi_integ

WHEEL_s/dttf_pt_integ

WHEEL_s/dttf_eta_integ

WHEEL_s/dttf_qual_integ

WHEEL_s/dttf_q_integ

WHEEL_s/dttf_quality_whs

WHEEL_s/dttf_phi_eta_whs

gmt phi_packed() goes from 0 to 143

calculate phi in physical coordinates: keep it int, set labels later

Definition at line 790 of file L1TDTTF.cc.

void L1TDTTF::setQualLabel ( MonitorElement me,
int  axis 
)
private

Definition at line 989 of file L1TDTTF.cc.

void L1TDTTF::setWheelLabel ( MonitorElement me)
private

Definition at line 1004 of file L1TDTTF.cc.

Member Data Documentation

MonitorElement* L1TDTTF::dttf_bx[6][12]
private

Definition at line 79 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_bx_2ndTrack[6][12]
private

Definition at line 80 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_eta[6][12]
private

Definition at line 83 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_eta_fine_fraction[6][12]
private

Definition at line 82 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_eta_wheel_2ndTrack[6]
private

Definition at line 73 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_gmt_ghost
private

Definition at line 93 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_gmt_match
private

Definition at line 91 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_gmt_missed
private

Definition at line 92 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_nTracksPerEv[6][12]
private

Definition at line 78 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_nTracksPerEvent_integ
private

Definition at line 88 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_nTracksPerEvent_wheel[6]
private

Definition at line 67 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_phi[6][12]
private

Definition at line 84 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_phi_eta_coarse_wheel[6]
private

Definition at line 71 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_phi_eta_fine_wheel[6]
private

Definition at line 70 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_phi_eta_wheel_2ndTrack[6]
private

Definition at line 72 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_phi_wheel_2ndTrack[6]
private

Definition at line 74 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_pt[6][12]
private

Definition at line 85 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_pt_wheel_2ndTrack[6]
private

Definition at line 75 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_q[6][12]
private

Definition at line 86 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_q_wheel_2ndTrack[6]
private

Definition at line 76 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_qual[6][12]
private

Definition at line 81 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_quality_summary_wheel_2ndTrack[6]
private

Definition at line 69 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_quality_wheel_2ndTrack[6]
private

Definition at line 68 of file L1TDTTF.h.

MonitorElement* L1TDTTF::dttf_spare
private

Definition at line 89 of file L1TDTTF.h.

edm::InputTag L1TDTTF::dttpgSource_
private

Definition at line 58 of file L1TDTTF.h.

edm::InputTag L1TDTTF::gmtSource_
private

Definition at line 59 of file L1TDTTF.h.

edm::EDGetTokenT<L1MuGMTReadoutCollection> L1TDTTF::gmtSourceToken_
private

Definition at line 105 of file L1TDTTF.h.

std::string L1TDTTF::l1tsubsystemfolder_
private

Definition at line 61 of file L1TDTTF.h.

edm::InputTag L1TDTTF::muonCollectionLabel_
private

Definition at line 60 of file L1TDTTF.h.

edm::EDGetTokenT<reco::MuonCollection> L1TDTTF::muonCollectionToken_
private

Definition at line 104 of file L1TDTTF.h.

int L1TDTTF::nev_
private

Definition at line 97 of file L1TDTTF.h.

int L1TDTTF::nev_dttf_
private

Definition at line 98 of file L1TDTTF.h.

int L1TDTTF::nev_dttf_track2_
private

Definition at line 99 of file L1TDTTF.h.

int L1TDTTF::numTracks[6][12]
private

Definition at line 100 of file L1TDTTF.h.

bool L1TDTTF::online_
private

Definition at line 62 of file L1TDTTF.h.

std::string L1TDTTF::outputFile_
private

Definition at line 64 of file L1TDTTF.h.

edm::InputTag L1TDTTF::trackInputTag_
private

Definition at line 65 of file L1TDTTF.h.

edm::EDGetTokenT<L1MuDTTrackContainer> L1TDTTF::trackInputToken_
private

Definition at line 103 of file L1TDTTF.h.

bool L1TDTTF::verbose_
private

Definition at line 63 of file L1TDTTF.h.