.. _program_listing_file_xAODAnaHelpers_ElectronContainer.h: Program Listing for File ElectronContainer.h ============================================ |exhale_lsh| :ref:`Return to documentation for file ` (``xAODAnaHelpers/ElectronContainer.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef xAODAnaHelpers_ElectronContainer_H #define xAODAnaHelpers_ElectronContainer_H #include #include #include #include #include "xAODEgamma/ElectronContainer.h" #include #include #include namespace xAH { class ElectronContainer : public ParticleContainer { public: ElectronContainer(const std::string& name = "el", const std::string& detailStr="", float units = 1e3, bool mc = false, bool storeSystSFs = true); virtual ~ElectronContainer(); virtual void setTree(TTree *tree); virtual void setBranches(TTree *tree); virtual void clear(); virtual void FillElectron( const xAOD::Electron* elec, const xAOD::Vertex* primaryVertex ); virtual void FillElectron( const xAOD::IParticle* particle, const xAOD::Vertex* primaryVertex ); using ParticleContainer::setTree; // make other overloaded version of execute() to show up in subclass protected: virtual void updateParticle(uint idx, Electron& elec); private: // kinematics std::vector* m_caloCluster_eta; std::vector* m_charge; // trigger std::vector* m_isTrigMatched; std::vector >* m_isTrigMatchedToChain; std::vector >* m_listTrigChains; // isolation std::map< std::string, std::vector< int >* >* m_isIsolated; std::vector* m_topoetcone20; std::vector* m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500; std::vector* m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000; std::vector* m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500; std::vector* m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000; std::vector* m_neflowisol20; std::vector* m_topoetcone20_CloseByCorr; std::vector* m_ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr; std::vector* m_ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000_CloseByCorr; // PID std::map< std::string, std::vector< int >* >* m_PID; // scale factors w/ sys // per object std::vector< std::vector< float > >* m_RecoEff_SF; std::map< std::string, std::vector< std::vector< float > >* >* m_PIDEff_SF; std::map< std::string, std::vector< std::vector< float > >* >* m_IsoEff_SF; std::map< std::string, std::vector< std::vector< float > >* >* m_TrigEff_SF; std::map< std::string, std::vector< std::vector< float > >* >* m_TrigMCEff; // reco parameters std::vector* m_author; std::vector* m_OQ; // track parameters std::vector* m_trkd0; std::vector* m_trkd0sig; std::vector* m_trkz0; std::vector* m_trkz0sintheta; std::vector* m_trkphi0; std::vector* m_trktheta; std::vector* m_trkcharge; std::vector* m_trkqOverP; // track hit content std::vector* m_trknSiHits; std::vector* m_trknPixHits; std::vector* m_trknPixHoles; std::vector* m_trknSCTHits; std::vector* m_trknSCTHoles; std::vector* m_trknTRTHits; std::vector* m_trknTRTHoles; std::vector* m_trknBLayerHits; std::vector* m_trknInnermostPixLayHits; // not available in DC14 std::vector* m_trkPixdEdX; // not available in DC14 // prompt lepton std::vector* m_PromptLeptonInput_DL1mu; std::vector* m_PromptLeptonInput_DRlj; std::vector* m_PromptLeptonInput_LepJetPtFrac; std::vector* m_PromptLeptonInput_PtFrac; std::vector* m_PromptLeptonInput_PtRel; std::vector* m_PromptLeptonInput_TrackJetNTrack; std::vector* m_PromptLeptonInput_ip2; std::vector* m_PromptLeptonInput_ip3; std::vector* m_PromptLeptonInput_rnnip; std::vector* m_PromptLeptonInput_sv1_jf_ntrkv; std::vector* m_PromptLeptonIso; std::vector* m_PromptLeptonVeto; // passSel std::vector* m_passSel; // passOR std::vector* m_passOR; // isLRT std::vector* m_isLRT; }; } #endif // xAODAnaHelpers_ElectronContainer_H