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 40 of file TopElectronHLTOfflineSource.h.


Constructor & Destructor Documentation

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

Definition at line 66 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 70 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 255 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 97 of file TopElectronHLTOfflineSource.h.

References eleIdNames_.

Referenced by TopElectronHLTOfflineSource::fill().

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

Definition at line 92 of file TopElectronHLTOfflineSource.h.

References eleMENames_.

Referenced by TopElectronHLTOfflineSource::fill().

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

Definition at line 87 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 339 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 112 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 82 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 107 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 102 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 222 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 239 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 127 of file TopElectronHLTOfflineSource.h.

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

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

Definition at line 122 of file TopElectronHLTOfflineSource.h.

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

Definition at line 120 of file TopElectronHLTOfflineSource.h.

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

Definition at line 124 of file TopElectronHLTOfflineSource.h.