CbmRoot
Loading...
Searching...
No Matches
cbm::algo::kfp::V0FinderCutter< V0Type > Class Template Reference

A collection of cuts for V0 production analysis in mCBM. More...

#include <KfpV0FinderCutter.h>

Inheritance diagram for cbm::algo::kfp::V0FinderCutter< V0Type >:
[legend]
Collaboration diagram for cbm::algo::kfp::V0FinderCutter< V0Type >:
[legend]

Classes

struct  CutValues
 
struct  DaughterCuts
 Daughter cuts. More...
 
struct  DaughterProperty
 
struct  KfpFinderCuts
 
struct  ParticleCuts
 
struct  ParticleProperty
 
struct  TrackCuts
 Cuts for tracks on pre-selection stage. More...
 
struct  TrackPidCuts
 Specific track cuts vs. particle ID. More...
 
struct  TrackProperty
 Properties of a track to perform track pre-selection. More...
 

Public Types

template<typename T>
using Range_t = std::array<T, 2>
 A range: [0] – min, [1] – max.
 

Public Member Functions

 V0FinderCutter ()=default
 Default constructor.
 
 V0FinderCutter (const std::string &filename)
 Constructor from path to the parameter file.
 
 V0FinderCutter (const V0FinderCutter &)=default
 Copy constructor.
 
 V0FinderCutter (V0FinderCutter &&)=default
 Move constructor.
 
 ~V0FinderCutter ()=default
 Destructor.
 
V0FinderCutteroperator= (const V0FinderCutter &)=default
 Copy assignment operator.
 
V0FinderCutteroperator= (V0FinderCutter &&)=default
 Move assignment operator.
 
void ApplyCutsToKFParticleFinder (KFParticleFinder *pFinder) const
 Applies cuts to the KFParticleFinder instance.
 
void ReadCutsFromYaml (const std::string &filename)
 Reads parameters from the YAML config.
 
bool SelectParticle (const ParticleProperty &particleProperty) const
 Selects a particle within the cuts (after the KFParticleFinder stage)
 
bool SelectTrack (const TrackProperty &trackProperty) const
 Selects a track (to pass it to the KFParticleFinder stage)
 
void SetCuts (const CutValues &cuts)
 Sets the cuts.
 
std::string ToString () const
 String representation of the class.
 

Static Public Member Functions

static constexpr int GetV0Pdg ()
 Gets the PDG code for V0.
 

Private Attributes

CutValues fCuts
 Cut values of the analysis.
 
std::string fsName {""}
 Name of the cuts (for logs etc.)
 

Detailed Description

template<EV0Type V0Type>
class cbm::algo::kfp::V0FinderCutter< V0Type >

A collection of cuts for V0 production analysis in mCBM.

Template Parameters
V0PdgCodeA PDG code of the V0 particle
Note
This class has a mCBM specific implementation, but the scheme of the implementation should be re-used for V0 finding in full CBM.
Conventions: 1) Daughter particles: 0 -> a + b Lambda -> "a" = "pi-", "b" = "proton" Ks -> "a" = "pi-", "b" = "pi+"

Definition at line 33 of file KfpV0FinderCutter.h.

Member Typedef Documentation

◆ Range_t

template<EV0Type V0Type>
template<typename T>
using cbm::algo::kfp::V0FinderCutter< V0Type >::Range_t = std::array<T, 2>

A range: [0] – min, [1] – max.

Definition at line 36 of file KfpV0FinderCutter.h.

Constructor & Destructor Documentation

◆ V0FinderCutter() [1/4]

template<EV0Type V0Type>
cbm::algo::kfp::V0FinderCutter< V0Type >::V0FinderCutter ( )
default

Default constructor.

◆ V0FinderCutter() [2/4]

template<EV0Type V0Type>
V0FinderCutter::V0FinderCutter ( const std::string & filename)

Constructor from path to the parameter file.

Parameters
filenameName of the config file

Definition at line 25 of file KfpV0FinderCutter.cxx.

References fCuts.

◆ V0FinderCutter() [3/4]

template<EV0Type V0Type>
cbm::algo::kfp::V0FinderCutter< V0Type >::V0FinderCutter ( const V0FinderCutter< V0Type > & )
default

Copy constructor.

◆ V0FinderCutter() [4/4]

template<EV0Type V0Type>
cbm::algo::kfp::V0FinderCutter< V0Type >::V0FinderCutter ( V0FinderCutter< V0Type > && )
default

Move constructor.

◆ ~V0FinderCutter()

template<EV0Type V0Type>
cbm::algo::kfp::V0FinderCutter< V0Type >::~V0FinderCutter ( )
default

Destructor.

Member Function Documentation

◆ ApplyCutsToKFParticleFinder()

template<EV0Type V0Type>
void V0FinderCutter::ApplyCutsToKFParticleFinder ( KFParticleFinder * pFinder) const

Applies cuts to the KFParticleFinder instance.

Parameters
pFinderA pointer to KFParticleFinder instance

Definition at line 34 of file KfpV0FinderCutter.cxx.

References fCuts.

◆ GetV0Pdg()

template<EV0Type V0Type>
static constexpr int cbm::algo::kfp::V0FinderCutter< V0Type >::GetV0Pdg ( )
inlinestaticconstexpr

Gets the PDG code for V0.

Definition at line 208 of file KfpV0FinderCutter.h.

◆ operator=() [1/2]

template<EV0Type V0Type>
V0FinderCutter & cbm::algo::kfp::V0FinderCutter< V0Type >::operator= ( const V0FinderCutter< V0Type > & )
default

Copy assignment operator.

◆ operator=() [2/2]

template<EV0Type V0Type>
V0FinderCutter & cbm::algo::kfp::V0FinderCutter< V0Type >::operator= ( V0FinderCutter< V0Type > && )
default

Move assignment operator.

◆ ReadCutsFromYaml()

template<EV0Type V0Type>
void V0FinderCutter::ReadCutsFromYaml ( const std::string & filename)

Reads parameters from the YAML config.

Parameters
filenameName of the YAML config

Definition at line 46 of file KfpV0FinderCutter.cxx.

References fCuts, and cbm::util::yaml::ReadFromFile().

◆ SelectParticle()

template<EV0Type V0Type>
bool V0FinderCutter::SelectParticle ( const ParticleProperty & particleProperty) const

Selects a particle within the cuts (after the KFParticleFinder stage)

Parameters
trackPropertyInput for particle properties
Returns
true Particle is selected
false Particle is rejected

Definition at line 55 of file KfpV0FinderCutter.cxx.

References cbm::algo::kfp::V0FinderCutter< V0Type >::DaughterProperty::beta, and cbm::algo::kfp::V0FinderCutter< V0Type >::DaughterProperty::dcaRelToOrigin.

◆ SelectTrack()

template<EV0Type V0Type>
bool V0FinderCutter::SelectTrack ( const TrackProperty & trackProperty) const

Selects a track (to pass it to the KFParticleFinder stage)

Parameters
trackPropertyInput for track properties
Returns
true Track is selected
false Track is rejected

Definition at line 81 of file KfpV0FinderCutter.cxx.

References cbm::algo::kfp::V0FinderCutter< V0Type >::TrackProperty::beta, cbm::algo::kfp::V0FinderCutter< V0Type >::TrackProperty::dcaRelToOrigin, fCuts, cbm::algo::kfp::V0FinderCutter< V0Type >::TrackProperty::pid, and cbm::algo::kfp::Undef.

◆ SetCuts()

template<EV0Type V0Type>
void V0FinderCutter::SetCuts ( const CutValues & cuts)

Sets the cuts.

Parameters
cutsCut values

Definition at line 115 of file KfpV0FinderCutter.cxx.

References fCuts.

◆ ToString()

template<EV0Type V0Type>
std::string V0FinderCutter::ToString ( ) const

String representation of the class.

Definition at line 125 of file KfpV0FinderCutter.cxx.

References fCuts, cbm::algo::kfp::Lambda, cbm::algo::kfp::ToString(), and cbm::algo::kfp::Undef.

Member Data Documentation

◆ fCuts

template<EV0Type V0Type>
CutValues cbm::algo::kfp::V0FinderCutter< V0Type >::fCuts
private

Cut values of the analysis.

Definition at line 219 of file KfpV0FinderCutter.h.

Referenced by ApplyCutsToKFParticleFinder(), ReadCutsFromYaml(), SelectTrack(), SetCuts(), ToString(), and V0FinderCutter().

◆ fsName

template<EV0Type V0Type>
std::string cbm::algo::kfp::V0FinderCutter< V0Type >::fsName {""}
private

Name of the cuts (for logs etc.)

Definition at line 220 of file KfpV0FinderCutter.h.


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