Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SvtxVertexEval Class Reference

#include <coresoftware/blob/master/simulation/g4simulation/g4eval/SvtxVertexEval.h>

+ Collaboration diagram for SvtxVertexEval:

Public Member Functions

 SvtxVertexEval (PHCompositeNode *topNode)
 
virtual ~SvtxVertexEval ()
 
void next_event (PHCompositeNode *topNode)
 
void do_caching (bool do_cache)
 
void set_strict (bool strict)
 
void set_verbosity (int verbosity)
 
SvtxTrackEvalget_track_eval ()
 
SvtxClusterEvalget_cluster_eval ()
 
SvtxHitEvalget_hit_eval ()
 
SvtxTruthEvalget_truth_eval ()
 
std::set< PHG4Particle * > all_truth_particles (const Vertex *vertex)
 
std::set< PHG4VtxPoint * > all_truth_points (const Vertex *vertex)
 
PHG4VtxPointmax_truth_point_by_ntracks (const Vertex *vertex)
 
std::set< const Vertex * > all_vertexes_from (PHG4VtxPoint *truthpoint)
 
const Vertexbest_vertex_from (PHG4VtxPoint *truthpoint)
 
unsigned int get_ntracks_contribution (const Vertex *svtxvertex, PHG4VtxPoint *truthpoint)
 
unsigned int get_errors ()
 
void set_use_initial_vertex (bool use_init_vertex)
 
void set_use_genfit_vertex (bool use_genfit_vertex)
 
void set_track_nodename (const std::string &name)
 

Private Member Functions

void get_node_pointers (PHCompositeNode *topNode)
 
bool has_node_pointers ()
 

Private Attributes

SvtxTrackEval _trackeval
 
SvtxVertexMap_vertexmap = nullptr
 
SvtxTrackMap_trackmap = nullptr
 
PHG4TruthInfoContainer_truthinfo = nullptr
 
bool _strict = false
 
bool _use_initial_vertex = true
 
bool _use_genfit_vertex = false
 
int _verbosity = 0
 
unsigned int _errors = 0
 
bool _do_cache = true
 
std::map< const Vertex
*, std::set< PHG4Particle * > > 
_cache_all_truth_particles
 
std::map< const Vertex
*, std::set< PHG4VtxPoint * > > 
_cache_all_truth_points
 
std::map< const Vertex
*, PHG4VtxPoint * > 
_cache_max_truth_point_by_ntracks
 
std::map< PHG4VtxPoint
*, std::set< const Vertex * > > 
_cache_all_vertexes_from_point
 
std::map< PHG4VtxPoint
*, const Vertex * > 
_cache_best_vertex_from_point
 
std::map< std::pair< const
Vertex *, PHG4VtxPoint * >
, unsigned int > 
_cache_get_ntracks_contribution
 
std::string m_TrackNodeName
 

Detailed Description

Definition at line 26 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 26 of file SvtxVertexEval.h

Constructor & Destructor Documentation

SvtxVertexEval::SvtxVertexEval ( PHCompositeNode topNode)

Definition at line 22 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 22 of file SvtxVertexEval.cc

References set_track_nodename().

+ Here is the call graph for this function:

SvtxVertexEval::~SvtxVertexEval ( )
virtual

Definition at line 28 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 28 of file SvtxVertexEval.cc

References _errors, and _verbosity.

Member Function Documentation

std::set< PHG4Particle * > SvtxVertexEval::all_truth_particles ( const Vertex vertex)

Definition at line 53 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 53 of file SvtxVertexEval.cc

References _cache_all_truth_particles, _do_cache, _errors, _strict, _trackeval, _trackmap, assert, Vertex::begin_tracks(), Vertex::end_tracks(), SvtxTrackMap::get(), has_node_pointers(), and SvtxTrackEval::max_truth_particle_by_nclusters().

Referenced by all_truth_points().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::set< PHG4VtxPoint * > SvtxVertexEval::all_truth_points ( const Vertex vertex)

Definition at line 123 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 123 of file SvtxVertexEval.cc

References _cache_all_truth_points, _do_cache, _errors, _strict, all_truth_particles(), assert, get_truth_eval(), SvtxTruthEval::get_vertex(), has_node_pointers(), particle, and particles.

Referenced by all_vertexes_from(), and max_truth_point_by_ntracks().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::set< const Vertex * > SvtxVertexEval::all_vertexes_from ( PHG4VtxPoint truthpoint)

Definition at line 230 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 230 of file SvtxVertexEval.cc

References _cache_all_vertexes_from_point, _do_cache, _errors, _strict, _vertexmap, all_truth_points(), assert, get_truth_eval(), and has_node_pointers().

Referenced by best_vertex_from().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const Vertex * SvtxVertexEval::best_vertex_from ( PHG4VtxPoint truthpoint)

Definition at line 283 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 283 of file SvtxVertexEval.cc

References _cache_best_vertex_from_point, _do_cache, _errors, _strict, all_vertexes_from(), assert, test_fpe::count, get_ntracks_contribution(), has_node_pointers(), it, and tracks().

Referenced by psTOFTimezeroEval::fillOutputNtuples(), SvtxEvaluatorHaiwang::fillOutputNtuples(), and SvtxEvaluator::fillOutputNtuples().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SvtxVertexEval::do_caching ( bool  do_cache)
inline

Definition at line 33 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 33 of file SvtxVertexEval.h

References _do_cache, _trackeval, and SvtxTrackEval::do_caching().

Referenced by SvtxEvalStack::do_caching().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

SvtxClusterEval* SvtxVertexEval::get_cluster_eval ( )
inline

Definition at line 51 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 51 of file SvtxVertexEval.h

References _trackeval, and SvtxTrackEval::get_cluster_eval().

Referenced by SvtxEvalStack::get_cluster_eval().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

unsigned int SvtxVertexEval::get_errors ( )
inline

Definition at line 69 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 69 of file SvtxVertexEval.h

References _errors, _trackeval, and SvtxTrackEval::get_errors().

Referenced by SvtxEvalStack::get_errors().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

SvtxHitEval* SvtxVertexEval::get_hit_eval ( )
inline

Definition at line 52 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 52 of file SvtxVertexEval.h

References _trackeval, and SvtxTrackEval::get_hit_eval().

Referenced by SvtxEvalStack::get_hit_eval().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SvtxVertexEval::get_node_pointers ( PHCompositeNode topNode)
private

Definition at line 402 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 402 of file SvtxVertexEval.cc

References _trackmap, _truthinfo, _use_genfit_vertex, _use_initial_vertex, _vertexmap, m_TrackNodeName, and PHWHERE.

Referenced by next_event().

+ Here is the caller graph for this function:

unsigned int SvtxVertexEval::get_ntracks_contribution ( const Vertex svtxvertex,
PHG4VtxPoint truthpoint 
)

Definition at line 338 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 338 of file SvtxVertexEval.cc

References _cache_get_ntracks_contribution, _do_cache, _errors, _strict, _trackeval, _trackmap, assert, Vertex::begin_tracks(), Vertex::end_tracks(), SvtxTrackMap::get(), get_truth_eval(), SvtxTruthEval::get_vertex(), has_node_pointers(), SvtxTrackEval::max_truth_particle_by_nclusters(), ntracks, and particle.

Referenced by best_vertex_from(), SvtxEvaluatorHaiwang::fillOutputNtuples(), psTOFTimezeroEval::fillOutputNtuples(), SvtxEvaluator::fillOutputNtuples(), and max_truth_point_by_ntracks().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

SvtxTrackEval* SvtxVertexEval::get_track_eval ( )
inline

Definition at line 50 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 50 of file SvtxVertexEval.h

References _trackeval.

Referenced by SvtxEvalStack::get_track_eval().

+ Here is the caller graph for this function:

SvtxTruthEval* SvtxVertexEval::get_truth_eval ( )
inline

Definition at line 53 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 53 of file SvtxVertexEval.h

References _trackeval, and SvtxTrackEval::get_truth_eval().

Referenced by all_truth_points(), all_vertexes_from(), get_ntracks_contribution(), and SvtxEvalStack::get_truth_eval().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool SvtxVertexEval::has_node_pointers ( )
private

Definition at line 430 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 430 of file SvtxVertexEval.cc

References _strict, _trackmap, _truthinfo, _vertexmap, assert, and PHWHERE.

Referenced by all_truth_particles(), all_truth_points(), all_vertexes_from(), best_vertex_from(), get_ntracks_contribution(), and max_truth_point_by_ntracks().

+ Here is the caller graph for this function:

PHG4VtxPoint * SvtxVertexEval::max_truth_point_by_ntracks ( const Vertex vertex)

Definition at line 179 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 179 of file SvtxVertexEval.cc

References _cache_max_truth_point_by_ntracks, _do_cache, _errors, _strict, all_truth_points(), assert, get_ntracks_contribution(), has_node_pointers(), and ntracks.

Referenced by psTOFTimezeroEval::fillOutputNtuples(), SvtxEvaluatorHaiwang::fillOutputNtuples(), SvtxEvaluator::fillOutputNtuples(), KFParticle_truthAndDetTools::fillTruthBranch(), SvtxSimPerformanceCheckReco::process_event(), SimpleTrackingAnalysis::process_event(), and QAG4SimulationVertex::process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SvtxVertexEval::next_event ( PHCompositeNode topNode)

Definition at line 39 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 39 of file SvtxVertexEval.cc

References _cache_all_truth_particles, _cache_all_truth_points, _cache_all_vertexes_from_point, _cache_best_vertex_from_point, _cache_get_ntracks_contribution, _cache_max_truth_point_by_ntracks, _trackeval, get_node_pointers(), and SvtxTrackEval::next_event().

Referenced by SvtxEvalStack::next_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SvtxVertexEval::set_strict ( bool  strict)
inline

Definition at line 38 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 38 of file SvtxVertexEval.h

References _strict, _trackeval, and SvtxTrackEval::set_strict().

Referenced by SvtxEvalStack::set_strict().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SvtxVertexEval::set_track_nodename ( const std::string &  name)

Definition at line 465 of file SvtxVertexEval.cc.

View newest version in sPHENIX GitHub at line 465 of file SvtxVertexEval.cc

References _trackeval, m_TrackNodeName, perf_headwind::name, and SvtxTrackEval::set_track_nodename().

Referenced by SvtxEvalStack::set_track_nodename(), and SvtxVertexEval().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SvtxVertexEval::set_use_genfit_vertex ( bool  use_genfit_vertex)
inline

Definition at line 72 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 72 of file SvtxVertexEval.h

References _use_genfit_vertex.

Referenced by SvtxEvalStack::set_use_genfit_vertex().

+ Here is the caller graph for this function:

void SvtxVertexEval::set_use_initial_vertex ( bool  use_init_vertex)
inline

Definition at line 71 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 71 of file SvtxVertexEval.h

References _use_initial_vertex.

Referenced by SvtxEvalStack::set_use_initial_vertex().

+ Here is the caller graph for this function:

void SvtxVertexEval::set_verbosity ( int  verbosity)
inline

Definition at line 43 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 43 of file SvtxVertexEval.h

References _trackeval, _verbosity, SvtxTrackEval::set_verbosity(), and verbosity.

Referenced by SvtxEvalStack::set_verbosity().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

std::map<const Vertex*, std::set<PHG4Particle*> > SvtxVertexEval::_cache_all_truth_particles
private

Definition at line 92 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 92 of file SvtxVertexEval.h

Referenced by all_truth_particles(), and next_event().

std::map<const Vertex*, std::set<PHG4VtxPoint*> > SvtxVertexEval::_cache_all_truth_points
private

Definition at line 93 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 93 of file SvtxVertexEval.h

Referenced by all_truth_points(), and next_event().

std::map<PHG4VtxPoint*, std::set<const Vertex*> > SvtxVertexEval::_cache_all_vertexes_from_point
private

Definition at line 95 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 95 of file SvtxVertexEval.h

Referenced by all_vertexes_from(), and next_event().

std::map<PHG4VtxPoint*, const Vertex*> SvtxVertexEval::_cache_best_vertex_from_point
private

Definition at line 96 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 96 of file SvtxVertexEval.h

Referenced by best_vertex_from(), and next_event().

std::map<std::pair<const Vertex*, PHG4VtxPoint*>, unsigned int> SvtxVertexEval::_cache_get_ntracks_contribution
private

Definition at line 97 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 97 of file SvtxVertexEval.h

Referenced by get_ntracks_contribution(), and next_event().

std::map<const Vertex*, PHG4VtxPoint*> SvtxVertexEval::_cache_max_truth_point_by_ntracks
private

Definition at line 94 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 94 of file SvtxVertexEval.h

Referenced by max_truth_point_by_ntracks(), and next_event().

bool SvtxVertexEval::_do_cache = true
private

Definition at line 91 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 91 of file SvtxVertexEval.h

Referenced by all_truth_particles(), all_truth_points(), all_vertexes_from(), best_vertex_from(), do_caching(), get_ntracks_contribution(), and max_truth_point_by_ntracks().

unsigned int SvtxVertexEval::_errors = 0
private
bool SvtxVertexEval::_strict = false
private
SvtxTrackEval SvtxVertexEval::_trackeval
private
SvtxTrackMap* SvtxVertexEval::_trackmap = nullptr
private

Definition at line 82 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 82 of file SvtxVertexEval.h

Referenced by all_truth_particles(), get_node_pointers(), get_ntracks_contribution(), and has_node_pointers().

PHG4TruthInfoContainer* SvtxVertexEval::_truthinfo = nullptr
private

Definition at line 83 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 83 of file SvtxVertexEval.h

Referenced by get_node_pointers(), and has_node_pointers().

bool SvtxVertexEval::_use_genfit_vertex = false
private

Definition at line 87 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 87 of file SvtxVertexEval.h

Referenced by get_node_pointers(), and set_use_genfit_vertex().

bool SvtxVertexEval::_use_initial_vertex = true
private

Definition at line 86 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 86 of file SvtxVertexEval.h

Referenced by get_node_pointers(), and set_use_initial_vertex().

int SvtxVertexEval::_verbosity = 0
private

Definition at line 88 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 88 of file SvtxVertexEval.h

Referenced by set_verbosity(), and ~SvtxVertexEval().

SvtxVertexMap* SvtxVertexEval::_vertexmap = nullptr
private

Definition at line 81 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 81 of file SvtxVertexEval.h

Referenced by all_vertexes_from(), get_node_pointers(), and has_node_pointers().

std::string SvtxVertexEval::m_TrackNodeName
private

Definition at line 98 of file SvtxVertexEval.h.

View newest version in sPHENIX GitHub at line 98 of file SvtxVertexEval.h

Referenced by get_node_pointers(), and set_track_nodename().


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