Program Listing for File ElectronHists.h¶
↰ Return to documentation for file (xAODAnaHelpers/ElectronHists.h
)
#ifndef xAODAnaHelpers_ElectronHists_H
#define xAODAnaHelpers_ElectronHists_H
#include "xAODAnaHelpers/IParticleHists.h"
#include <xAODEgamma/ElectronContainer.h>
#include "xAODAnaHelpers/Electron.h"
#include "xAODAnaHelpers/EventInfo.h"
#include <AthContainers/DataVector.h>
ANA_MSG_HEADER(msgElectronHists)
class ElectronHists : public IParticleHists
{
public:
ElectronHists(std::string name, std::string detailStr);
virtual ~ElectronHists() ;
virtual StatusCode initialize();
virtual StatusCode execute( const xAOD::Electron* electron, float eventWeight, const xAOD::EventInfo* eventInfo = 0);
virtual StatusCode execute( const xAH::Electron* electron, float eventWeight, const xAH::EventInfo* eventInfo = 0);
using HistogramManager::book; // make other overloaded version of book() to show up in subclass
using IParticleHists::execute; // overload
protected:
virtual StatusCode execute( const xAOD::IParticle* particle, float eventWeight, const xAOD::EventInfo* eventInfo = 0 );
virtual StatusCode execute( const xAH::Particle* particle, float eventWeight, const xAH::EventInfo* eventInfo = 0 );
// holds bools that control which histograms are filled
HelperClasses::ElectronInfoSwitch* m_infoSwitch;
private:
// Isolation
std::map<std::string, TH1F *> m_isIsolated;
// PID
std::map<std::string, TH1F *> m_PID;
// clean
TH1F* m_ptcone20;
TH1F* m_ptcone30;
TH1F* m_ptcone40;
TH1F* m_ptvarcone20;
TH1F* m_ptvarcone30;
TH1F* m_ptvarcone40;
TH1F* m_topoetcone20;
TH1F* m_topoetcone30;
TH1F* m_topoetcone40;
// rel
TH1F* m_ptcone20_rel;
TH1F* m_ptcone30_rel;
TH1F* m_ptcone40_rel;
TH1F* m_ptvarcone20_rel;
TH1F* m_ptvarcone30_rel;
TH1F* m_ptvarcone40_rel;
TH1F* m_topoetcone20_rel;
TH1F* m_topoetcone30_rel;
TH1F* m_topoetcone40_rel;
};
#endif