LArSoft  v10_06_00
Liquid Argon Software toolkit - https://larsoft.org/
lar_dl_content::HierarchyPfo Class Reference

HierarchyPfo class. More...

#include "LArHierarchyPfo.h"

Public Member Functions

 HierarchyPfo ()
 Default constructor. More...
 
 HierarchyPfo (const pandora::ParticleFlowObject *pPfo, const ThreeDSlidingFitResult &threeDSlidingFitResult, const ExtremalPoint &upstreamPoint, const ExtremalPoint &downstreamPoint)
 Constructor. More...
 
const pandora::ParticleFlowObject * GetPfo () const
 Get the pfo. More...
 
void SetPfo (const pandora::ParticleFlowObject *pPfo)
 Set the pfo. More...
 
const ThreeDSlidingFitResultGetSlidingFitResult () const
 Get the pfo's 3D sliding fit result. More...
 
const pandora::ParticleFlowObject * GetPredictedParentPfo () const
 Get the best matched parent pfo. More...
 
void SetPredictedParentPfo (const pandora::ParticleFlowObject *pPredictedParentPfo)
 Set the best matched parent pfo. More...
 
const pandora::ParticleFlowObject * GetParentPfo () const
 Get the parent pfo. More...
 
void SetParentPfo (const pandora::ParticleFlowObject *pParentPfo)
 Set the parent pfo. More...
 
const pandora::PfoVector & GetChildPfoVector () const
 Get the vector of child pfos. More...
 
void AddChildPfo (const pandora::ParticleFlowObject *const pChildPfo)
 Add a child pfo to the child pfo vector. More...
 
const ExtremalPointGetUpstreamPoint () const
 Get the upstream extremal point. More...
 
void SetUpstreamPoint (const ExtremalPoint &upstreamPoint)
 Set the upstream extremal point. More...
 
const ExtremalPointGetDownstreamPoint () const
 Get the downstream extremal point. More...
 
void SetDownstreamPoint (const ExtremalPoint &downstreamPoint)
 Set the downstream extremal point. More...
 
float GetPrimaryScore () const
 Get the primary network score. More...
 
void SetPrimaryScore (const float primaryScore)
 Set the primary network score. More...
 
float GetLaterTierScore () const
 Get the later tier network score. More...
 
void SetLaterTierScore (const float laterTierScore)
 Set the later tier network score. More...
 
bool GetIsInHierarchy () const
 Get whether the pfo has been assigned to a particle hierarchy. More...
 
void SetIsInHierarchy (const bool isInHierarchy)
 Set whether the pfo has been assigned to a particle hierarchy. More...
 
bool operator== (const HierarchyPfo &rhs) const
 HierarchyPfo == operator. More...
 
bool operator== (const pandora::ParticleFlowObject *const rhs) const
 HierarchyPfo == operator. More...
 

Private Attributes

const pandora::ParticleFlowObject * m_pPfo
 a pointer to the corresponding pfo More...
 
ThreeDSlidingFitResult m_slidingFitResult
 the 3D sliding fit result of the pfo More...
 
const pandora::ParticleFlowObject * m_pPredictedParentPfo
 a pointer to the best matched parent pfo More...
 
const pandora::ParticleFlowObject * m_pParentPfo
 a pointer to the assigned parent pfo More...
 
pandora::PfoVector m_childPfoVector
 the vector of pointers to the assigned child pfos More...
 
ExtremalPoint m_upstreamPoint
 The extremal point that lies closest to the neutrino vertex. More...
 
ExtremalPoint m_downstreamPoint
 The extremal point that lies furthest from the neutrino vertex. More...
 
float m_primaryScore
 the primary network score More...
 
float m_laterTierScore
 the later tier network score More...
 
bool m_isInHierarchy
 whether the pfo has been assigned to a particle hierarchy More...
 

Detailed Description

HierarchyPfo class.

Definition at line 82 of file LArHierarchyPfo.h.

Constructor & Destructor Documentation

lar_dl_content::HierarchyPfo::HierarchyPfo ( )

Default constructor.

lar_dl_content::HierarchyPfo::HierarchyPfo ( const pandora::ParticleFlowObject *  pPfo,
const ThreeDSlidingFitResult threeDSlidingFitResult,
const ExtremalPoint upstreamPoint,
const ExtremalPoint downstreamPoint 
)
inline

Constructor.

Parameters
pPfopointer to the input pfo
threeDSlidingFitResult3D sliding fit of the input pfo
upstreamPointthe extremal point closest to the neutrino vertex
downstreamPointthe extremal point furthest from the neutrino vertex

Definition at line 324 of file LArHierarchyPfo.h.

325  :
326  m_pPfo(pPfo),
327  m_slidingFitResult(slidingFitResult),
328  m_pPredictedParentPfo(nullptr),
329  m_pParentPfo(nullptr),
330  m_childPfoVector(pandora::PfoVector()),
331  m_upstreamPoint(upstreamPoint),
332  m_downstreamPoint(downstreamPoint),
333  m_primaryScore(-std::numeric_limits<float>::max()),
334  m_laterTierScore(-std::numeric_limits<float>::max()),
335  m_isInHierarchy(false)
336 {
337 }
pandora::PfoVector m_childPfoVector
the vector of pointers to the assigned child pfos
ExtremalPoint m_downstreamPoint
The extremal point that lies furthest from the neutrino vertex.
ThreeDSlidingFitResult m_slidingFitResult
the 3D sliding fit result of the pfo
float m_laterTierScore
the later tier network score
float m_primaryScore
the primary network score
const pandora::ParticleFlowObject * m_pPredictedParentPfo
a pointer to the best matched parent pfo
ExtremalPoint m_upstreamPoint
The extremal point that lies closest to the neutrino vertex.
const pandora::ParticleFlowObject * m_pPfo
a pointer to the corresponding pfo
bool m_isInHierarchy
whether the pfo has been assigned to a particle hierarchy
const pandora::ParticleFlowObject * m_pParentPfo
a pointer to the assigned parent pfo

Member Function Documentation

void lar_dl_content::HierarchyPfo::AddChildPfo ( const pandora::ParticleFlowObject *const  pChildPfo)
inline

Add a child pfo to the child pfo vector.

Parameters
pChildPfothe pointer to the child pfo to add

Definition at line 397 of file LArHierarchyPfo.h.

References m_childPfoVector.

398 {
399  m_childPfoVector.emplace_back(pChildPfo);
400 }
pandora::PfoVector m_childPfoVector
the vector of pointers to the assigned child pfos
const pandora::PfoVector & lar_dl_content::HierarchyPfo::GetChildPfoVector ( ) const
inline

Get the vector of child pfos.

Returns
the vector of pointers to child pfos

Definition at line 390 of file LArHierarchyPfo.h.

References m_childPfoVector.

Referenced by lar_dl_content::DLNeutrinoHierarchyAlgorithm::BuildPandoraHierarchy().

391 {
392  return m_childPfoVector;
393 }
pandora::PfoVector m_childPfoVector
the vector of pointers to the assigned child pfos
const ExtremalPoint & lar_dl_content::HierarchyPfo::GetDownstreamPoint ( ) const
inline
bool lar_dl_content::HierarchyPfo::GetIsInHierarchy ( ) const
inline

Get whether the pfo has been assigned to a particle hierarchy.

Returns
whether the pfo has been assigned to a particle hierarchy

Definition at line 460 of file LArHierarchyPfo.h.

References m_isInHierarchy.

Referenced by lar_dl_content::DLNeutrinoHierarchyAlgorithm::BuildPandoraHierarchy().

461 {
462  return m_isInHierarchy;
463 }
bool m_isInHierarchy
whether the pfo has been assigned to a particle hierarchy
float lar_dl_content::HierarchyPfo::GetLaterTierScore ( ) const
inline

Get the later tier network score.

Returns
the later tier network score

Definition at line 446 of file LArHierarchyPfo.h.

References m_laterTierScore.

447 {
448  return m_laterTierScore;
449 }
float m_laterTierScore
the later tier network score
const pandora::ParticleFlowObject * lar_dl_content::HierarchyPfo::GetParentPfo ( ) const
inline

Get the parent pfo.

Returns
a pointer to the parent pfo

Definition at line 376 of file LArHierarchyPfo.h.

References m_pParentPfo.

Referenced by lar_dl_content::DLNeutrinoHierarchyAlgorithm::BuildPandoraHierarchy().

377 {
378  return m_pParentPfo;
379 }
const pandora::ParticleFlowObject * m_pParentPfo
a pointer to the assigned parent pfo
const pandora::ParticleFlowObject * lar_dl_content::HierarchyPfo::GetPredictedParentPfo ( ) const
inline

Get the best matched parent pfo.

Returns
a pointer to the best matched parent pfo

Definition at line 362 of file LArHierarchyPfo.h.

References m_pPredictedParentPfo.

363 {
364  return m_pPredictedParentPfo;
365 }
const pandora::ParticleFlowObject * m_pPredictedParentPfo
a pointer to the best matched parent pfo
float lar_dl_content::HierarchyPfo::GetPrimaryScore ( ) const
inline

Get the primary network score.

Returns
the primary network score

Definition at line 432 of file LArHierarchyPfo.h.

References m_primaryScore.

433 {
434  return m_primaryScore;
435 }
float m_primaryScore
the primary network score
const ThreeDSlidingFitResult & lar_dl_content::HierarchyPfo::GetSlidingFitResult ( ) const
inline

Get the pfo's 3D sliding fit result.

Returns
the 3D sliding fit result

Definition at line 355 of file LArHierarchyPfo.h.

References m_slidingFitResult.

Referenced by lar_dl_content::DLLaterTierHierarchyTool::SetConnectionParams().

356 {
357  return m_slidingFitResult;
358 }
ThreeDSlidingFitResult m_slidingFitResult
the 3D sliding fit result of the pfo
const ExtremalPoint & lar_dl_content::HierarchyPfo::GetUpstreamPoint ( ) const
inline
bool lar_dl_content::HierarchyPfo::operator== ( const HierarchyPfo rhs) const
inline

HierarchyPfo == operator.

Parameters
rhsthe HierarchyPfo to compare

Definition at line 474 of file LArHierarchyPfo.h.

References GetPfo().

475 {
476  return this->GetPfo() == rhs.GetPfo();
477 }
const pandora::ParticleFlowObject * GetPfo() const
Get the pfo.
bool lar_dl_content::HierarchyPfo::operator== ( const pandora::ParticleFlowObject *const  rhs) const
inline

HierarchyPfo == operator.

Parameters
rhsthe pfo to compare

Definition at line 481 of file LArHierarchyPfo.h.

References GetPfo().

482 {
483  return this->GetPfo() == rhs;
484 }
const pandora::ParticleFlowObject * GetPfo() const
Get the pfo.
void lar_dl_content::HierarchyPfo::SetDownstreamPoint ( const ExtremalPoint downstreamPoint)
inline

Set the downstream extremal point.

Parameters
downstreamPointthe downstream extremal point

Definition at line 425 of file LArHierarchyPfo.h.

References m_downstreamPoint.

426 {
427  m_downstreamPoint = downstreamPoint;
428 }
ExtremalPoint m_downstreamPoint
The extremal point that lies furthest from the neutrino vertex.
void lar_dl_content::HierarchyPfo::SetIsInHierarchy ( const bool  isInHierarchy)
inline

Set whether the pfo has been assigned to a particle hierarchy.

Parameters
isInHierarchywhether the pfo has been assigned to a particle hierarchy

Definition at line 467 of file LArHierarchyPfo.h.

References m_isInHierarchy.

468 {
469  m_isInHierarchy = isInHierarchy;
470 }
bool m_isInHierarchy
whether the pfo has been assigned to a particle hierarchy
void lar_dl_content::HierarchyPfo::SetLaterTierScore ( const float  laterTierScore)
inline

Set the later tier network score.

Parameters
thelater tier network score

Definition at line 453 of file LArHierarchyPfo.h.

References m_laterTierScore.

454 {
455  m_laterTierScore = laterTierScore;
456 }
float m_laterTierScore
the later tier network score
void lar_dl_content::HierarchyPfo::SetParentPfo ( const pandora::ParticleFlowObject *  pParentPfo)
inline

Set the parent pfo.

Parameters
pParentPfoa pointer to the parent pfo

Definition at line 383 of file LArHierarchyPfo.h.

References m_pParentPfo.

384 {
385  m_pParentPfo = pParentPfo;
386 }
const pandora::ParticleFlowObject * m_pParentPfo
a pointer to the assigned parent pfo
void lar_dl_content::HierarchyPfo::SetPfo ( const pandora::ParticleFlowObject *  pPfo)
inline

Set the pfo.

Parameters
pPfoa pointer to the pfo

Definition at line 348 of file LArHierarchyPfo.h.

References m_pPfo.

349 {
350  m_pPfo = pPfo;
351 }
const pandora::ParticleFlowObject * m_pPfo
a pointer to the corresponding pfo
void lar_dl_content::HierarchyPfo::SetPredictedParentPfo ( const pandora::ParticleFlowObject *  pPredictedParentPfo)
inline

Set the best matched parent pfo.

Parameters
pPredictedParentPfoa pointer to the best matched parent pfo

Definition at line 369 of file LArHierarchyPfo.h.

References m_pPredictedParentPfo.

370 {
371  m_pPredictedParentPfo = pPredictedParentPfo;
372 }
const pandora::ParticleFlowObject * m_pPredictedParentPfo
a pointer to the best matched parent pfo
void lar_dl_content::HierarchyPfo::SetPrimaryScore ( const float  primaryScore)
inline

Set the primary network score.

Parameters
theprimary network score

Definition at line 439 of file LArHierarchyPfo.h.

References m_primaryScore.

440 {
441  m_primaryScore = primaryScore;
442 }
float m_primaryScore
the primary network score
void lar_dl_content::HierarchyPfo::SetUpstreamPoint ( const ExtremalPoint upstreamPoint)
inline

Set the upstream extremal point.

Parameters
upstreamPointthe upstream extremal point

Definition at line 411 of file LArHierarchyPfo.h.

References m_upstreamPoint.

412 {
413  m_upstreamPoint = upstreamPoint;
414 }
ExtremalPoint m_upstreamPoint
The extremal point that lies closest to the neutrino vertex.

Member Data Documentation

pandora::PfoVector lar_dl_content::HierarchyPfo::m_childPfoVector
private

the vector of pointers to the assigned child pfos

Definition at line 253 of file LArHierarchyPfo.h.

Referenced by AddChildPfo(), and GetChildPfoVector().

ExtremalPoint lar_dl_content::HierarchyPfo::m_downstreamPoint
private

The extremal point that lies furthest from the neutrino vertex.

Definition at line 255 of file LArHierarchyPfo.h.

Referenced by GetDownstreamPoint(), and SetDownstreamPoint().

bool lar_dl_content::HierarchyPfo::m_isInHierarchy
private

whether the pfo has been assigned to a particle hierarchy

Definition at line 258 of file LArHierarchyPfo.h.

Referenced by GetIsInHierarchy(), and SetIsInHierarchy().

float lar_dl_content::HierarchyPfo::m_laterTierScore
private

the later tier network score

Definition at line 257 of file LArHierarchyPfo.h.

Referenced by GetLaterTierScore(), and SetLaterTierScore().

const pandora::ParticleFlowObject* lar_dl_content::HierarchyPfo::m_pParentPfo
private

a pointer to the assigned parent pfo

Definition at line 252 of file LArHierarchyPfo.h.

Referenced by GetParentPfo(), and SetParentPfo().

const pandora::ParticleFlowObject* lar_dl_content::HierarchyPfo::m_pPfo
private

a pointer to the corresponding pfo

Definition at line 249 of file LArHierarchyPfo.h.

Referenced by GetPfo(), and SetPfo().

const pandora::ParticleFlowObject* lar_dl_content::HierarchyPfo::m_pPredictedParentPfo
private

a pointer to the best matched parent pfo

Definition at line 251 of file LArHierarchyPfo.h.

Referenced by GetPredictedParentPfo(), and SetPredictedParentPfo().

float lar_dl_content::HierarchyPfo::m_primaryScore
private

the primary network score

Definition at line 256 of file LArHierarchyPfo.h.

Referenced by GetPrimaryScore(), and SetPrimaryScore().

ThreeDSlidingFitResult lar_dl_content::HierarchyPfo::m_slidingFitResult
private

the 3D sliding fit result of the pfo

Definition at line 250 of file LArHierarchyPfo.h.

Referenced by GetSlidingFitResult().

ExtremalPoint lar_dl_content::HierarchyPfo::m_upstreamPoint
private

The extremal point that lies closest to the neutrino vertex.

Definition at line 254 of file LArHierarchyPfo.h.

Referenced by GetUpstreamPoint(), and SetUpstreamPoint().


The documentation for this class was generated from the following file: