ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHRaveVertexing Class Reference

Refit SvtxTracks with PHGenFit. More...

#include <coresoftware/blob/master/offline/packages/trackreco/PHRaveVertexing.h>

+ Inheritance diagram for PHRaveVertexing:
+ Collaboration diagram for PHRaveVertexing:

Public Types

typedef std::map< const
genfit::Track *, unsigned int
GenFitTrackMap
 

Public Member Functions

 PHRaveVertexing (const std::string &name="PHRaveVertexing")
 Default constructor.
 
 ~PHRaveVertexing () override
 dtor
 
int Init (PHCompositeNode *) override
 Initialization, called for initialization.
 
int InitRun (PHCompositeNode *) override
 Initialization Run, called for initialization of a run.
 
int process_event (PHCompositeNode *) override
 Process Event, called for each event.
 
int End (PHCompositeNode *) override
 End, write and close files.
 
const std::string & get_vertexing_method () const
 
void set_vertexing_method (const std::string &vertexingMethod)
 
int get_primary_pid_guess () const
 
void set_primary_pid_guess (int primaryPidGuess)
 
bool is_over_write_svtxvertexmap () const
 
void set_over_write_svtxvertexmap (bool overWriteSvtxvertexmap)
 
void set_svtxvertexmaprefit_node_name (const std::string &name)
 
double get_vertex_min_ndf () const
 
void set_vertex_min_ndf (double vertexMinPT)
 
void set_nmvtx_clusters_required (unsigned int n)
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int EndRun (const int)
 Called at the end of each run.
 
virtual int Reset (PHCompositeNode *)
 Reset.
 
virtual int ResetEvent (PHCompositeNode *)
 Clean up after each event.
 
void Print (const std::string &="ALL") const override
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Private Member Functions

int GetNodes (PHCompositeNode *)
 Get all the nodes.
 
int CreateNodes (PHCompositeNode *)
 Create New nodes.
 
genfit::Track * TranslateSvtxToGenFitTrack (SvtxTrack *svtx)
 
bool FillSvtxVertexMap (const std::vector< genfit::GFRaveVertex * > &rave_vertices, const GenFitTrackMap &gf_track_map)
 Fill SvtxVertexMap from GFRaveVertexes and Tracks.
 

Private Attributes

int _event
 Event counter.
 
bool _over_write_svtxvertexmap
 
std::string _svtxvertexmaprefit_node_name
 
PHGenFit::Fitter_fitter
 
int _primary_pid_guess
 
double _vertex_min_ndf
 
unsigned int _nmvtx_required = 3
 
genfit::GFRaveVertexFactory * _vertex_finder
 
std::string _vertexing_method
 https://rave.hepforge.org/trac/wiki/RaveMethods
 
SvtxTrackMap_trackmap
 Input Node pointers.
 
SvtxVertexMap_vertexmap
 
SvtxVertexMap_vertexmap_refit
 Output Node pointers.
 
PHTimer_t_translate
 
PHTimer_t_rave
 

Additional Inherited Members

- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

Refit SvtxTracks with PHGenFit.

Definition at line 37 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 37 of file PHRaveVertexing.h

Member Typedef Documentation

typedef std::map<const genfit::Track*, unsigned int> PHRaveVertexing::GenFitTrackMap

Definition at line 40 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 40 of file PHRaveVertexing.h

Constructor & Destructor Documentation

PHRaveVertexing::PHRaveVertexing ( const std::string &  name = "PHRaveVertexing")

Default constructor.

Definition at line 75 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 75 of file PHRaveVertexing.cc

References _event, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

PHRaveVertexing::~PHRaveVertexing ( )
override

dtor

Definition at line 241 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 241 of file PHRaveVertexing.cc

References _fitter, and _vertex_finder.

Member Function Documentation

int PHRaveVertexing::CreateNodes ( PHCompositeNode topNode)
private

Create New nodes.

Definition at line 247 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 247 of file PHRaveVertexing.cc

References _over_write_svtxvertexmap, _svtxvertexmaprefit_node_name, _vertexmap, _vertexmap_refit, Fun4AllReturnCodes::ABORTEVENT, PHCompositeNode::addNode(), Fun4AllReturnCodes::EVENT_OK, PHNodeIterator::findFirst(), PHWHERE, and Fun4AllBase::Verbosity().

Referenced by InitRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHRaveVertexing::End ( PHCompositeNode )
overridevirtual

End, write and close files.

Reimplemented from SubsysReco.

Definition at line 233 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 233 of file PHRaveVertexing.cc

References Fun4AllReturnCodes::EVENT_OK.

bool PHRaveVertexing::FillSvtxVertexMap ( const std::vector< genfit::GFRaveVertex * > &  rave_vertices,
const GenFitTrackMap gf_track_map 
)
private

Fill SvtxVertexMap from GFRaveVertexes and Tracks.

Definition at line 338 of file PHRaveVertexing.cc.

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

References _over_write_svtxvertexmap, _vertexmap, _vertexmap_refit, SvtxVertexMap::clear(), SvtxVertexMap::insert_clone(), LogError, and PHWHERE.

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHRaveVertexing::get_primary_pid_guess ( ) const
inline

Definition at line 70 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 70 of file PHRaveVertexing.h

References _primary_pid_guess.

double PHRaveVertexing::get_vertex_min_ndf ( ) const
inline

Definition at line 92 of file PHRaveVertexing.h.

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

References _vertex_min_ndf.

const std::string& PHRaveVertexing::get_vertexing_method ( ) const
inline

Definition at line 60 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 60 of file PHRaveVertexing.h

References _vertexing_method.

int PHRaveVertexing::GetNodes ( PHCompositeNode topNode)
private

Get all the nodes.

Definition at line 298 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 298 of file PHRaveVertexing.cc

References _event, _over_write_svtxvertexmap, _svtxvertexmaprefit_node_name, _trackmap, _vertexmap, _vertexmap_refit, Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::EVENT_OK, and PHWHERE.

Referenced by process_event().

+ Here is the caller graph for this function:

int PHRaveVertexing::Init ( PHCompositeNode )
overridevirtual

Initialization, called for initialization.

Reimplemented from SubsysReco.

Definition at line 98 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 98 of file PHRaveVertexing.cc

References Fun4AllReturnCodes::EVENT_OK.

int PHRaveVertexing::InitRun ( PHCompositeNode topNode)
overridevirtual

Initialization Run, called for initialization of a run.

Reimplemented from SubsysReco.

Definition at line 106 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 106 of file PHRaveVertexing.cc

References _fitter, _t_rave, _t_translate, _vertex_finder, _vertexing_method, Fun4AllReturnCodes::ABORTRUN, CreateNodes(), Fun4AllReturnCodes::EVENT_OK, PHFieldUtility::GetFieldMapNode(), PHGenFit::Fitter::getInstance(), PHGeomUtility::GetTGeoManager(), PHWHERE, PHGenFit::Fitter::set_verbosity(), PHTimer::stop(), and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

bool PHRaveVertexing::is_over_write_svtxvertexmap ( ) const
inline

Definition at line 80 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 80 of file PHRaveVertexing.h

References _over_write_svtxvertexmap.

int PHRaveVertexing::process_event ( PHCompositeNode topNode)
overridevirtual

Process Event, called for each event.

process_event(): Call user instructions for every event. This function contains the analysis structure.

stands for Refit_GenFit_Tracks

Reimplemented from SubsysReco.

Definition at line 149 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 149 of file PHRaveVertexing.cc

References _event, _nmvtx_required, _t_rave, _t_translate, _trackmap, _vertex_finder, _vertex_min_ndf, _vertexmap, SvtxTrackMap::begin(), SvtxTrack::begin_cluster_keys(), SvtxTrackMap::end(), SvtxTrack::end_cluster_keys(), Fun4AllReturnCodes::EVENT_OK, FillSvtxVertexMap(), PHTimer::get_accumulated_time(), SvtxTrack::get_ndf(), GetNodes(), TrkrDefs::getTrkrId(), SvtxVertexMap::identify(), TrkrDefs::mvtxId, PHWHERE, PHTimer::restart(), PHTimer::stop(), TranslateSvtxToGenFitTrack(), and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

void PHRaveVertexing::set_nmvtx_clusters_required ( unsigned int  n)
inline

Definition at line 102 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 102 of file PHRaveVertexing.h

References _nmvtx_required, and n.

void PHRaveVertexing::set_over_write_svtxvertexmap ( bool  overWriteSvtxvertexmap)
inline

Definition at line 85 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 85 of file PHRaveVertexing.h

References _over_write_svtxvertexmap.

void PHRaveVertexing::set_primary_pid_guess ( int  primaryPidGuess)
inline

Definition at line 75 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 75 of file PHRaveVertexing.h

References _primary_pid_guess.

void PHRaveVertexing::set_svtxvertexmaprefit_node_name ( const std::string &  name)
inline

Definition at line 90 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 90 of file PHRaveVertexing.h

References _svtxvertexmaprefit_node_name.

void PHRaveVertexing::set_vertex_min_ndf ( double  vertexMinPT)
inline

Definition at line 97 of file PHRaveVertexing.h.

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

References _vertex_min_ndf.

void PHRaveVertexing::set_vertexing_method ( const std::string &  vertexingMethod)
inline

Definition at line 65 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 65 of file PHRaveVertexing.h

References _vertexing_method.

genfit::Track * PHRaveVertexing::TranslateSvtxToGenFitTrack ( SvtxTrack svtx)
private

Definition at line 417 of file PHRaveVertexing.cc.

View newest version in sPHENIX GitHub at line 417 of file PHRaveVertexing.cc

References _primary_pid_guess, SvtxTrack::begin_states(), SvtxTrack::end_states(), Acts::UnitConstants::fs, SvtxTrack::get_charge(), SvtxTrack::get_chisq(), SvtxTrackState::get_error(), SvtxTrack::get_ndf(), SvtxTrackState::get_pathlength(), SvtxTrackState::get_px(), SvtxTrackState::get_py(), SvtxTrackState::get_pz(), SvtxTrackState::get_x(), SvtxTrackState::get_y(), SvtxTrackState::get_z(), LogDebug, mom, ms, pos(), second, and G4InuclParticleNames::tp.

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

int PHRaveVertexing::_event
private

Event counter.

Definition at line 109 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 109 of file PHRaveVertexing.h

Referenced by GetNodes(), PHRaveVertexing(), and process_event().

PHGenFit::Fitter* PHRaveVertexing::_fitter
private

Definition at line 127 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 127 of file PHRaveVertexing.h

Referenced by InitRun(), and ~PHRaveVertexing().

unsigned int PHRaveVertexing::_nmvtx_required = 3
private

Definition at line 132 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 132 of file PHRaveVertexing.h

Referenced by process_event(), and set_nmvtx_clusters_required().

bool PHRaveVertexing::_over_write_svtxvertexmap
private

Definition at line 124 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 124 of file PHRaveVertexing.h

Referenced by CreateNodes(), FillSvtxVertexMap(), GetNodes(), is_over_write_svtxvertexmap(), and set_over_write_svtxvertexmap().

int PHRaveVertexing::_primary_pid_guess
private

Definition at line 129 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 129 of file PHRaveVertexing.h

Referenced by get_primary_pid_guess(), set_primary_pid_guess(), and TranslateSvtxToGenFitTrack().

std::string PHRaveVertexing::_svtxvertexmaprefit_node_name
private

Definition at line 125 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 125 of file PHRaveVertexing.h

Referenced by CreateNodes(), GetNodes(), and set_svtxvertexmaprefit_node_name().

PHTimer* PHRaveVertexing::_t_rave
private

Definition at line 147 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 147 of file PHRaveVertexing.h

Referenced by InitRun(), and process_event().

PHTimer* PHRaveVertexing::_t_translate
private

Definition at line 146 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 146 of file PHRaveVertexing.h

Referenced by InitRun(), and process_event().

SvtxTrackMap* PHRaveVertexing::_trackmap
private

Input Node pointers.

Definition at line 140 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 140 of file PHRaveVertexing.h

Referenced by GetNodes(), and process_event().

genfit::GFRaveVertexFactory* PHRaveVertexing::_vertex_finder
private

Definition at line 134 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 134 of file PHRaveVertexing.h

Referenced by InitRun(), process_event(), and ~PHRaveVertexing().

double PHRaveVertexing::_vertex_min_ndf
private

Definition at line 130 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 130 of file PHRaveVertexing.h

Referenced by get_vertex_min_ndf(), process_event(), and set_vertex_min_ndf().

std::string PHRaveVertexing::_vertexing_method
private

https://rave.hepforge.org/trac/wiki/RaveMethods

Definition at line 137 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 137 of file PHRaveVertexing.h

Referenced by get_vertexing_method(), InitRun(), and set_vertexing_method().

SvtxVertexMap* PHRaveVertexing::_vertexmap
private

Definition at line 141 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 141 of file PHRaveVertexing.h

Referenced by CreateNodes(), FillSvtxVertexMap(), GetNodes(), and process_event().

SvtxVertexMap* PHRaveVertexing::_vertexmap_refit
private

Output Node pointers.

Definition at line 144 of file PHRaveVertexing.h.

View newest version in sPHENIX GitHub at line 144 of file PHRaveVertexing.h

Referenced by CreateNodes(), FillSvtxVertexMap(), and GetNodes().


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