CMS 3D CMS Logo

Classes | Public Member Functions | Private Attributes

TopElectronHLTOfflineSource::EleMEs Class Reference

#include <TopElectronHLTOfflineSource.h>

List of all members.

Classes

struct  EleMESet

Public Member Functions

void addMESets (const std::string &name)
const std::vector< std::string > & eleIdNames ()
const std::vector< std::string > & eleMENames ()
 EleMEs (DQMStore *dbe, const std::vector< std::string > &eleIdNames, bool addExtraId, const std::string &name)
 EleMEs ()
const std::vector< EleMESet > & eleMESets ()
void fill (EleMESet &eleMESet, const reco::GsfElectron &ele, float minDeltaR, float sumEt, int n30jets, float dzPV)
const std::string fullName (size_t i)
EleMESetgetMESet (size_t namePos, size_t idPos)
const std::string & idName (size_t i)
const std::string & name (size_t i)
void setup (DQMStore *dbe, const std::vector< std::string > &, bool addExtraId, const std::string &name)
void setupMESet (EleMESet &eleSet, DQMStore *dbe, const std::string &name)

Private Attributes

std::vector< std::string > eleIdNames_
std::vector< std::string > eleMENames_
std::vector< EleMESeteleMESets_
std::string name_

Detailed Description

Definition at line 41 of file TopElectronHLTOfflineSource.h.


Constructor & Destructor Documentation

TopElectronHLTOfflineSource::EleMEs::EleMEs ( ) [inline]

Definition at line 67 of file TopElectronHLTOfflineSource.h.

        {
        }
TopElectronHLTOfflineSource::EleMEs::EleMEs ( DQMStore dbe,
const std::vector< std::string > &  eleIdNames,
bool  addExtraId,
const std::string &  name 
) [inline]

Definition at line 71 of file TopElectronHLTOfflineSource.h.

References setup().

        {
          setup(dbe, eleIdNames, addExtraId, name);
        }

Member Function Documentation

void TopElectronHLTOfflineSource::EleMEs::addMESets ( const std::string &  name)

Definition at line 256 of file TopElectronHLTOfflineSource.cc.

References i, and mergeVDriftHistosByStation::name.

Referenced by setup().

{
        eleMENames_.push_back("EB");
        eleMENames_.push_back("EE");
        name_ = name;
        for (size_t i=0; i < eleIdNames_.size() * eleMENames_.size(); ++i)
        {
                eleMESets_.push_back(EleMESet());
        }
}
const std::vector<std::string>& TopElectronHLTOfflineSource::EleMEs::eleIdNames ( ) [inline]

Definition at line 98 of file TopElectronHLTOfflineSource.h.

References eleIdNames_.

Referenced by TopElectronHLTOfflineSource::fill().

      {
        return eleIdNames_;
      }
const std::vector<std::string>& TopElectronHLTOfflineSource::EleMEs::eleMENames ( ) [inline]

Definition at line 93 of file TopElectronHLTOfflineSource.h.

References eleMENames_.

Referenced by TopElectronHLTOfflineSource::fill().

      {
        return eleMENames_;
      }
const std::vector<EleMESet>& TopElectronHLTOfflineSource::EleMEs::eleMESets ( ) [inline]

Definition at line 88 of file TopElectronHLTOfflineSource.h.

References eleMESets_.

      {
        return eleMESets_;
      }
void TopElectronHLTOfflineSource::EleMEs::fill ( EleMESet eleMESet,
const reco::GsfElectron ele,
float  minDeltaR,
float  sumEt,
int  n30jets,
float  dzPV 
)

Definition at line 340 of file TopElectronHLTOfflineSource.cc.

References reco::GsfElectron::dr03EcalRecHitSumEt(), reco::GsfElectron::dr03HcalTowerSumEt(), TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_et, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_eta, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_dzPV, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_etaError, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_numberOfValidHits, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_phiError, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_isolEm, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_isolHad, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_minDeltaR, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_phi, reco::LeafCandidate::et(), reco::LeafCandidate::eta(), MonitorElement::Fill(), TopElectronHLTOfflineSource::EleMEs::EleMESet::global_n30jets, TopElectronHLTOfflineSource::EleMEs::EleMESet::global_sumEt, reco::GsfElectron::gsfTrack(), LogDebug, and reco::LeafCandidate::phi().

Referenced by TopElectronHLTOfflineSource::fill().

{
        LogDebug("TopElectronHLTOfflineSource") << "filling the histos with " << ele.et();

        eleMESet.ele_et->Fill(ele.et());
        eleMESet.ele_eta->Fill(ele.eta());
        eleMESet.ele_phi->Fill(ele.phi());
        eleMESet.ele_isolEm->Fill(ele.dr03EcalRecHitSumEt());
        eleMESet.ele_isolHad->Fill(ele.dr03HcalTowerSumEt());
        eleMESet.ele_minDeltaR->Fill(minDeltaR);
        eleMESet.global_n30jets->Fill(n30jets);
        eleMESet.global_sumEt->Fill(sumEt);
        eleMESet.ele_gsftrack_etaError->Fill(ele.gsfTrack()->etaError());
        eleMESet.ele_gsftrack_phiError->Fill(ele.gsfTrack()->phiError());
        eleMESet.ele_gsftrack_numberOfValidHits->Fill(ele.gsfTrack()->numberOfValidHits());
        eleMESet.ele_gsftrack_dzPV->Fill(dzPV);         
}
const std::string TopElectronHLTOfflineSource::EleMEs::fullName ( size_t  i) [inline]

Definition at line 113 of file TopElectronHLTOfflineSource.h.

References idName(), and name().

Referenced by setup().

      {
        return name(i)+"_"+idName(i);
      }
EleMESet& TopElectronHLTOfflineSource::EleMEs::getMESet ( size_t  namePos,
size_t  idPos 
) [inline]

Definition at line 83 of file TopElectronHLTOfflineSource.h.

References eleMENames_, and eleMESets_.

Referenced by TopElectronHLTOfflineSource::fill().

      {
        return eleMESets_[namePos+idPos*eleMENames_.size()];
      }
const std::string& TopElectronHLTOfflineSource::EleMEs::idName ( size_t  i) [inline]

Definition at line 108 of file TopElectronHLTOfflineSource.h.

References eleIdNames_, and eleMENames_.

Referenced by fullName().

      {
        return eleIdNames_[i / eleMENames_.size()];
      }
const std::string& TopElectronHLTOfflineSource::EleMEs::name ( size_t  i) [inline]

Definition at line 103 of file TopElectronHLTOfflineSource.h.

References eleMENames_.

Referenced by fullName(), and setup().

      {
        return eleMENames_[i % eleMENames_.size()];
      }
void TopElectronHLTOfflineSource::EleMEs::setup ( DQMStore dbe,
const std::vector< std::string > &  eleIdNames,
bool  addExtraId,
const std::string &  name 
)

Definition at line 223 of file TopElectronHLTOfflineSource.cc.

References addMESets(), eleIdNames_, eleMESets_, fullName(), i, LogDebug, name(), and setupMESet().

Referenced by EleMEs().

{ 
        for (size_t i = 0; i < eleIdNames.size(); ++i)
        {
                eleIdNames_.push_back(eleIdNames[i]);
                if (addExtraId)
                        eleIdNames_.push_back(eleIdNames[i]+"extraId");
        }
        
        addMESets(name);
        
        for (size_t i = 0; i < eleMESets_.size(); ++i)
        {
                setupMESet(eleMESets_[i], dbe, name+"_"+fullName(i));
                LogDebug("TopElectronHLTOfflineSource") << "Booked MonitorElement with name " << name;
        }
}
void TopElectronHLTOfflineSource::EleMEs::setupMESet ( EleMESet eleSet,
DQMStore dbe,
const std::string &  name 
)

Definition at line 240 of file TopElectronHLTOfflineSource.cc.

References DQMStore::book1D(), TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_et, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_eta, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_dzPV, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_etaError, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_numberOfValidHits, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_gsftrack_phiError, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_isolEm, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_isolHad, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_minDeltaR, TopElectronHLTOfflineSource::EleMEs::EleMESet::ele_phi, TopElectronHLTOfflineSource::EleMEs::EleMESet::global_n30jets, and TopElectronHLTOfflineSource::EleMEs::EleMESet::global_sumEt.

Referenced by setup().

{
        eleSet.ele_et = dbe->book1D("ele_"+name+"_et", "ele_"+name+"_et", 50, 0., 500.);
        eleSet.ele_eta = dbe->book1D("ele_"+name+"_eta", "ele_"+name+"_eta", 50, -2.5, 2.5);
        eleSet.ele_phi = dbe->book1D("ele_"+name+"_phi","ele_"+name+"_phi", 50, -3.1416, 3.1416);
        eleSet.ele_isolEm = dbe->book1D("ele_"+name+"_isolEm", "ele_"+name+"_isolEm", 50, -0.05, 3.);
        eleSet.ele_isolHad = dbe->book1D("ele_"+name+"_isolHad", "ele_"+name+"_isolHad", 50, -0.05, 5.);
        eleSet.ele_minDeltaR = dbe->book1D("ele_"+name+"_minDeltaR", "ele_"+name+"_minDeltaR", 50, 0., 1.);
        eleSet.global_n30jets = dbe->book1D("ele_"+name+"_global_n30jets", "ele_"+name+"_global_n30jets", 10, -0.5, 9.5);
        eleSet.global_sumEt = dbe->book1D("ele_"+name+"_global_sumEt", "ele_"+name+"_global_sumEt", 50, 0., 1000.);
        eleSet.ele_gsftrack_etaError = dbe->book1D("ele_"+name+"_gsftrack_etaError", "ele_"+name+"_gsftrack_etaError", 50, 0., 0.005);
        eleSet.ele_gsftrack_phiError = dbe->book1D("ele_"+name+"_gsftrack_phiError", "ele_"+name+"_gsftrack_phiError", 50, 0., 0.005);
        eleSet.ele_gsftrack_numberOfValidHits = dbe->book1D("ele_"+name+"_gsftrack_numberOfValidHits", "ele_"+name+"_gsftrack_numberOfValidHits", 25, -0.5, 24.5);
        eleSet.ele_gsftrack_dzPV = dbe->book1D("ele_"+name+"_gsftrack_dzPV", "ele_"+name+"_gsftrack_dzPV", 50, 0., 0.2);
}

Member Data Documentation

std::vector<std::string> TopElectronHLTOfflineSource::EleMEs::eleIdNames_ [private]

Definition at line 128 of file TopElectronHLTOfflineSource.h.

Referenced by eleIdNames(), idName(), and setup().

std::vector<std::string> TopElectronHLTOfflineSource::EleMEs::eleMENames_ [private]

Definition at line 123 of file TopElectronHLTOfflineSource.h.

Referenced by eleMENames(), getMESet(), idName(), and name().

Definition at line 121 of file TopElectronHLTOfflineSource.h.

Referenced by eleMESets(), getMESet(), and setup().

Definition at line 125 of file TopElectronHLTOfflineSource.h.