Tool_InputConverter.h 2.11 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
/*
  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/

#ifndef PANTAUALGS_TOOL_INPUTCONVERTER
#define PANTAUALGS_TOOL_INPUTCONVERTER

#include <map>
#include <vector>
#include <string>

12
13
14
15
16
17
//! ASG
#include "AsgTools/AsgTool.h"
#include "AsgTools/ToolHandle.h"

#include "PanTauAlgs/ITool_InformationStore.h"
#include "PanTauAlgs/ITool_InputConverter.h"
18
19
20
21
22
23
24
25
26
27
28

//! xAOD EDM
#include "xAODPFlow/PFO.h"
#include "xAODTau/TauJet.h"
#include "xAODPFlow/PFODefs.h"

namespace Rec {
    class TrackParticle;
}

namespace PanTau {
29
    class TauConstituent2;
30
31
32
33
34
}


namespace PanTau {

35
36
37
  class Tool_InputConverter : public asg::AsgTool, virtual public PanTau::ITool_InputConverter  {

    ASG_TOOL_CLASS1(Tool_InputConverter, PanTau::ITool_InputConverter)
38
39
40
        
    public:
        
41
        Tool_InputConverter(const std::string &name);
42
43
44
45
46
        virtual ~Tool_InputConverter ();
        
        virtual StatusCode initialize();
//         virtual StatusCode finalize();
        
47
48
49
        virtual StatusCode ConvertToTauConstituent2(xAOD::PFO* pfo,
                                                   PanTau::TauConstituent2* &tauConstituent,
                                                   const xAOD::TauJet* tauJet) const;
50
51
52
53
54
        
    protected:
        
        //member variables 
        ToolHandle<PanTau::ITool_InformationStore>   m_Tool_InformationStore;
55
	std::string m_Tool_InformationStoreName;//optional
56
57
58
59
60
61
62
63
64
65
66
67
        
        virtual bool       passesPreselectionEnergy(double itsEnergy) const;
        
        int     m_Config_UsePionMass;
        int     m_Config_TauConstituents_UseShrinkingCone;
        
        double  m_Config_TauConstituents_Types_DeltaRCore;
        double  m_Config_TauConstituents_PreselectionMinEnergy;
        
        std::vector<double>  m_Config_CellBased_BinEdges_Eta;
        std::vector<double>  m_Config_CellBased_EtaBinned_Pi0MVACut_1prong;
        std::vector<double>  m_Config_CellBased_EtaBinned_Pi0MVACut_3prong;
68
       
69
70
71
72
	bool m_init=false;
  public:
	inline bool isInitialized(){return m_init;}

73
74
75
76
77
78
79
80
    }; //end class ConstituentGetter


}//end namespace PanTau




81
#endif // PANTAUALGS_TOOL_INPUTCONVERTER