PandaRoot
PndPidDetectorInfo Class Referenceabstract

Base class for accessing PID detector information. More...

#include <PndPidDetectorInfo.h>

Inheritance diagram for PndPidDetectorInfo:
PndPidCalorimeterInfo PndPidDrcInfo PndPidDskInfo PndPidFtofInfo PndPidMuonSystemInfo PndPidRichInfo PndPidTofInfo PndPidTrackingDetectorInfo

Public Member Functions

 PndPidDetectorInfo ()
 Default constructor. More...
 
virtual ~PndPidDetectorInfo ()
 
virtual Int_t SetDetectorHits (FairRootManager *manager)=0
 Default destructor. More...
 
virtual Bool_t PreprocessTracks (const Int_t, PndTrack *)
 Preprocess current track object. More...
 
virtual Bool_t GetInfo (PndTrack *track, PndPidCandidate *pidCand)=0
 Include detector information in charged PidCandidate. More...
 
virtual void GetNeutralInfo (Int_t, TClonesArray *)
 Include detector information in neutral PidCandidate. More...
 
virtual void ActivateDebugNtuple (Bool_t debug_mode)
 Set debug mode of detector. More...
 
void SetDetectorMode (Short_t detector_mode)
 
void SetUsePropagator (Bool_t use_propagator)
 
void SetPropagator (PndPropagator *propagator)
 
void SetIdeal (Bool_t is_ideal)
 
void SetPidHypo (Int_t pid_hyp)
 
void SetVerbose (Int_t verbose)
 
void SetCorrPar (PndPidCorrPar *pid_corr_par)
 
virtual Bool_t SetParContainers (FairRuntimeDb *)
 
TNtuple * GetDetCorr ()
 
Int_t GetDetectorMode ()
 
void Finish ()
 
virtual void Reset ()
 
virtual void Register ()
 
virtual Bool_t Setup (FairRootManager *, PndPropagator *propagator, PndPidDetectorParams::DetectorParams *params)
 Setup detector info. More...
 
virtual Bool_t Propagate (TVector3 pos, FairTrackParH *helix, FairTrackParH *res, Int_t pdg_code, Int_t direction=1)
 Call propagator to propagate track to detector. More...
 
virtual Bool_t Propagate (std::string volume, FairTrackParH *helix, FairTrackParH *res, Int_t pdg_code)
 Call propagator to propagate track to detector. More...
 

Protected Member Functions

 ClassDef (PndPidDetectorInfo, 1)
 

Protected Attributes

Short_t fDetMode = -1
 Detector Mode. More...
 
Bool_t fUsePropagator = kFALSE
 kTRUE to use propagator like PndGeanePro. More...
 
PndPropagatorfPropagator = nullptr
 
Bool_t fIdeal = kFALSE
 Use MC information for ideal correlation. More...
 
Bool_t fDebugMode = kTRUE
 kTRUE to fill debug ntuples More...
 
Int_t fPidHyp = 0
 Particle Id hypothesis (pdg particle code) More...
 
Int_t fVerbose = 0
 Verbosity level. More...
 
Float_t fGLength = -1000
 
PndPidDetectorParams::DetectorParamsfDetectorParams = nullptr
 
TNtuple * fDetCorr = nullptr
 Debug ntuple. More...
 
PndPidCorrParfCorrPar = new PndPidCorrPar()
 Correlation parameters. More...
 

Detailed Description

Base class for accessing PID detector information.

This class provides attributes and their setters that all detectors share. Through the function GetInfo() each detectors information is included in the PidCandidate. The specific implementation of GetInfo() varies for each detector. The same holds true for SetDetectorHits().

Author
Sarah Gaiser gaise.nosp@m.r@hi.nosp@m.skp.u.nosp@m.ni-b.nosp@m.onn.d.nosp@m.e, HISKP Bonn
Version
1.0
Date
Jan 2021

Definition at line 45 of file PndPidDetectorInfo.h.

Constructor & Destructor Documentation

◆ PndPidDetectorInfo()

PndPidDetectorInfo::PndPidDetectorInfo ( )

Default constructor.

◆ ~PndPidDetectorInfo()

virtual PndPidDetectorInfo::~PndPidDetectorInfo ( )
inlinevirtual

Definition at line 52 of file PndPidDetectorInfo.h.

52 {};

Member Function Documentation

◆ ActivateDebugNtuple()

virtual void PndPidDetectorInfo::ActivateDebugNtuple ( Bool_t  debug_mode)
inlinevirtual

Set debug mode of detector.

In the PID detector subclasses this function is reimplemented such that it includes the setup of the debug ntuples.

Reimplemented in PndPidCalorimeterInfo, PndPidEmcInfo, PndPidDrcInfo, PndPidDskInfo, PndPidFmdtInfo, PndPidFtofInfo, PndPidRichInfo, PndPidTofInfo, and PndPidMdtInfo.

Definition at line 92 of file PndPidDetectorInfo.h.

References PndPidDetectorParams::DetectorParams::debug_mode.

92 { fDebugMode = debug_mode; };
Bool_t fDebugMode
kTRUE to fill debug ntuples

◆ ClassDef()

PndPidDetectorInfo::ClassDef ( PndPidDetectorInfo  ,
 
)
protected

◆ Finish()

void PndPidDetectorInfo::Finish ( )

◆ GetDetCorr()

TNtuple* PndPidDetectorInfo::GetDetCorr ( )
inline

Definition at line 102 of file PndPidDetectorInfo.h.

102 { return fDetCorr; };
TNtuple * fDetCorr
Debug ntuple.

◆ GetDetectorMode()

Int_t PndPidDetectorInfo::GetDetectorMode ( )
inline

Definition at line 103 of file PndPidDetectorInfo.h.

103 { return fDetMode; };
Short_t fDetMode
Detector Mode.

◆ GetInfo()

virtual Bool_t PndPidDetectorInfo::GetInfo ( PndTrack track,
PndPidCandidate pidCand 
)
pure virtual

Include detector information in charged PidCandidate.

Correlate given track and detector hit. The specific implementation is given in the detector subclasses.

Parameters
trackOne of the detected tracks in current event.
pidCandPidCandidate belonging to track.
Returns
kTRUE if correlation successful.

Implemented in PndPidEmcInfo, PndPidCalorimeterInfo, PndBSPidCalorimeterInfo, PndPidFtsInfo, PndPidSttInfo, PndPidDrcInfo, PndPidDskInfo, PndPidFtofInfo, PndPidRichInfo, PndPidTofInfo, PndPidMvdInfo, PndPidFmdtInfo, PndPidMdtInfo, and PndPidGemInfo.

◆ GetNeutralInfo()

virtual void PndPidDetectorInfo::GetNeutralInfo ( Int_t  ,
TClonesArray *   
)
inlinevirtual

Include detector information in neutral PidCandidate.

This function is re-implemented in PndPidCalorimeterInfo.

Reimplemented in PndPidCalorimeterInfo, PndPidEmcInfo, and PndBSPidCalorimeterInfo.

Definition at line 85 of file PndPidDetectorInfo.h.

85 {};

◆ PreprocessTracks()

virtual Bool_t PndPidDetectorInfo::PreprocessTracks ( const Int_t  ,
PndTrack  
)
inlinevirtual

Preprocess current track object.

Parameters
trackidTrackId of current track.
trackPointer to current track object.
Returns
kTRUE if correlation successful.

Reimplemented in PndPidEmcInfo, and PndBSPidCalorimeterInfo.

Definition at line 69 of file PndPidDetectorInfo.h.

69 {return kTRUE;};

◆ Propagate() [1/2]

virtual Bool_t PndPidDetectorInfo::Propagate ( TVector3  pos,
FairTrackParH *  helix,
FairTrackParH *  res,
Int_t  pdg_code,
Int_t  direction = 1 
)
virtual

Call propagator to propagate track to detector.

Parameters
posBest guess of hit position
helixIncoming track
pdg_codePDG code of the particle which is propagated
directionIf -1 propagate in backwards direction

◆ Propagate() [2/2]

virtual Bool_t PndPidDetectorInfo::Propagate ( std::string  volume,
FairTrackParH *  helix,
FairTrackParH *  res,
Int_t  pdg_code 
)
virtual

Call propagator to propagate track to detector.

Parameters
volumeVolume to which particle is propagated
helixIncoming track
pdg_codePDG code of the particle which is propagated

◆ Register()

virtual void PndPidDetectorInfo::Register ( )
inlinevirtual

Reimplemented in PndPidMuonSystemInfo.

Definition at line 108 of file PndPidDetectorInfo.h.

108 {};

◆ Reset()

virtual void PndPidDetectorInfo::Reset ( )
inlinevirtual

◆ SetCorrPar()

void PndPidDetectorInfo::SetCorrPar ( PndPidCorrPar pid_corr_par)
inline

Definition at line 99 of file PndPidDetectorInfo.h.

99 { fCorrPar = pid_corr_par; };
PndPidCorrPar * fCorrPar
Correlation parameters.

◆ SetDetectorHits()

virtual Int_t PndPidDetectorInfo::SetDetectorHits ( FairRootManager *  manager)
pure virtual

Default destructor.

Set detector hit TClonesArrays.

Fill detector hit TCAs and adjust detector mode. The specific implementation is given in the detector subclasses.

Parameters
managerNeeded to get detector hit TCAs of event.
Returns
Adjusted detector mode.

Implemented in PndPidCalorimeterInfo, PndPidEmcInfo, PndPidMuonSystemInfo, PndBSPidCalorimeterInfo, PndPidFtsInfo, PndPidSttInfo, PndPidDrcInfo, PndPidDskInfo, PndPidFtofInfo, PndPidRichInfo, PndPidTofInfo, PndPidMvdInfo, and PndPidGemInfo.

◆ SetDetectorMode()

void PndPidDetectorInfo::SetDetectorMode ( Short_t  detector_mode)
inline

Definition at line 93 of file PndPidDetectorInfo.h.

93 { fDetMode = detector_mode; };
Short_t fDetMode
Detector Mode.

◆ SetIdeal()

void PndPidDetectorInfo::SetIdeal ( Bool_t  is_ideal)
inline

Definition at line 96 of file PndPidDetectorInfo.h.

96 { fIdeal = is_ideal; };
Bool_t fIdeal
Use MC information for ideal correlation.

◆ SetParContainers()

virtual Bool_t PndPidDetectorInfo::SetParContainers ( FairRuntimeDb *  )
inlinevirtual

Reimplemented in PndBSPidCalorimeterInfo, PndPidCalorimeterInfo, PndPidEmcInfo, PndPidFtsInfo, and PndPidSttInfo.

Definition at line 100 of file PndPidDetectorInfo.h.

100 { return kTRUE; };

◆ SetPidHypo()

void PndPidDetectorInfo::SetPidHypo ( Int_t  pid_hyp)
inline

Definition at line 97 of file PndPidDetectorInfo.h.

References PndPidDetectorParams::DetectorParams::pid_hyp.

97 { fPidHyp = pid_hyp; };
Int_t fPidHyp
Particle Id hypothesis (pdg particle code)

◆ SetPropagator()

void PndPidDetectorInfo::SetPropagator ( PndPropagator propagator)
inline

Definition at line 95 of file PndPidDetectorInfo.h.

95 { fPropagator = propagator; };
PndPropagator * fPropagator

◆ Setup()

virtual Bool_t PndPidDetectorInfo::Setup ( FairRootManager *  ,
PndPropagator propagator,
PndPidDetectorParams::DetectorParams params 
)
virtual

Setup detector info.

Parameters
managerNeeded to get all relevant TCAs of event.
propagatorPropagator to be used in track-hit correlation. If the propagator has already been specified it will not be replaced by calling Setup().
paramsSet of detector and track parameters that is passed from PndPidCorrelator.
Returns
kTRUE if successful.

Reimplemented in PndPidCalorimeterInfo, PndPidEmcInfo, PndPidMuonSystemInfo, PndBSPidCalorimeterInfo, PndPidFtsInfo, PndPidSttInfo, PndPidDrcInfo, PndPidDskInfo, PndPidFtofInfo, PndPidRichInfo, PndPidTofInfo, PndPidMvdInfo, and PndPidTrackingDetectorInfo.

◆ SetUsePropagator()

void PndPidDetectorInfo::SetUsePropagator ( Bool_t  use_propagator)
inline

Definition at line 94 of file PndPidDetectorInfo.h.

References PndPidDetectorParams::DetectorParams::use_propagator.

94 { fUsePropagator = use_propagator; };
Bool_t fUsePropagator
kTRUE to use propagator like PndGeanePro.

◆ SetVerbose()

void PndPidDetectorInfo::SetVerbose ( Int_t  verbose)
inline

Definition at line 98 of file PndPidDetectorInfo.h.

98 { fVerbose = verbose; };
Int_t fVerbose
Verbosity level.

Member Data Documentation

◆ fCorrPar

PndPidCorrPar* PndPidDetectorInfo::fCorrPar = new PndPidCorrPar()
protected

Correlation parameters.

Definition at line 160 of file PndPidDetectorInfo.h.

◆ fDebugMode

Bool_t PndPidDetectorInfo::fDebugMode = kTRUE
protected

kTRUE to fill debug ntuples

Definition at line 153 of file PndPidDetectorInfo.h.

◆ fDetCorr

TNtuple* PndPidDetectorInfo::fDetCorr = nullptr
protected

Debug ntuple.

Definition at line 159 of file PndPidDetectorInfo.h.

◆ fDetectorParams

PndPidDetectorParams::DetectorParams* PndPidDetectorInfo::fDetectorParams = nullptr
protected

Definition at line 157 of file PndPidDetectorInfo.h.

◆ fDetMode

Short_t PndPidDetectorInfo::fDetMode = -1
protected

Detector Mode.

  • -1: not set
  • 0: don't include detector
  • 1: * for MVD, STT, FTS - use ...Point
    • other - empty
  • 2: use ...Hit, DskParticle, EmcCluster
  • 3: for EMC - use EmcBumps

Definition at line 149 of file PndPidDetectorInfo.h.

◆ fGLength

Float_t PndPidDetectorInfo::fGLength = -1000
protected

Definition at line 156 of file PndPidDetectorInfo.h.

◆ fIdeal

Bool_t PndPidDetectorInfo::fIdeal = kFALSE
protected

Use MC information for ideal correlation.

Definition at line 152 of file PndPidDetectorInfo.h.

◆ fPidHyp

Int_t PndPidDetectorInfo::fPidHyp = 0
protected

Particle Id hypothesis (pdg particle code)

Definition at line 154 of file PndPidDetectorInfo.h.

◆ fPropagator

PndPropagator* PndPidDetectorInfo::fPropagator = nullptr
protected

Definition at line 151 of file PndPidDetectorInfo.h.

◆ fUsePropagator

Bool_t PndPidDetectorInfo::fUsePropagator = kFALSE
protected

kTRUE to use propagator like PndGeanePro.

Definition at line 150 of file PndPidDetectorInfo.h.

◆ fVerbose

Int_t PndPidDetectorInfo::fVerbose = 0
protected

Verbosity level.

Definition at line 155 of file PndPidDetectorInfo.h.


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