CMS 3D CMS Logo

Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes

HLTMonBTagIPSource Class Reference

#include <HLTMonBTagIPSource.h>

Inheritance diagram for HLTMonBTagIPSource:
edm::EDAnalyzer

List of all members.

Public Member Functions

 HLTMonBTagIPSource (const edm::ParameterSet &config)
 ~HLTMonBTagIPSource ()

Protected Member Functions

void analyze (const edm::Event &event, const edm::EventSetup &setup)
void beginJob (void)
void beginLuminosityBlock (const edm::LuminosityBlock &lumi, const edm::EventSetup &setup)
void beginRun (const edm::Run &run, const edm::EventSetup &setup)
void endJob (void)
void endLuminosityBlock (const edm::LuminosityBlock &lumi, const edm::EventSetup &setup)
void endRun (const edm::Run &run, const edm::EventSetup &setup)

Private Member Functions

MonitorElementbook (const std::string &name, const std::string &title, int x_bins, double x_min, double x_max, const char *x_axis=0)
MonitorElementbook (const std::string &name, const std::string &title, int x_bins, double x_min, double x_max, int y_bins, double y_min, double y_max, const char *x_axis=0, const char *y_axis=0)

Private Attributes

edm::Service< DQMStorem_dbe
bool m_init
edm::InputTag m_L1Filter
unsigned int m_L1FilterIndex
edm::InputTag m_L25Filter
unsigned int m_L25FilterIndex
edm::InputTag m_L25JetTags
edm::InputTag m_L25TagInfo
edm::InputTag m_L2Filter
unsigned int m_L2FilterIndex
edm::InputTag m_L2Jets
edm::InputTag m_L3Filter
unsigned int m_L3FilterIndex
edm::InputTag m_L3JetTags
edm::InputTag m_L3TagInfo
std::string m_monitorName
std::string m_outputFile
unsigned int m_pathIndex
std::string m_pathName
MonitorElementm_plotL25Discriminator
MonitorElementm_plotL25IP2ndTrack2d
MonitorElementm_plotL25IP2ndTrack2dSig
MonitorElementm_plotL25IP2ndTrack3d
MonitorElementm_plotL25IP2ndTrack3dSig
MonitorElementm_plotL25IP3ndTrack2d
MonitorElementm_plotL25IP3ndTrack2dSig
MonitorElementm_plotL25IP3ndTrack3d
MonitorElementm_plotL25IP3ndTrack3dSig
MonitorElementm_plotL25JetsEnergy
MonitorElementm_plotL25JetsET
MonitorElementm_plotL25JetsEta
MonitorElementm_plotL25JetsEtaET
MonitorElementm_plotL25JetsEtaPhi
MonitorElementm_plotL25JetsPhi
MonitorElementm_plotL25TrackChi2
MonitorElementm_plotL25TrackEtaPhi
MonitorElementm_plotL25TrackEtaPT
MonitorElementm_plotL25TrackHits
MonitorElementm_plotL25TrackMultiplicity
MonitorElementm_plotL2JetsEnergy
MonitorElementm_plotL2JetsET
MonitorElementm_plotL2JetsEta
MonitorElementm_plotL2JetsEtaET
MonitorElementm_plotL2JetsEtaPhi
MonitorElementm_plotL2JetsPhi
MonitorElementm_plotL3Discriminator
MonitorElementm_plotL3IP2ndTrack2d
MonitorElementm_plotL3IP2ndTrack2dSig
MonitorElementm_plotL3IP2ndTrack3d
MonitorElementm_plotL3IP2ndTrack3dSig
MonitorElementm_plotL3IP3ndTrack2d
MonitorElementm_plotL3IP3ndTrack2dSig
MonitorElementm_plotL3IP3ndTrack3d
MonitorElementm_plotL3IP3ndTrack3dSig
MonitorElementm_plotL3JetsEnergy
MonitorElementm_plotL3JetsET
MonitorElementm_plotL3JetsEta
MonitorElementm_plotL3JetsEtaET
MonitorElementm_plotL3JetsEtaPhi
MonitorElementm_plotL3JetsPhi
MonitorElementm_plotL3TrackChi2
MonitorElementm_plotL3TrackEtaPhi
MonitorElementm_plotL3TrackEtaPT
MonitorElementm_plotL3TrackHits
MonitorElementm_plotL3TrackMultiplicity
MonitorElementm_plotRates
std::string m_processName
unsigned int m_size
bool m_storeROOT
edm::InputTag m_triggerResults

Detailed Description

DQM source for BJet HLT paths

Date:
2010/03/15 15:31:36
Revision:
1.11
Author:
Andrea Bocci, Pisa

* DQM source for BJet HLT paths

Date:
2009/10/14 07:22:39
Revision:
1.7
Author:
Andrea Bocci, Pisa

Definition at line 25 of file HLTMonBTagIPSource.h.


Constructor & Destructor Documentation

HLTMonBTagIPSource::HLTMonBTagIPSource ( const edm::ParameterSet config)

Definition at line 33 of file HLTMonBTagIPSource.cc.

                                                                     :
  m_L1Filter(       config.getParameter<edm::InputTag>("L1Filter") ),
  m_L2Filter(       config.getParameter<edm::InputTag>("L2Filter") ),
  m_L25Filter(      config.getParameter<edm::InputTag>("L25Filter") ),
  m_L3Filter(       config.getParameter<edm::InputTag>("L3Filter") ),
  m_L2Jets(         config.getParameter<edm::InputTag>("L2Jets") ),
  m_L25TagInfo(     config.getParameter<edm::InputTag>("L25TagInfo") ),
  m_L25JetTags(     config.getParameter<edm::InputTag>("L25JetTags") ),
  m_L3TagInfo(      config.getParameter<edm::InputTag>("L3TagInfo") ),
  m_L3JetTags(      config.getParameter<edm::InputTag>("L3JetTags") ),
  m_triggerResults( config.getParameter<edm::InputTag>("triggerResults") ),
  m_processName(    config.getParameter<std::string>("processName") ),
  m_pathName(       config.getParameter<std::string>("pathName") ),
  m_monitorName(    config.getParameter<std::string>("monitorName" ) ),
  m_outputFile(     config.getUntrackedParameter<std::string>("outputFile", "HLTBJetDQM.root") ),
  m_storeROOT(      config.getUntrackedParameter<bool>("storeROOT", false) ),
  m_size(           config.getParameter<unsigned int>("interestingJets") ),
  m_dbe(),
  m_init(           false ),
  m_pathIndex(      (unsigned int) -1 ),
  m_L1FilterIndex(  (unsigned int) -1 ),
  m_L2FilterIndex(  (unsigned int) -1 ),
  m_L25FilterIndex( (unsigned int) -1 ),
  m_L3FilterIndex(  (unsigned int) -1 ),

  // MonitorElement's (plots) filled by the source
  m_plotRates(0),

  m_plotL2JetsEnergy(0),
  m_plotL2JetsET(0),
  m_plotL2JetsEta(0),
  m_plotL2JetsPhi(0),
  m_plotL2JetsEtaPhi(0),
  m_plotL2JetsEtaET(0),
  m_plotL25JetsEnergy(0),
  m_plotL25JetsET(0),
  m_plotL25JetsEta(0),
  m_plotL25JetsPhi(0),
  m_plotL25JetsEtaPhi(0),
  m_plotL25JetsEtaET(0),
  m_plotL25TrackMultiplicity(0),
  m_plotL25TrackHits(0),
  m_plotL25TrackChi2(0),
  m_plotL25TrackEtaPhi(0),
  m_plotL25TrackEtaPT(0),
  m_plotL25IP2ndTrack2d(0),
  m_plotL25IP2ndTrack2dSig(0),
  m_plotL25IP2ndTrack3d(0),
  m_plotL25IP2ndTrack3dSig(0),
  m_plotL25IP3ndTrack2d(0),
  m_plotL25IP3ndTrack2dSig(0),
  m_plotL25IP3ndTrack3d(0),
  m_plotL25IP3ndTrack3dSig(0),
  m_plotL25Discriminator(0),
  m_plotL3JetsEnergy(0),
  m_plotL3JetsET(0),
  m_plotL3JetsEta(0),
  m_plotL3JetsPhi(0),
  m_plotL3JetsEtaPhi(0),
  m_plotL3JetsEtaET(0),
  m_plotL3TrackMultiplicity(0),
  m_plotL3TrackHits(0),
  m_plotL3TrackChi2(0),
  m_plotL3TrackEtaPhi(0),
  m_plotL3TrackEtaPT(0),
  m_plotL3IP2ndTrack2d(0),
  m_plotL3IP2ndTrack2dSig(0),
  m_plotL3IP2ndTrack3d(0),
  m_plotL3IP2ndTrack3dSig(0),
  m_plotL3IP3ndTrack2d(0),
  m_plotL3IP3ndTrack2dSig(0),
  m_plotL3IP3ndTrack3d(0),
  m_plotL3IP3ndTrack3dSig(0),
  m_plotL3Discriminator(0)
{
}
HLTMonBTagIPSource::~HLTMonBTagIPSource ( void  )

Definition at line 110 of file HLTMonBTagIPSource.cc.

                                            {
}

Member Function Documentation

void HLTMonBTagIPSource::analyze ( const edm::Event event,
const edm::EventSetup setup 
) [protected, virtual]

Implements edm::EDAnalyzer.

Definition at line 227 of file HLTMonBTagIPSource.cc.

References accept(), runTheMatrix::data, reco::LeafCandidate::energy(), reco::LeafCandidate::et(), eta(), reco::LeafCandidate::eta(), MonitorElement::Fill(), i, reco::TrackIPTagInfo::impactParameterData(), info, reco::TrackIPTagInfo::IP2DSig, reco::TrackIPTagInfo::IP3DSig, edm::Service< T >::isAvailable(), edm::HandleBase::isValid(), reco::JTATagInfo::jet(), metsig::jet, edm::RefToBase< T >::key(), m_dbe, m_init, m_L1FilterIndex, m_L25FilterIndex, m_L25JetTags, m_L25TagInfo, m_L2FilterIndex, m_L2Jets, m_L3FilterIndex, m_L3JetTags, m_L3TagInfo, m_pathIndex, m_plotL25Discriminator, m_plotL25IP2ndTrack2d, m_plotL25IP2ndTrack2dSig, m_plotL25IP2ndTrack3d, m_plotL25IP2ndTrack3dSig, m_plotL25IP3ndTrack2d, m_plotL25IP3ndTrack2dSig, m_plotL25IP3ndTrack3d, m_plotL25IP3ndTrack3dSig, m_plotL25JetsEnergy, m_plotL25JetsET, m_plotL25JetsEta, m_plotL25JetsEtaET, m_plotL25JetsEtaPhi, m_plotL25JetsPhi, m_plotL25TrackChi2, m_plotL25TrackEtaPhi, m_plotL25TrackEtaPT, m_plotL25TrackHits, m_plotL25TrackMultiplicity, m_plotL2JetsEnergy, m_plotL2JetsET, m_plotL2JetsEta, m_plotL2JetsEtaET, m_plotL2JetsEtaPhi, m_plotL2JetsPhi, m_plotL3Discriminator, m_plotL3IP2ndTrack2d, m_plotL3IP2ndTrack2dSig, m_plotL3IP2ndTrack3d, m_plotL3IP2ndTrack3dSig, m_plotL3IP3ndTrack2d, m_plotL3IP3ndTrack2dSig, m_plotL3IP3ndTrack3d, m_plotL3IP3ndTrack3dSig, m_plotL3JetsEnergy, m_plotL3JetsET, m_plotL3JetsEta, m_plotL3JetsEtaET, m_plotL3JetsEtaPhi, m_plotL3JetsPhi, m_plotL3TrackChi2, m_plotL3TrackEtaPhi, m_plotL3TrackEtaPT, m_plotL3TrackHits, m_plotL3TrackMultiplicity, m_plotRates, m_size, m_triggerResults, min, reco::LeafCandidate::phi(), phi, reco::TrackIPTagInfo::selectedTracks(), findQualityFiles::size, edm::RefVector< C, T, F >::size(), reco::TrackIPTagInfo::sortedIndexes(), matplotRender::t, GlobalPosition_Frontier_DevDB_cff::tag, and testEve_cfg::tracks.

                                                                                    {
  if (not m_dbe.isAvailable())
    return;

  if (not m_init)
    return;

  edm::Handle<edm::TriggerResults> h_triggerResults;
  edm::Handle<edm::View<reco::Jet> >          h_L2Jets;
  edm::Handle<reco::TrackIPTagInfoCollection> h_L25TagInfo;
  edm::Handle<reco::JetTagCollection>         h_L25JetTags;
  edm::Handle<reco::TrackIPTagInfoCollection> h_L3TagInfo;
  edm::Handle<reco::JetTagCollection>         h_L3JetTags;
  
  event.getByLabel(m_triggerResults, h_triggerResults);
  event.getByLabel(m_L2Jets,     h_L2Jets);
  event.getByLabel(m_L25TagInfo, h_L25TagInfo);
  event.getByLabel(m_L25JetTags, h_L25JetTags);
  event.getByLabel(m_L3TagInfo,  h_L3TagInfo);
  event.getByLabel(m_L3JetTags,  h_L3JetTags);

  // check if this path passed the L1, L2, L2.5 and L3 filters
  bool         wasrun = false;
  unsigned int latest = 0;
  bool         accept = false;
  if (h_triggerResults.isValid()) {
    wasrun = h_triggerResults->wasrun( m_pathIndex );
    latest = h_triggerResults->index(  m_pathIndex );
    accept = h_triggerResults->accept( m_pathIndex );
  }
  if (wasrun)
    m_plotRates->Fill( 0. );    // path was run
  if (latest > m_L1FilterIndex)
    m_plotRates->Fill( 1. );    // L1 accepted
  if (latest > m_L2FilterIndex)
    m_plotRates->Fill( 2. );    // L2 accepted  
  if (latest > m_L25FilterIndex)
    m_plotRates->Fill( 3. );    // L2.5 accepted  
  if (latest > m_L3FilterIndex)
    m_plotRates->Fill( 4. );    // L3 accepted  
  if (accept)
    m_plotRates->Fill( 5. );    // HLT accepted

  if ((latest > m_L1FilterIndex) and h_L2Jets.isValid()) {
    unsigned int size = std::min((unsigned int) h_L2Jets->size(), m_size);
    for (unsigned int i = 0; i < size; ++i) {
      const reco::Jet & jet = (*h_L2Jets)[i];
      m_plotL2JetsEnergy->Fill( jet.energy() );
      m_plotL2JetsET->Fill(     jet.et() );
      m_plotL2JetsEta->Fill(    jet.eta() );
      m_plotL2JetsPhi->Fill(    jet.phi() );
      m_plotL2JetsEtaPhi->Fill( jet.eta(), jet.phi() );
      m_plotL2JetsEtaET->Fill(  jet.eta(), jet.et() );
    }
  }
  if ((latest > m_L2FilterIndex) and h_L25TagInfo.isValid() and h_L25JetTags.isValid()) {
    unsigned int size = std::min((unsigned int) h_L25TagInfo->size(), m_size);
    for (unsigned int i = 0; i < size; ++i) {
      const reco::TrackIPTagInfo & info   = (*h_L25TagInfo)[i];
      const reco::Jet & jet = * info.jet();
      const reco::TrackRefVector & tracks = info.selectedTracks();
      const std::vector<reco::TrackIPTagInfo::TrackIPData> & data = info.impactParameterData();
      const reco::JetTag & tag = (*h_L25JetTags)[info.jet().key()];
      m_plotL25JetsEnergy->Fill( jet.energy() );
      m_plotL25JetsET->Fill(     jet.et() );
      m_plotL25JetsEta->Fill(    jet.eta() );
      m_plotL25JetsPhi->Fill(    jet.phi() );
      m_plotL25JetsEtaPhi->Fill( jet.eta(), jet.phi() );
      m_plotL25JetsEtaET->Fill(  jet.eta(), jet.et() );
      m_plotL25TrackMultiplicity->Fill( tracks.size() );
      for (unsigned int t = 0; t < tracks.size(); ++t) {
        m_plotL25TrackHits->Fill(   tracks[t]->numberOfValidHits() );
        m_plotL25TrackChi2->Fill(   tracks[t]->normalizedChi2() );
        m_plotL25TrackEtaPhi->Fill( tracks[t]->eta(), tracks[t]->phi() );
        m_plotL25TrackEtaPT->Fill(  tracks[t]->eta(), tracks[t]->pt() );
      }
      std::vector<size_t> indicesBy2d = info.sortedIndexes(reco::TrackIPTagInfo::IP2DSig);
      if (indicesBy2d.size() >= 2) {
        m_plotL25IP2ndTrack2d->Fill(    data[indicesBy2d[1]].ip2d.value() );
        m_plotL25IP2ndTrack2dSig->Fill( data[indicesBy2d[1]].ip2d.significance() );
      }
      if (indicesBy2d.size() >= 3) {
        m_plotL25IP3ndTrack2d->Fill(    data[indicesBy2d[2]].ip2d.value() );
        m_plotL25IP3ndTrack2dSig->Fill( data[indicesBy2d[2]].ip2d.significance() );
      }
      std::vector<size_t> indicesBy3d = info.sortedIndexes(reco::TrackIPTagInfo::IP3DSig);
      if (indicesBy3d.size() >= 2) {
        m_plotL25IP2ndTrack3d->Fill(    data[indicesBy3d[1]].ip3d.value() );
        m_plotL25IP2ndTrack3dSig->Fill( data[indicesBy3d[1]].ip3d.significance() );
      }
      if (indicesBy3d.size() >= 3) {
        m_plotL25IP3ndTrack3d->Fill(    data[indicesBy3d[2]].ip3d.value() );
        m_plotL25IP3ndTrack3dSig->Fill( data[indicesBy3d[2]].ip3d.significance() );
      }
      m_plotL25Discriminator->Fill( tag.second );
    }
  }
  if ((latest > m_L25FilterIndex) and h_L3TagInfo.isValid() and h_L3JetTags.isValid()) {
    unsigned int size = std::min((unsigned int) h_L3TagInfo->size(), m_size);
    for (unsigned int i = 0; i < size; ++i) {
      const reco::TrackIPTagInfo & info   = (*h_L3TagInfo)[i];
      const reco::Jet & jet = * info.jet();
      const reco::TrackRefVector & tracks = info.selectedTracks();
      const std::vector<reco::TrackIPTagInfo::TrackIPData> & data = info.impactParameterData();
      const reco::JetTag & tag = (*h_L3JetTags)[info.jet().key()];
      m_plotL3JetsEnergy->Fill( jet.energy() );
      m_plotL3JetsET->Fill(     jet.et() );
      m_plotL3JetsEta->Fill(    jet.eta() );
      m_plotL3JetsPhi->Fill(    jet.phi() );
      m_plotL3JetsEtaPhi->Fill( jet.eta(), jet.phi() );
      m_plotL3JetsEtaET->Fill(  jet.eta(), jet.et() );
      m_plotL3TrackMultiplicity->Fill( tracks.size() );
      for (unsigned int t = 0; t < tracks.size(); ++t) {
        m_plotL3TrackHits->Fill(   tracks[t]->numberOfValidHits() );
        m_plotL3TrackChi2->Fill(   tracks[t]->normalizedChi2() );
        m_plotL3TrackEtaPhi->Fill( tracks[t]->eta(), tracks[t]->phi() );
        m_plotL3TrackEtaPT->Fill(  tracks[t]->eta(), tracks[t]->pt() );
      }
      std::vector<size_t> indicesBy2d = info.sortedIndexes(reco::TrackIPTagInfo::IP2DSig);
      if (indicesBy2d.size() >= 2) {
        m_plotL3IP2ndTrack2d->Fill(    data[indicesBy2d[1]].ip2d.value() );
        m_plotL3IP2ndTrack2dSig->Fill( data[indicesBy2d[1]].ip2d.significance() );
      }
      if (indicesBy2d.size() >= 3) {
        m_plotL3IP3ndTrack2d->Fill(    data[indicesBy2d[2]].ip2d.value() );
        m_plotL3IP3ndTrack2dSig->Fill( data[indicesBy2d[2]].ip2d.significance() );
      }
      std::vector<size_t> indicesBy3d = info.sortedIndexes(reco::TrackIPTagInfo::IP3DSig);
      if (indicesBy3d.size() >= 2) {
        m_plotL3IP2ndTrack3d->Fill(    data[indicesBy3d[1]].ip3d.value() );
        m_plotL3IP2ndTrack3dSig->Fill( data[indicesBy3d[1]].ip3d.significance() );
      }
      if (indicesBy3d.size() >= 3) {
        m_plotL3IP3ndTrack3d->Fill(    data[indicesBy3d[2]].ip3d.value() );
        m_plotL3IP3ndTrack3dSig->Fill( data[indicesBy3d[2]].ip3d.significance() );
      }
      m_plotL3Discriminator->Fill( tag.second );
    }
  }
}
void HLTMonBTagIPSource::beginJob ( void  ) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 113 of file HLTMonBTagIPSource.cc.

References book(), edm::Service< T >::isAvailable(), m_dbe, m_monitorName, m_pathName, m_plotL25Discriminator, m_plotL25IP2ndTrack2d, m_plotL25IP2ndTrack2dSig, m_plotL25IP2ndTrack3d, m_plotL25IP2ndTrack3dSig, m_plotL25IP3ndTrack2d, m_plotL25IP3ndTrack2dSig, m_plotL25IP3ndTrack3d, m_plotL25IP3ndTrack3dSig, m_plotL25JetsEnergy, m_plotL25JetsET, m_plotL25JetsEta, m_plotL25JetsEtaET, m_plotL25JetsEtaPhi, m_plotL25JetsPhi, m_plotL25TrackChi2, m_plotL25TrackEtaPhi, m_plotL25TrackEtaPT, m_plotL25TrackHits, m_plotL25TrackMultiplicity, m_plotL2JetsEnergy, m_plotL2JetsET, m_plotL2JetsEta, m_plotL2JetsEtaET, m_plotL2JetsEtaPhi, m_plotL2JetsPhi, m_plotL3Discriminator, m_plotL3IP2ndTrack2d, m_plotL3IP2ndTrack2dSig, m_plotL3IP2ndTrack3d, m_plotL3IP2ndTrack3dSig, m_plotL3IP3ndTrack2d, m_plotL3IP3ndTrack2dSig, m_plotL3IP3ndTrack3d, m_plotL3IP3ndTrack3dSig, m_plotL3JetsEnergy, m_plotL3JetsET, m_plotL3JetsEta, m_plotL3JetsEtaET, m_plotL3JetsEtaPhi, m_plotL3JetsPhi, m_plotL3TrackChi2, m_plotL3TrackEtaPhi, m_plotL3TrackEtaPT, m_plotL3TrackHits, m_plotL3TrackMultiplicity, and m_plotRates.

                                  {
  if (not m_dbe.isAvailable())
    return;

  m_dbe->setVerbose(0);
  m_dbe->setCurrentFolder(m_monitorName + "/" + m_pathName);

  m_plotRates                       = book("Rates",                  "Rates",                              6,  0.,     6);

  m_plotL2JetsEnergy                = book("L2_jet_energy",          "L2 jet energy",                    300,   0.,  300.,  "GeV");
  m_plotL2JetsET                    = book("L2_jet_eT",              "L2 jet eT",                        300,   0.,  300.,  "GeV");
  m_plotL2JetsEta                   = book("L2_jet_eta",             "L2 jet eta",                        60,  -3.0,   3.0, "#eta");
  m_plotL2JetsPhi                   = book("L2_jet_phi",             "L2 jet phi",                        64,  -3.2,   3.2, "#phi");
  m_plotL2JetsEtaPhi                = book("L2_jet_eta_phi",         "L2 jet eta vs. phi",                60,  -3.0,   3.0,  64, -3.2,   3.2, "#eta", "#phi");
  m_plotL2JetsEtaET                 = book("L2_jet_eta_et",          "L2 jet eta vs. eT",                 60,  -3.0,   3.0, 300,  0.,  300.,  "#eta", "GeV");
  m_plotL25JetsEnergy               = book("L25_jet_energy",         "L2.5 jet Energy",                  300,   0.,  300.,  "GeV");
  m_plotL25JetsET                   = book("L25_jet_eT",             "L2.5 jet ET",                      300,   0.,  300.,  "GeV");
  m_plotL25JetsEta                  = book("L25_jet_eta",            "L2.5 jet eta",                      60,  -3.0,   3.0, "#eta");
  m_plotL25JetsPhi                  = book("L25_jet_phi",            "L2.5 jet phi",                      64,  -3.2,   3.2, "#phi");
  m_plotL25JetsEtaPhi               = book("L25_jet_eta_phi",        "L2.5 jet eta vs. phi",              60,  -3.0,   3.0,  64, -3.2,   3.2, "#eta", "#phi");
  m_plotL25JetsEtaET                = book("L25_jet_eta_et",         "L2.5 jet eta vs. eT",               60,  -3.0,   3.0, 300,  0.,  300.,  "#eta", "GeV");
  m_plotL25TrackMultiplicity        = book("L25_track_multiplicity", "L2.5 pixel tracks multiplicity",    25,   0,    25);
  m_plotL25TrackHits                = book("L25_track_hits",         "L2.5 pixel tracks n. of hits",       5,   0,     5);
  m_plotL25TrackChi2                = book("L25_track_chi2",         "L2.5 pixel tracks chi2/DoF",        20,   0.,   20.,  "#chi^2/DoF");
  m_plotL25TrackEtaPhi              = book("L25_track_eta_phi",      "L2.5 pixel tracks eta vs. phi",     60,  -3.0,   3.0,  64, -3.2,   3.2, "#eta", "#phi");
  m_plotL25TrackEtaPT               = book("L25_track_eta_pt",       "L2.5 pixel tracks eta vs. pT",      60,  -3.0,   3.0,  50,  0.,   50.,  "#eta", "GeV");
  m_plotL25IP2ndTrack2d             = book("L25_IP_2ndTrack_2d",     "L2.5 2nd pixel track 2D IP",        25,  -0.05, 0.20, "cm");
  m_plotL25IP2ndTrack2dSig          = book("L25_IP_2ndTrack_2dSig",  "L2.5 2nd pixel track 2D SIP",       80, -30.,   50.);
  m_plotL25IP2ndTrack3d             = book("L25_IP_2ndTrack_3d",     "L2.5 2nd pixel track 3D IP",        60,  -0.20, 1.00, "cm");
  m_plotL25IP2ndTrack3dSig          = book("L25_IP_2ndTrack_3dSig",  "L2.5 2nd pixel track 3D SIP",       80, -30.,   50.);
  m_plotL25IP3ndTrack2d             = book("L25_IP_3ndTrack_2d",     "L2.5 3rd pixel track 2D IP",        25,  -0.05, 0.20, "cm");
  m_plotL25IP3ndTrack2dSig          = book("L25_IP_3ndTrack_2dSig",  "L2.5 3rd pixel track 2D SIP",       80, -30.,   50.);
  m_plotL25IP3ndTrack3d             = book("L25_IP_3ndTrack_3d",     "L2.5 3rd pixel track 3D IP",        60,  -0.20, 1.00, "cm");
  m_plotL25IP3ndTrack3dSig          = book("L25_IP_3ndTrack_3dSig",  "L2.5 3rd pixel track 3D SIP",       80, -30.,   50.);
  m_plotL25Discriminator            = book("L25_discriminator",      "L2.5 b-tag discriminator",          80, -30.,   50.);
  m_plotL3JetsEnergy                = book("L3_jet_energy",          "L3 jet Energy",                    300,   0.,  300.,  "GeV");
  m_plotL3JetsET                    = book("L3_jet_eT",              "L3 jet ET",                        300,   0.,  300.,  "GeV");
  m_plotL3JetsEta                   = book("L3_jet_eta",             "L3 jet eta",                        60,  -3.0,   3.0, "#eta");
  m_plotL3JetsPhi                   = book("L3_jet_phi",             "L3 jet phi",                        64,  -3.2,   3.2, "#phi");
  m_plotL3JetsEtaPhi                = book("L3_jet_eta_phi",         "L3 jet eta vs. phi",                60,  -3.0,   3.0,  64, -3.2,   3.2, "#eta", "#phi");
  m_plotL3JetsEtaET                 = book("L3_jet_eta_et",          "L3 jet eta vs. eT",                 60,  -3.0,   3.0, 300,  0.,  300.,  "#eta", "GeV");
  m_plotL3TrackMultiplicity         = book("L3_track_multiplicity",  "L3 tracks multiplicity",            25,   0,    25);
  m_plotL3TrackHits                 = book("L3_track_hits",          "L3 tracks n. of hits",              20,   0,    20);
  m_plotL3TrackChi2                 = book("L3_track_chi2",          "L3 tracks chi2/DoF",                20,   0.,   20.,  "#chi^2/DoF");
  m_plotL3TrackEtaPhi               = book("L3_track_eta_phi",       "L3 tracks eta vs. phi",             60,  -3.0,   3.0,  64, -3.2,   3.2, "#eta", "#phi");
  m_plotL3TrackEtaPT                = book("L3_track_eta_pt",        "L3 tracks eta vs. pT",              60,  -3.0,   3.0,  50,  0.,   50.,  "#eta", "GeV");
  m_plotL3IP2ndTrack2d              = book("L3_IP_2ndTrack_2d",      "L3 2nd track 2D IP",                25,  -0.05, 0.20, "cm");
  m_plotL3IP2ndTrack2dSig           = book("L3_IP_2ndTrack_2dSig",   "L3 2nd track 2D SIP",               80, -30.,   50.);
  m_plotL3IP2ndTrack3d              = book("L3_IP_2ndTrack_3d",      "L3 2nd track 3D IP",                60,  -0.20, 1.00, "cm");
  m_plotL3IP2ndTrack3dSig           = book("L3_IP_2ndTrack_3dSig",   "L3 2nd track 3D SIP",               80, -30.,   50.);
  m_plotL3IP3ndTrack2d              = book("L3_IP_3ndTrack_2d",      "L3 3rd track 2D IP",                25,  -0.05, 0.20, "cm");
  m_plotL3IP3ndTrack2dSig           = book("L3_IP_3ndTrack_2dSig",   "L3 3rd track 2D SIP",               80, -30.,   50.);
  m_plotL3IP3ndTrack3d              = book("L3_IP_3ndTrack_3d",      "L3 3rd track 3D IP",                60,  -0.20, 1.00, "cm");
  m_plotL3IP3ndTrack3dSig           = book("L3_IP_3ndTrack_3dSig",   "L3 3rd track 3D SIP",               80, -30.,   50.);
  m_plotL3Discriminator             = book("L3_discriminator",       "L3 b-tag discriminator",            80, -30.,   50.);
}
void HLTMonBTagIPSource::beginLuminosityBlock ( const edm::LuminosityBlock lumi,
const edm::EventSetup setup 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 221 of file HLTMonBTagIPSource.cc.

                                                                                                          {
}
void HLTMonBTagIPSource::beginRun ( const edm::Run run,
const edm::EventSetup setup 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 175 of file HLTMonBTagIPSource.cc.

References edm::InputTag::encode(), HLTConfigProvider::init(), m_init, m_L1Filter, m_L1FilterIndex, m_L25Filter, m_L25FilterIndex, m_L2Filter, m_L2FilterIndex, m_L3Filter, m_L3FilterIndex, m_pathIndex, m_pathName, m_processName, HLTConfigProvider::moduleIndex(), findQualityFiles::size, HLTConfigProvider::size(), and HLTConfigProvider::triggerIndex().

                                                                                 {

  HLTConfigProvider configProvider;

  bool changed = false;
  if (not configProvider.init(run, setup, m_processName, changed))
  {
    edm::LogWarning("ConfigurationError") << "process name \"" << m_processName << "\" is not valid.";
    m_init = false;
    return;
  }

  m_pathIndex = configProvider.triggerIndex( m_pathName );
  if (m_pathIndex == configProvider.size())
  {
    edm::LogWarning("ConfigurationError") << "trigger name \"" << m_pathName << "\" is not valid.";
    m_init = false;
    return;
  }

  m_init = true;

  // if their call fails, these will be set to one after the last valid module for their path
  // so they will never be "passed"
  unsigned int size = configProvider.size( m_pathIndex );

  m_L1FilterIndex  = configProvider.moduleIndex( m_pathIndex, m_L1Filter.encode()  );
  if (m_L1FilterIndex == size)
    edm::LogWarning("ConfigurationError") << "L1 filter \"" << m_L1Filter << "\" is not valid.";

  m_L2FilterIndex  = configProvider.moduleIndex( m_pathIndex, m_L2Filter.encode()  );
  if (m_L2FilterIndex == size)
    edm::LogWarning("ConfigurationError") << "L2 filter \"" << m_L2Filter << "\" is not valid.";

  m_L25FilterIndex = configProvider.moduleIndex( m_pathIndex, m_L25Filter.encode() );
  if (m_L25FilterIndex == size)
    edm::LogWarning("ConfigurationError") << "L2.5 filter \"" << m_L25Filter << "\" is not valid.";

  m_L3FilterIndex  = configProvider.moduleIndex( m_pathIndex, m_L3Filter.encode()  );
  if (m_L3FilterIndex == size)
    edm::LogWarning("ConfigurationError") << "L3 filter \"" << m_L3Filter << "\" is not valid.";
}
MonitorElement * HLTMonBTagIPSource::book ( const std::string &  name,
const std::string &  title,
int  x_bins,
double  x_min,
double  x_max,
const char *  x_axis = 0 
) [private]

Definition at line 368 of file HLTMonBTagIPSource.cc.

References m_dbe, and MonitorElement::setAxisTitle().

Referenced by beginJob().

                                                                                                                                                       {
  MonitorElement * element = m_dbe->book1D(name, title, x_bins, x_min, x_max);
  if (x_axis)
    element->setAxisTitle(x_axis, 1);
  return element;
}
MonitorElement * HLTMonBTagIPSource::book ( const std::string &  name,
const std::string &  title,
int  x_bins,
double  x_min,
double  x_max,
int  y_bins,
double  y_min,
double  y_max,
const char *  x_axis = 0,
const char *  y_axis = 0 
) [private]

Definition at line 375 of file HLTMonBTagIPSource.cc.

References m_dbe, and MonitorElement::setAxisTitle().

                                                                                                                                                                                                                    {
  MonitorElement * element = m_dbe->book2D(name, title, x_bins, x_min, x_max, y_bins, y_min, y_max);
  if (x_axis)
    element->setAxisTitle(x_axis, 1);
  if (y_axis)
    element->setAxisTitle(y_axis, 2);
  return element;
}
void HLTMonBTagIPSource::endJob ( void  ) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 170 of file HLTMonBTagIPSource.cc.

References edm::Service< T >::isAvailable(), m_dbe, m_outputFile, and m_storeROOT.

void HLTMonBTagIPSource::endLuminosityBlock ( const edm::LuminosityBlock lumi,
const edm::EventSetup setup 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 224 of file HLTMonBTagIPSource.cc.

                                                                                                        {
}
void HLTMonBTagIPSource::endRun ( const edm::Run run,
const edm::EventSetup setup 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 218 of file HLTMonBTagIPSource.cc.

                                                                               {
}

Member Data Documentation

Definition at line 63 of file HLTMonBTagIPSource.h.

Referenced by analyze(), beginJob(), book(), and endJob().

Definition at line 64 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginRun().

Definition at line 46 of file HLTMonBTagIPSource.h.

Referenced by beginRun().

unsigned int HLTMonBTagIPSource::m_L1FilterIndex [private]

Definition at line 68 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginRun().

Definition at line 48 of file HLTMonBTagIPSource.h.

Referenced by beginRun().

unsigned int HLTMonBTagIPSource::m_L25FilterIndex [private]

Definition at line 70 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginRun().

Definition at line 52 of file HLTMonBTagIPSource.h.

Referenced by analyze().

Definition at line 51 of file HLTMonBTagIPSource.h.

Referenced by analyze().

Definition at line 47 of file HLTMonBTagIPSource.h.

Referenced by beginRun().

unsigned int HLTMonBTagIPSource::m_L2FilterIndex [private]

Definition at line 69 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginRun().

Definition at line 50 of file HLTMonBTagIPSource.h.

Referenced by analyze().

Definition at line 49 of file HLTMonBTagIPSource.h.

Referenced by beginRun().

unsigned int HLTMonBTagIPSource::m_L3FilterIndex [private]

Definition at line 71 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginRun().

Definition at line 54 of file HLTMonBTagIPSource.h.

Referenced by analyze().

Definition at line 53 of file HLTMonBTagIPSource.h.

Referenced by analyze().

std::string HLTMonBTagIPSource::m_monitorName [private]

Definition at line 59 of file HLTMonBTagIPSource.h.

Referenced by beginJob().

std::string HLTMonBTagIPSource::m_outputFile [private]

Definition at line 60 of file HLTMonBTagIPSource.h.

Referenced by endJob().

unsigned int HLTMonBTagIPSource::m_pathIndex [private]

Definition at line 67 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginRun().

std::string HLTMonBTagIPSource::m_pathName [private]

Definition at line 58 of file HLTMonBTagIPSource.h.

Referenced by beginJob(), and beginRun().

Definition at line 101 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 93 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 94 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 95 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 96 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 97 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 98 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 99 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 100 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 82 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 83 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 84 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 87 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 86 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 85 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 90 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 91 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 92 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 89 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 88 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 76 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 77 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 78 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 81 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 80 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 79 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 121 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 113 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 114 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 115 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 116 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 117 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 118 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 119 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 120 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 102 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 103 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 104 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 107 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 106 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 105 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 110 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 111 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 112 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 109 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 108 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

Definition at line 74 of file HLTMonBTagIPSource.h.

Referenced by analyze(), and beginJob().

std::string HLTMonBTagIPSource::m_processName [private]

Definition at line 57 of file HLTMonBTagIPSource.h.

Referenced by beginRun().

unsigned int HLTMonBTagIPSource::m_size [private]

Definition at line 62 of file HLTMonBTagIPSource.h.

Referenced by analyze().

Definition at line 61 of file HLTMonBTagIPSource.h.

Referenced by endJob().

Definition at line 56 of file HLTMonBTagIPSource.h.

Referenced by analyze().