PandaRoot
PndPidTrackingSystemInfo.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 #ifndef PID_TRACKING_INFO_H
14 #define PID_TRACKING_INFO_H
15 
16 #include "FairPropagator.h"
17 #include "PndPropagator.h"
18 #include "FairGeane.h"
19 #include "FairRootManager.h"
20 #include "FairRuntimeDb.h"
21 #include "FairLogger.h"
22 
23 #include "PndPidCandidate.h"
24 #include "PndPidTrackInfo.h"
26 
27 class TGeant3;
28 
38  public:
42  PndPidTrackingSystemInfo(Bool_t use_default_setup = kTRUE);
43 
47  virtual ~PndPidTrackingSystemInfo();
48 
49  void SetDetectors(std::vector<PndPidTrackingDetectorInfo*> detectors) {
50  fDetectors = detectors;
51  };
52  void AddDetector(PndPidTrackingDetectorInfo* detector_info) {
53  fDetectors.push_back(detector_info);
54  }
55  std::vector<PndPidTrackingDetectorInfo*> GetDetectors() { return fDetectors; };
56 
60  void Reset();
61 
66  void SetPidHypo(Int_t pid_hyp);
67 
72  void SetPropagator(PndPropagator *propagator);
73 
78  void SetParContainers(FairRuntimeDb *db);
79 
87  Bool_t Setup(FairRootManager *manager, PndPropagator *propagator, PndPidDetectorParams::DetectorParams *params);
88 
95  Bool_t GetCompleteTrackingSystemInfo(Int_t track_index, PndPidCandidate *pidCand);
96 
97  protected:
99  std::vector<PndPidTrackingDetectorInfo*> fDetectors = {};
100 
102 };
103 
104 #endif // PID_TRACKING_INFO_H
PndPidTrackingSystemInfo(Bool_t use_default_setup=kTRUE)
Default constructor.
void AddDetector(PndPidTrackingDetectorInfo *detector_info)
std::vector< PndPidTrackingDetectorInfo * > GetDetectors()
void SetPropagator(PndPropagator *propagator)
Set fPropagator and call SetPropagator() of PndTrackingDetectorInfo classes.
void Reset()
Call Reset() of PndTrackingDetectorInfo classes.
Base class for accessing PID track information.
Base class for accessing PID detector information of tracking system (MVD, STT, GEM, FTS).
ClassDef(PndPidTrackingSystemInfo, 1)
Class for combining all PID track information.
virtual ~PndPidTrackingSystemInfo()
Default destructor.
Bool_t GetCompleteTrackingSystemInfo(Int_t track_index, PndPidCandidate *pidCand)
Include track and tracking detector information in PidCandidate.
void SetDetectors(std::vector< PndPidTrackingDetectorInfo *> detectors)
void SetPidHypo(Int_t pid_hyp)
Set fPidHyp and call SetPidHypo() of PndTrackingDetectorInfo classes.
Propagator interface class for PandaRoot.
Definition: PndPropagator.h:64
Bool_t Setup(FairRootManager *manager, PndPropagator *propagator, PndPidDetectorParams::DetectorParams *params)
Setup tracking info and tracking detector info.
std::vector< PndPidTrackingDetectorInfo * > fDetectors
void SetParContainers(FairRuntimeDb *db)
Call SetParContainers() of PndTrackingDetectorInfo classes.