BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnTof1HitProducer Class Reference

#include <BmnTof1HitProducer.h>

Inheritance diagram for BmnTof1HitProducer:
Collaboration diagram for BmnTof1HitProducer:

Public Member Functions

 BmnTof1HitProducer (const char *name, DetectorId detId, Bool_t useMCdata=true, Int_t verbose=1, Bool_t DoTest=false)
virtual ~BmnTof1HitProducer ()
virtual InitStatus Init ()
virtual void Exec (Option_t *opt)
virtual void Finish ()
virtual void OnlineWrite (const std::unique_ptr< TTree > &resultTree)
 Write task resul to tree.
void SetTimeResolution (Double_t sigma)
void SetAlongStripResolution (Double_t Xerr)
void SetSeed (UInt_t seed=0)
void SetPeriodRun (Int_t p, Int_t r)
TString GetParameters ()
 BmnTof1HitProducer (const char *name, DetectorId detId, Bool_t useMCdata=true, Int_t verbose=1, Bool_t DoTest=false)
virtual ~BmnTof1HitProducer ()
virtual InitStatus Init ()
virtual void Exec (Option_t *opt)
virtual void Finish ()
virtual void OnlineWrite (const std::unique_ptr< TTree > &resultTree)
 Write task resul to tree.
void SetTimeResolution (Double_t sigma)
void SetAlongStripResolution (Double_t Xerr)
void SetSeed (UInt_t seed=0)
void SetPeriodRun (Int_t p, Int_t r)
TString GetParameters ()
Public Member Functions inherited from BmnTof1HitProducerIdeal
 BmnTof1HitProducerIdeal (const char *name="TOF1 Ideal HitProducer", Bool_t useMCdata=true, Int_t verbose=1, Bool_t DoTest=false, Bool_t DoMergeHits=false)
virtual ~BmnTof1HitProducerIdeal ()
void SetOnlyPrimary (Bool_t opt)
void Dump (const char *comment=nullptr, std::ostream &out=std::cout) const
void SetTestFlnm (const char *flnm)
 BmnTof1HitProducerIdeal (const char *name="TOF1 Ideal HitProducer", Bool_t useMCdata=true, Int_t verbose=1, Bool_t DoTest=false, Bool_t DoMergeHits=false)
virtual ~BmnTof1HitProducerIdeal ()
void SetOnlyPrimary (Bool_t opt)
void Dump (const char *comment=nullptr, std::ostream &out=std::cout) const
void SetTestFlnm (const char *flnm)
Public Member Functions inherited from BmnTask
 BmnTask ()
 Default constructor.
 BmnTask (const char *name, Int_t iVerbose=1)
 Standard constructor.
virtual ~BmnTask ()
 Destroy the BmnTask object.
 BmnTask (const BmnTask &)=delete
BmnTask & operator= (const BmnTask &)=delete
 BmnTask ()
 Default constructor.
 BmnTask (const char *name, Int_t iVerbose=1)
 Standard constructor.
virtual ~BmnTask ()
 Destroy the BmnTask object.
 BmnTask (const BmnTask &)=delete
BmnTask & operator= (const BmnTask &)=delete

Private Member Functions

Bool_t HitExist (const Double_t &val, const Bool_t &isWide_strip)
Bool_t DoubleHitExist (const Double_t &val, const Bool_t &isWide_strip, const DetectorId &flag)
Bool_t TripleHitExist (const Double_t &val, const Bool_t &isWide_strip, const DetectorId &flag)
BmnTrigDigit * FingT0Digit ()
Bool_t IsFile (TString NameFile)
Bool_t SetCorrFiles ()
Bool_t OutOfRange (Int_t iPlane)
Int_t extract_number_ev (TString fn)
Int_t extract_number_p (TString fn)
TString extract_path (TString fn)
InitStatus LoadDetectorConfiguration ()
Bool_t HitExist (const Double_t &val, const Bool_t &isWide_strip)
Bool_t DoubleHitExist (const Double_t &val, const Bool_t &isWide_strip, const DetectorId &flag)
Bool_t TripleHitExist (const Double_t &val, const Bool_t &isWide_strip, const DetectorId &flag)
BmnTrigDigit * FingT0Digit ()
Bool_t IsFile (TString NameFile)
Bool_t SetCorrFiles ()
Bool_t OutOfRange (Int_t iPlane)
Int_t extract_number_ev (TString fn)
Int_t extract_number_p (TString fn)
TString extract_path (TString fn)
InitStatus LoadDetectorConfiguration ()

Private Attributes

Int_t fVerbose
Double_t fTimeSigma
Double_t fErrX
Double_t fErrY
TF1 * fEffFunc
TRandom2 * pRandom
BmnTof1GeoUtils * pGeoUtils
BmnTOF1Detector ** pDetector
Int_t fNDetectors
DetectorId fDetectorId
Int_t fPeriod
Int_t fRun
BmnEventHeader * fEventHeader
TString fDetName
TString fPointsName
TString fDigitsName
TString fHitsName
TString NameFileLRcorrection
TString NameFileSlewingCorrection
TString NameFileTimeShiftCorrection
Bool_t FlagFileLRcorrection
Bool_t FlagFileSlewingCorrection
Bool_t FlagFileTimeShiftCorrection

Additional Inherited Members

Protected Member Functions inherited from BmnTof1HitProducerIdeal
void AddHit (Int_t detUID, const TVector3 &posHit, const TVector3 &posHitErr, Int_t pointIndex, Int_t trackIndex, Double_t time, Int_t Idd)
Int_t CompressHits ()
Int_t MergeHitsOnStrip ()
void AddHit (Int_t detUID, const TVector3 &posHit, const TVector3 &posHitErr, Int_t pointIndex, Int_t trackIndex, Double_t time, Int_t Idd)
Int_t CompressHits ()
Int_t MergeHitsOnStrip ()
Protected Attributes inherited from BmnTof1HitProducerIdeal
TClonesArray * aMcPoints
TClonesArray * aMcTracks
 <— MC input
TClonesArray * aExpDigits
 <— MC input
TClonesArray * aExpDigitsT0
 <— Exp input
TClonesArray * aExpDigitsT0_2
 <— Exp input
BmnTrigInfoDst * aExpTrigInfo
 <— Exp input for run8 SRC
TClonesArray * aTofHits
 <— The T0 time is stored in 'BmnTrigInfo.' branch in Run9
TClonesArray * aTofCont
 ---> output
TFile * fileCont
 ---> output
TTree * treeCont
Bool_t fDoTest
Bool_t fDoMergeHits
Bool_t fUseMCData
Bool_t fOnlyPrimary
TString fTestFlnm

Detailed Description

Definition at line 15 of file BmnTof1HitProducer.h.

Constructor & Destructor Documentation

◆ BmnTof1HitProducer() [1/2]

BmnTof1HitProducer::BmnTof1HitProducer ( const char * name,
DetectorId detId,
Bool_t useMCdata = true,
Int_t verbose = 1,
Bool_t DoTest = false )

Definition at line 23 of file BmnTof1HitProducer.cxx.

References BmnTof1HitProducerIdeal::BmnTof1HitProducerIdeal(), ANSI_COLOR_RED, ANSI_COLOR_RESET, fDetectorId, fDetName, fDigitsName, fEffFunc, fErrX, fErrY, fHitsName, fNDetectors, fPointsName, fTimeSigma, fVerbose, kTOF1, kTOF701, pDetector, pGeoUtils, and pRandom.

Here is the call graph for this function:

◆ ~BmnTof1HitProducer() [1/2]

BmnTof1HitProducer::~BmnTof1HitProducer ( )
virtual

◆ BmnTof1HitProducer() [2/2]

BmnTof1HitProducer::BmnTof1HitProducer ( const char * name,
DetectorId detId,
Bool_t useMCdata = true,
Int_t verbose = 1,
Bool_t DoTest = false )

◆ ~BmnTof1HitProducer() [2/2]

virtual BmnTof1HitProducer::~BmnTof1HitProducer ( )
virtual

Member Function Documentation

◆ DoubleHitExist() [1/2]

Bool_t BmnTof1HitProducer::DoubleHitExist ( const Double_t & val,
const Bool_t & isWide_strip,
const DetectorId & flag )
private

Definition at line 333 of file BmnTof1HitProducer.cxx.

References efficiency(), fEffFunc, HitExist(), kTOF701, and pRandom.

Referenced by Exec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DoubleHitExist() [2/2]

Bool_t BmnTof1HitProducer::DoubleHitExist ( const Double_t & val,
const Bool_t & isWide_strip,
const DetectorId & flag )
private

◆ Exec() [1/2]

◆ Exec() [2/2]

virtual void BmnTof1HitProducer::Exec ( Option_t * opt)
virtual

Reimplemented from BmnTof1HitProducerIdeal.

◆ extract_number_ev() [1/2]

Int_t BmnTof1HitProducer::extract_number_ev ( TString fn)
private

Definition at line 854 of file BmnTof1HitProducer.cxx.

References TString::Atoi(), TString::Index(), and TString::Remove().

Referenced by Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ extract_number_ev() [2/2]

Int_t BmnTof1HitProducer::extract_number_ev ( TString fn)
private

◆ extract_number_p() [1/2]

Int_t BmnTof1HitProducer::extract_number_p ( TString fn)
private

Definition at line 865 of file BmnTof1HitProducer.cxx.

References TString::Atoi(), TString::Last(), and TString::Remove().

Referenced by Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ extract_number_p() [2/2]

Int_t BmnTof1HitProducer::extract_number_p ( TString fn)
private

◆ extract_path() [1/2]

TString BmnTof1HitProducer::extract_path ( TString fn)
private

Definition at line 876 of file BmnTof1HitProducer.cxx.

References TString::Last(), TString::Length(), and TString::Remove().

Referenced by Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ extract_path() [2/2]

TString BmnTof1HitProducer::extract_path ( TString fn)
private

◆ FingT0Digit() [1/2]

BmnTrigDigit * BmnTof1HitProducer::FingT0Digit ( )
private

Definition at line 618 of file BmnTof1HitProducer.cxx.

References BmnTof1HitProducerIdeal::aExpDigitsT0, BmnTof1HitProducerIdeal::aExpDigitsT0_2, BmnTof1HitProducerIdeal::aExpTrigInfo, fPeriod, fRun, BmnTrigDigit::GetAmp(), BmnTrigDigit::GetMod(), BmnTrigDigit::GetTime(), i, BmnTrigDigit::SetAmp(), and BmnTrigDigit::SetTime().

Referenced by Exec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FingT0Digit() [2/2]

BmnTrigDigit * BmnTof1HitProducer::FingT0Digit ( )
private

◆ Finish() [1/2]

◆ Finish() [2/2]

virtual void BmnTof1HitProducer::Finish ( )
virtual

Reimplemented from BmnTof1HitProducerIdeal.

◆ GetParameters() [1/2]

TString BmnTof1HitProducer::GetParameters ( )
inline

◆ GetParameters() [2/2]

TString BmnTof1HitProducer::GetParameters ( )
inline

◆ HitExist() [1/2]

Bool_t BmnTof1HitProducer::HitExist ( const Double_t & val,
const Bool_t & isWide_strip )
private

Definition at line 310 of file BmnTof1HitProducer.cxx.

References efficiency(), and pRandom.

Referenced by DoubleHitExist(), Exec(), and TripleHitExist().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HitExist() [2/2]

Bool_t BmnTof1HitProducer::HitExist ( const Double_t & val,
const Bool_t & isWide_strip )
private

◆ Init() [1/2]

◆ Init() [2/2]

virtual InitStatus BmnTof1HitProducer::Init ( )
virtual

Reimplemented from BmnTof1HitProducerIdeal.

◆ IsFile() [1/2]

Bool_t BmnTof1HitProducer::IsFile ( TString NameFile = "")
private

Definition at line 691 of file BmnTof1HitProducer.cxx.

Referenced by SetCorrFiles().

Here is the caller graph for this function:

◆ IsFile() [2/2]

Bool_t BmnTof1HitProducer::IsFile ( TString NameFile)
private

◆ LoadDetectorConfiguration() [1/2]

InitStatus BmnTof1HitProducer::LoadDetectorConfiguration ( )
private

Definition at line 98 of file BmnTof1HitProducer.cxx.

References fDetectorId, fDetName, BmnTof1HitProducerIdeal::fDoTest, FlagFileLRcorrection, FlagFileSlewingCorrection, FlagFileTimeShiftCorrection, fNDetectors, fPeriod, BmnTof1HitProducerIdeal::fUseMCData, fVerbose, i, kTOF1, kTOF701, NameFileLRcorrection, NameFileSlewingCorrection, NameFileTimeShiftCorrection, pDetector, pGeoUtils, and SetCorrFiles().

Referenced by Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LoadDetectorConfiguration() [2/2]

InitStatus BmnTof1HitProducer::LoadDetectorConfiguration ( )
private

◆ OnlineWrite() [1/2]

void BmnTof1HitProducer::OnlineWrite ( const std::unique_ptr< TTree > & resultTree)
virtual
Parameters
resultTree

Reimplemented from BmnTask.

Definition at line 844 of file BmnTof1HitProducer.cxx.

References BmnTof1HitProducerIdeal::aTofHits, and fHitsName.

◆ OnlineWrite() [2/2]

virtual void BmnTof1HitProducer::OnlineWrite ( const std::unique_ptr< TTree > & resultTree)
virtual
Parameters
resultTree

Reimplemented from BmnTask.

◆ OutOfRange() [1/2]

Bool_t BmnTof1HitProducer::OutOfRange ( Int_t iPlane = -1)
private

Definition at line 836 of file BmnTof1HitProducer.cxx.

References fNDetectors.

Referenced by Exec().

Here is the caller graph for this function:

◆ OutOfRange() [2/2]

Bool_t BmnTof1HitProducer::OutOfRange ( Int_t iPlane)
private

◆ SetAlongStripResolution() [1/2]

void BmnTof1HitProducer::SetAlongStripResolution ( Double_t Xerr)
inline

Definition at line 64 of file BmnTof1HitProducer.h.

References fErrX.

◆ SetAlongStripResolution() [2/2]

void BmnTof1HitProducer::SetAlongStripResolution ( Double_t Xerr)
inline

Definition at line 64 of file BmnTof1HitProducer.h.

References fErrX.

◆ SetCorrFiles() [1/2]

Bool_t BmnTof1HitProducer::SetCorrFiles ( )
private

Definition at line 700 of file BmnTof1HitProducer.cxx.

References fDetectorId, FlagFileLRcorrection, FlagFileSlewingCorrection, FlagFileTimeShiftCorrection, fPeriod, fRun, fVerbose, IsFile(), kTOF1, kTOF701, NameFileLRcorrection, NameFileSlewingCorrection, and NameFileTimeShiftCorrection.

Referenced by LoadDetectorConfiguration().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetCorrFiles() [2/2]

Bool_t BmnTof1HitProducer::SetCorrFiles ( )
private

◆ SetPeriodRun() [1/2]

void BmnTof1HitProducer::SetPeriodRun ( Int_t p,
Int_t r )

Definition at line 90 of file BmnTof1HitProducer.cxx.

References fPeriod, and fRun.

Referenced by run8_reco_bmn(), run_reco_bmn(), run_reco_bmn(), run_reco_bmn(), run_reco_bmn(), run_reco_bmn(), and run_reco_src().

Here is the caller graph for this function:

◆ SetPeriodRun() [2/2]

void BmnTof1HitProducer::SetPeriodRun ( Int_t p,
Int_t r )

◆ SetSeed() [1/2]

void BmnTof1HitProducer::SetSeed ( UInt_t seed = 0)

Definition at line 612 of file BmnTof1HitProducer.cxx.

References pRandom.

◆ SetSeed() [2/2]

void BmnTof1HitProducer::SetSeed ( UInt_t seed = 0)

◆ SetTimeResolution() [1/2]

void BmnTof1HitProducer::SetTimeResolution ( Double_t sigma)
inline

Definition at line 63 of file BmnTof1HitProducer.h.

References fTimeSigma.

◆ SetTimeResolution() [2/2]

void BmnTof1HitProducer::SetTimeResolution ( Double_t sigma)
inline

Definition at line 63 of file BmnTof1HitProducer.h.

References fTimeSigma.

◆ TripleHitExist() [1/2]

Bool_t BmnTof1HitProducer::TripleHitExist ( const Double_t & val,
const Bool_t & isWide_strip,
const DetectorId & flag )
private

Definition at line 370 of file BmnTof1HitProducer.cxx.

References efficiency(), fEffFunc, HitExist(), kTOF701, and pRandom.

Referenced by Exec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TripleHitExist() [2/2]

Member Data Documentation

◆ fDetectorId

DetectorId BmnTof1HitProducer::fDetectorId
private

◆ fDetName

TString BmnTof1HitProducer::fDetName
private

◆ fDigitsName

TString BmnTof1HitProducer::fDigitsName
private

Definition at line 35 of file BmnTof1HitProducer.h.

Referenced by BmnTof1HitProducer(), Init(), and TripleHitExist().

◆ fEffFunc

TF1 * BmnTof1HitProducer::fEffFunc
private

◆ fErrX

Double_t BmnTof1HitProducer::fErrX
private

◆ fErrY

Double_t BmnTof1HitProducer::fErrY
private

Definition at line 19 of file BmnTof1HitProducer.h.

Referenced by BmnTof1HitProducer(), Exec(), and GetParameters().

◆ fEventHeader

BmnEventHeader * BmnTof1HitProducer::fEventHeader
private

Definition at line 29 of file BmnTof1HitProducer.h.

Referenced by Init().

◆ fHitsName

TString BmnTof1HitProducer::fHitsName
private

Definition at line 35 of file BmnTof1HitProducer.h.

Referenced by BmnTof1HitProducer(), Init(), OnlineWrite(), and TripleHitExist().

◆ FlagFileLRcorrection

Bool_t BmnTof1HitProducer::FlagFileLRcorrection
private

Definition at line 37 of file BmnTof1HitProducer.h.

Referenced by LoadDetectorConfiguration(), SetCorrFiles(), and TripleHitExist().

◆ FlagFileSlewingCorrection

Bool_t BmnTof1HitProducer::FlagFileSlewingCorrection
private

Definition at line 37 of file BmnTof1HitProducer.h.

Referenced by LoadDetectorConfiguration(), SetCorrFiles(), and TripleHitExist().

◆ FlagFileTimeShiftCorrection

Bool_t BmnTof1HitProducer::FlagFileTimeShiftCorrection
private

Definition at line 37 of file BmnTof1HitProducer.h.

Referenced by LoadDetectorConfiguration(), SetCorrFiles(), and TripleHitExist().

◆ fNDetectors

Int_t BmnTof1HitProducer::fNDetectors
private

◆ fPeriod

Int_t BmnTof1HitProducer::fPeriod
private

◆ fPointsName

TString BmnTof1HitProducer::fPointsName
private

Definition at line 35 of file BmnTof1HitProducer.h.

Referenced by BmnTof1HitProducer(), Init(), and TripleHitExist().

◆ fRun

Int_t BmnTof1HitProducer::fRun
private

Definition at line 27 of file BmnTof1HitProducer.h.

Referenced by FingT0Digit(), Init(), SetCorrFiles(), and SetPeriodRun().

◆ fTimeSigma

Double_t BmnTof1HitProducer::fTimeSigma
private

Definition at line 18 of file BmnTof1HitProducer.h.

Referenced by BmnTof1HitProducer(), Exec(), GetParameters(), and SetTimeResolution().

◆ fVerbose

Int_t BmnTof1HitProducer::fVerbose
private

◆ NameFileLRcorrection

TString BmnTof1HitProducer::NameFileLRcorrection
private

Definition at line 36 of file BmnTof1HitProducer.h.

Referenced by LoadDetectorConfiguration(), SetCorrFiles(), and TripleHitExist().

◆ NameFileSlewingCorrection

TString BmnTof1HitProducer::NameFileSlewingCorrection
private

Definition at line 36 of file BmnTof1HitProducer.h.

Referenced by LoadDetectorConfiguration(), SetCorrFiles(), and TripleHitExist().

◆ NameFileTimeShiftCorrection

TString BmnTof1HitProducer::NameFileTimeShiftCorrection
private

Definition at line 36 of file BmnTof1HitProducer.h.

Referenced by LoadDetectorConfiguration(), SetCorrFiles(), and TripleHitExist().

◆ pDetector

BmnTOF1Detector ** BmnTof1HitProducer::pDetector
private

◆ pGeoUtils

BmnTof1GeoUtils * BmnTof1HitProducer::pGeoUtils
private

◆ pRandom

TRandom2 * BmnTof1HitProducer::pRandom
private

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