43 return StatusCode::SUCCESS;
48 return StatusCode::SUCCESS;
58 if(curTauJet ==
nullptr) {
60 return StatusCode::FAILURE;
69 int numTrack = curTauJet->
nTracks();
70 if(numTrack == 0 || numTrack > 5) {
71 ATH_MSG_DEBUG(
"Flagging tau for algorithm CellBased as invalid, because numTrack is " << numTrack);
77 std::vector<TauConstituent*> list_TauConstituents = std::vector<TauConstituent*>(0);
78 std::vector<TauConstituent*> list_SelectedTauConstituents = std::vector<TauConstituent*>(0);
83 if(list_TauConstituents.empty()) {
90 if(list_SelectedTauConstituents.empty()) {
92 ATH_MSG_DEBUG(
"Seed has no associated constituents that pass selection!");
96 bool hasCoreConstituents =
false;
97 for(
unsigned int iConst=0; iConst<list_SelectedTauConstituents.size(); iConst++) {
104 if(!hasCoreConstituents) {
123 list_SelectedTauConstituents,
124 list_TauConstituents,
125 pantauSeed_TechnicalQuality);
142 delete curPanTauSeed;
143 return StatusCode::SUCCESS;
157 std::vector< ElementLink< xAOD::PFOContainer > > pi0PFOLinks = tauJet->
protoPi0PFOLinks();
161 std::vector< ElementLink< xAOD::PFOContainer > > neutralPFOLinks = tauJet->
protoNeutralPFOLinks();
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
static StatusCode bindToolHandle(ToolHandle< T > &, std::string)
Gaudi::Property< std::string > m_Tool_TauConstituentSelectorName
virtual StatusCode executePanTau(xAOD::TauJet &pTau, xAOD::ParticleContainer &pi0Container, xAOD::PFOContainer &neutralPFOContainer) const
ToolHandle< PanTau::ITool_TauConstituentSelector > m_Tool_TauConstituentSelector
std::vector< double > m_Config_PtBins
Gaudi::Property< std::string > m_Tool_DecayModeDeterminatorName
ToolHandle< PanTau::ITool_InformationStore > m_Tool_InformationStore
Gaudi::Property< std::string > m_Tool_DetailsArrangerName
ToolHandle< PanTau::ITool_PanTauTools > m_Tool_FeatureExtractor
Gaudi::Property< std::string > m_Tool_FeatureExtractorName
ToolHandle< PanTau::ITool_PanTauTools > m_Tool_DecayModeDeterminator
Gaudi::Property< std::string > m_Tool_InformationStoreName
virtual StatusCode finalize()
Finalizer.
Gaudi::Property< std::string > m_Tool_TauConstituentGetterName
virtual StatusCode initialize()
Tool initializer.
PanTauProcessor(const std::string &name)
ToolHandle< PanTau::ITool_TauConstituentGetter > m_Tool_TauConstituentGetter
ToolHandle< PanTau::ITool_DetailsArranger > m_Tool_DetailsArranger
static void fillDefaultValuesToTau(xAOD::TauJet *tauJet)
@ t_NoSelectedConstituents
bool isOfType(TauConstituent::Type aType) const
void makePrivateStore()
Create a new (empty) private store for this object.
void setPi0PFOLinks(const PFOLinks_t &pi0PFOs)
virtual FourMom_t p4() const
The full 4-momentum of the particle.
double ptIntermediateAxis() const
const PFOLinks_t & protoChargedPFOLinks() const
cellbased pfos
void setP4(double pt, double eta, double phi, double m)
Set methods for IParticle values.
void setNeutralPFOLinks(const PFOLinks_t &neutralPFOs)
const PFOLinks_t & protoPi0PFOLinks() const
void setChargedPFOLinks(const PFOLinks_t &chargedPFOs)
size_t nTracks(TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
const PFOLinks_t & protoNeutralPFOLinks() const
PFOContainer_v1 PFOContainer
Definition of the current "pfo container version".
ParticleContainer_v1 ParticleContainer
Define the latest version of the particle class.
TauJet_v3 TauJet
Definition of the current "tau version".