00001 #ifndef CPANALYSISEXAMPLES_TOOLEXAMPLESALG_H 00002 #define CPANALYSISEXAMPLES_TOOLEXAMPLESALG_H 1 00003 00004 #include "AthAnalysisBaseComps/AthAnalysisAlgorithm.h" 00005 00007 #include "GoodRunsLists/IGoodRunsListSelectionTool.h" 00008 #include "PileupReweighting/PileupReweightingTool.h" 00009 #include "TrigDecisionTool/TrigDecisionTool.h" 00010 #include "TriggerMatchingTool/IMatchingTool.h" 00011 #include "AssociationUtils/IOverlapRemovalTool.h" 00012 00014 #include "ElectronPhotonFourMomentumCorrection/IEgammaCalibrationAndSmearingTool.h" 00015 #include "IsolationCorrections/IIsolationCorrectionTool.h" 00016 #include "PATCore/IAsgSelectionTool.h" 00017 00018 #include "IsolationSelection/IIsolationSelectionTool.h" 00019 #include "IsolationSelection/IIsolationCloseByCorrectionTool.h" 00020 00021 #include "ElectronEfficiencyCorrection/IAsgElectronEfficiencyCorrectionTool.h" 00022 00024 #include "MuonMomentumCorrections/IMuonCalibrationAndSmearingTool.h" 00025 #include "MuonSelectorTools/IMuonSelectionTool.h" 00026 00027 #include "MuonEfficiencyCorrections/IMuonEfficiencyScaleFactors.h" 00028 00029 00031 #include "JetCalibTools/IJetCalibrationTool.h" 00032 #include "JetInterface/IJetUpdateJvt.h" 00033 #include "JetJvtEfficiency/IJetJvtEfficiency.h" 00034 #include "JetInterface/IJetSelector.h" 00035 00036 00037 00038 00039 00040 00041 class ToolExamplesAlg: public ::AthAnalysisAlgorithm { 00042 public: 00043 ToolExamplesAlg( const std::string& name, ISvcLocator* pSvcLocator ); 00044 virtual ~ToolExamplesAlg(); 00045 00046 virtual StatusCode initialize(); 00047 virtual StatusCode firstExecute(); 00048 virtual StatusCode execute(); 00049 virtual StatusCode finalize(); 00050 00051 virtual StatusCode beginInputFile(); 00052 00053 private: 00054 00056 ToolHandle<IGoodRunsListSelectionTool> m_grl; 00057 ToolHandle<CP::IPileupReweightingTool> m_prw; 00058 ToolHandle<Trig::TrigDecisionTool> m_tdt; 00059 ToolHandle<Trig::IMatchingTool> m_tmt; 00060 ToolHandle<ORUtils::IOverlapRemovalTool> m_or; 00061 00063 ToolHandle<CP::IEgammaCalibrationAndSmearingTool> m_elCalib; 00064 ToolHandle<CP::IIsolationCorrectionTool> m_elIsoCalib; 00065 ToolHandle<IAsgSelectionTool> m_elSelection; 00066 ToolHandle<CP::IIsolationSelectionTool> m_elIsoSelection; 00067 ToolHandle<CP::IIsolationCloseByCorrectionTool> m_elCorrectedIsoSelection; 00068 00069 ToolHandleArray<IAsgElectronEfficiencyCorrectionTool> m_elSFTools; 00070 00072 ToolHandle<CP::IMuonCalibrationAndSmearingTool> m_muCalib; 00073 ToolHandle<CP::IMuonSelectionTool> m_muSelectionTool; 00074 ToolHandle<CP::IIsolationSelectionTool> m_muIsoSelection; 00075 00076 ToolHandleArray<CP::IMuonEfficiencyScaleFactors> m_muSFTools; 00077 00079 ToolHandle<IJetCalibrationTool> m_jetCalib; 00080 ToolHandle<IJetSelector> m_jetCleaning; 00081 ToolHandle<CP::IJetJvtEfficiency> m_jvt; 00082 00083 00084 }; 00085 00086 #endif //> !CPANALYSISEXAMPLES_TOOLEXAMPLESALG_H