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

#include <BmnRootIterator.h>

Inheritance diagram for BmnRootIterator:
Collaboration diagram for BmnRootIterator:

Public Types

typedef CbmStsTrack Track_t
typedef CbmStsHit Hit_t
typedef CbmStsTrack Track_t
typedef CbmStsHit Hit_t

Public Member Functions

 BmnRootIterator ()=delete
 BmnRootIterator (const char *filesPathList, const BmnDetectorModel &detModel, BmnSimpleProgressBar *pb=nullptr)
virtual ~BmnRootIterator ()
virtual void ResetHits () override
virtual void ResetAll () override
virtual void NextTrack () override
virtual void NextHit () override
virtual Double_t HitX () const override
virtual Double_t HitY () const override
virtual Double_t HitZ () const override
virtual Double_t HitWx () const override
virtual Double_t HitWy () const override
virtual Int_t HitDetectorID () const override
virtual Int_t HitsInTrack () const override
void CountElements ()
Long64_t GetTotalEvents () const noexcept
Int_t GetTotalTracks () const noexcept
Int_t GetTotalHits () const noexcept
const Hit_t * GetHit () const noexcept
 BmnRootIterator ()=delete
 BmnRootIterator (const char *filesPathList, const BmnDetectorModel &detModel, BmnSimpleProgressBar *pb=nullptr)
virtual ~BmnRootIterator ()
virtual void ResetHits () override
virtual void ResetAll () override
virtual void NextTrack () override
virtual void NextHit () override
virtual Double_t HitX () const override
virtual Double_t HitY () const override
virtual Double_t HitZ () const override
virtual Double_t HitWx () const override
virtual Double_t HitWy () const override
virtual Int_t HitDetectorID () const override
virtual Int_t HitsInTrack () const override
void CountElements ()
Long64_t GetTotalEvents () const noexcept
Int_t GetTotalTracks () const noexcept
Int_t GetTotalHits () const noexcept
const Hit_t * GetHit () const noexcept
Public Member Functions inherited from BmnDataIterator
 BmnDataIterator (BmnSimpleProgressBar *pb=nullptr)
virtual ~BmnDataIterator ()=default
Bool_t Initialized () const noexcept
Bool_t EndOfTracks () const noexcept
Bool_t EndOfHits () const noexcept
 BmnDataIterator (BmnSimpleProgressBar *pb=nullptr)
virtual ~BmnDataIterator ()=default
Bool_t Initialized () const noexcept
Bool_t EndOfTracks () const noexcept
Bool_t EndOfHits () const noexcept

Private Member Functions

void UnsetProperties ()
void UnsetProperties ()

Private Attributes

const BmnDetectorModel * fpDetModel
BmnDataReader * fpData {nullptr}
TTreeReader * fpReader {nullptr}
TTreeReaderValue< TClonesArray > * fpRootTracks {nullptr}
TTreeReaderValue< TClonesArray > * fpRootHits {nullptr}
Track_t * fpCurrentTrack {nullptr}
Hit_t * fpCurrentHit {nullptr}
Long64_t fTotalEvents {0}
Int_t fTotalTracks {0}
Int_t fTotalHits {0}
Int_t fTracksInEvent {0}
Int_t fHitsInTrack {0}
Int_t fTrackIdx
Int_t fHitIdx
Bool_t fProgressByTracks {kTRUE}

Static Private Attributes

static constexpr Double_t MAX_WEIGHT {1.0 / (BMN_CLOSE_TO_ZERO * BMN_CLOSE_TO_ZERO)}

Additional Inherited Members

Protected Member Functions inherited from BmnDataIterator
BmnSimpleProgressBar * GetProgressBar () const noexcept
Float_t GetTickProgress () const noexcept
void SetTickProgress (Float_t progress)
void ProgressTick ()
void ProgressReset ()
void ProgressClear ()
BmnSimpleProgressBar * GetProgressBar () const noexcept
Float_t GetTickProgress () const noexcept
void SetTickProgress (Float_t progress)
void ProgressTick ()
void ProgressReset ()
void ProgressClear ()
Protected Attributes inherited from BmnDataIterator
Bool_t fInitialized {kFALSE}
Bool_t fEndOfTracks {kTRUE}
Bool_t fEndOfHits {kTRUE}

Detailed Description

Definition at line 28 of file BmnRootIterator.h.

Member Typedef Documentation

◆ Hit_t [1/2]

Definition at line 35 of file BmnRootIterator.h.

◆ Hit_t [2/2]

Definition at line 35 of file BmnRootIterator.h.

◆ Track_t [1/2]

Definition at line 34 of file BmnRootIterator.h.

◆ Track_t [2/2]

Definition at line 34 of file BmnRootIterator.h.

Constructor & Destructor Documentation

◆ BmnRootIterator() [1/4]

BmnRootIterator::BmnRootIterator ( )
delete

◆ BmnRootIterator() [2/4]

BmnRootIterator::BmnRootIterator ( const char * filesPathList,
const BmnDetectorModel & detModel,
BmnSimpleProgressBar * pb = nullptr )

Definition at line 16 of file BmnRootIterator.cxx.

References BmnDataIterator::BmnDataIterator(), BMN_HITS_BRACH_NAME, BMN_TRACKS_BRACH_NAME, BmnDataIterator::fInitialized, fpData, fpDetModel, fpReader, fProgressByTracks, fpRootHits, fpRootTracks, fTotalEvents, and BmnDataIterator::SetTickProgress().

Here is the call graph for this function:

◆ ~BmnRootIterator() [1/2]

BmnRootIterator::~BmnRootIterator ( )
virtual

Definition at line 40 of file BmnRootIterator.cxx.

References fpData, fpRootHits, and fpRootTracks.

◆ BmnRootIterator() [3/4]

BmnRootIterator::BmnRootIterator ( )
delete

◆ BmnRootIterator() [4/4]

BmnRootIterator::BmnRootIterator ( const char * filesPathList,
const BmnDetectorModel & detModel,
BmnSimpleProgressBar * pb = nullptr )

◆ ~BmnRootIterator() [2/2]

virtual BmnRootIterator::~BmnRootIterator ( )
virtual

Member Function Documentation

◆ CountElements() [1/2]

void BmnRootIterator::CountElements ( )

Definition at line 50 of file BmnRootIterator.cxx.

References BMN_MAX_CHI2_PER_NDF, BMN_MIN_HITS_PER_TRACK, BmnDataIterator::EndOfTracks(), fHitsInTrack, fpData, fProgressByTracks, fTotalHits, fTotalTracks, NextTrack(), BmnDataIterator::ProgressClear(), BmnDataIterator::ProgressReset(), ResetAll(), and BmnDataIterator::SetTickProgress().

Here is the call graph for this function:

◆ CountElements() [2/2]

void BmnRootIterator::CountElements ( )

◆ GetHit() [1/2]

const Hit_t * BmnRootIterator::GetHit ( ) const
inlinenoexcept

Definition at line 57 of file BmnRootIterator.h.

References fpCurrentHit.

Referenced by review().

Here is the caller graph for this function:

◆ GetHit() [2/2]

const Hit_t * BmnRootIterator::GetHit ( ) const
inlinenoexcept

Definition at line 57 of file BmnRootIterator.h.

References fpCurrentHit.

◆ GetTotalEvents() [1/2]

Long64_t BmnRootIterator::GetTotalEvents ( ) const
inlinenoexcept

Definition at line 54 of file BmnRootIterator.h.

References fTotalEvents.

Referenced by expdataNN().

Here is the caller graph for this function:

◆ GetTotalEvents() [2/2]

Long64_t BmnRootIterator::GetTotalEvents ( ) const
inlinenoexcept

Definition at line 54 of file BmnRootIterator.h.

References fTotalEvents.

◆ GetTotalHits() [1/2]

Int_t BmnRootIterator::GetTotalHits ( ) const
inlinenoexcept

Definition at line 56 of file BmnRootIterator.h.

References fTotalHits.

◆ GetTotalHits() [2/2]

Int_t BmnRootIterator::GetTotalHits ( ) const
inlinenoexcept

Definition at line 56 of file BmnRootIterator.h.

References fTotalHits.

◆ GetTotalTracks() [1/2]

Int_t BmnRootIterator::GetTotalTracks ( ) const
inlinenoexcept

Definition at line 55 of file BmnRootIterator.h.

References fTotalTracks.

◆ GetTotalTracks() [2/2]

Int_t BmnRootIterator::GetTotalTracks ( ) const
inlinenoexcept

Definition at line 55 of file BmnRootIterator.h.

References fTotalTracks.

◆ HitDetectorID() [1/2]

Int_t BmnRootIterator::HitDetectorID ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 211 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, BmnDataIterator::fInitialized, fpCurrentHit, and fpDetModel.

Referenced by expdata(), expdataNN(), and review().

Here is the caller graph for this function:

◆ HitDetectorID() [2/2]

virtual Int_t BmnRootIterator::HitDetectorID ( ) const
overridevirtual

Implements BmnDataIterator.

◆ HitsInTrack() [1/2]

Int_t BmnRootIterator::HitsInTrack ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 219 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfTracks, fHitsInTrack, and BmnDataIterator::fInitialized.

Referenced by expdataNN(), and review().

Here is the caller graph for this function:

◆ HitsInTrack() [2/2]

virtual Int_t BmnRootIterator::HitsInTrack ( ) const
overridevirtual

Implements BmnDataIterator.

◆ HitWx() [1/2]

Double_t BmnRootIterator::HitWx ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 195 of file BmnRootIterator.cxx.

References BMN_CLOSE_TO_ZERO, BmnDataIterator::fEndOfHits, BmnDataIterator::fInitialized, fpCurrentHit, and MAX_WEIGHT.

Referenced by expdata().

Here is the caller graph for this function:

◆ HitWx() [2/2]

virtual Double_t BmnRootIterator::HitWx ( ) const
overridevirtual

Implements BmnDataIterator.

◆ HitWy() [1/2]

Double_t BmnRootIterator::HitWy ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 203 of file BmnRootIterator.cxx.

References BMN_CLOSE_TO_ZERO, BmnDataIterator::fEndOfHits, BmnDataIterator::fInitialized, fpCurrentHit, and MAX_WEIGHT.

Referenced by expdata().

Here is the caller graph for this function:

◆ HitWy() [2/2]

virtual Double_t BmnRootIterator::HitWy ( ) const
overridevirtual

Implements BmnDataIterator.

◆ HitX() [1/2]

Double_t BmnRootIterator::HitX ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 174 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, BmnDataIterator::fInitialized, and fpCurrentHit.

Referenced by expdata(), expdataNN(), and review().

Here is the caller graph for this function:

◆ HitX() [2/2]

virtual Double_t BmnRootIterator::HitX ( ) const
overridevirtual

Implements BmnDataIterator.

◆ HitY() [1/2]

Double_t BmnRootIterator::HitY ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 181 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, BmnDataIterator::fInitialized, and fpCurrentHit.

Referenced by expdata(), expdataNN(), and review().

Here is the caller graph for this function:

◆ HitY() [2/2]

virtual Double_t BmnRootIterator::HitY ( ) const
overridevirtual

Implements BmnDataIterator.

◆ HitZ() [1/2]

Double_t BmnRootIterator::HitZ ( ) const
overridevirtual

Implements BmnDataIterator.

Definition at line 188 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, BmnDataIterator::fInitialized, and fpCurrentHit.

Referenced by expdata(), expdataNN(), and review().

Here is the caller graph for this function:

◆ HitZ() [2/2]

virtual Double_t BmnRootIterator::HitZ ( ) const
overridevirtual

Implements BmnDataIterator.

◆ NextHit() [1/2]

void BmnRootIterator::NextHit ( )
overridevirtual

Implements BmnDataIterator.

Definition at line 163 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, fHitIdx, fHitsInTrack, BmnDataIterator::fInitialized, fpCurrentHit, and fpCurrentTrack.

Referenced by expdata(), expdataNN(), and review().

Here is the caller graph for this function:

◆ NextHit() [2/2]

virtual void BmnRootIterator::NextHit ( )
overridevirtual

Implements BmnDataIterator.

◆ NextTrack() [1/2]

void BmnRootIterator::NextTrack ( )
overridevirtual

Implements BmnDataIterator.

Definition at line 128 of file BmnRootIterator.cxx.

References BMN_MAX_CHI2_PER_NDF, BMN_MIN_HITS_PER_TRACK, BmnDataIterator::fEndOfTracks, BmnDataIterator::fInitialized, fpCurrentTrack, fpReader, fProgressByTracks, fTrackIdx, fTracksInEvent, BmnDataIterator::ProgressTick(), ResetHits(), and UnsetProperties().

Referenced by CountElements(), expdata(), expdataNN(), ResetAll(), and review().

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

◆ NextTrack() [2/2]

virtual void BmnRootIterator::NextTrack ( )
overridevirtual

Implements BmnDataIterator.

◆ ResetAll() [1/2]

void BmnRootIterator::ResetAll ( )
overridevirtual

Implements BmnDataIterator.

Definition at line 93 of file BmnRootIterator.cxx.

References BMN_MAX_CHI2_PER_NDF, BMN_MIN_HITS_PER_TRACK, BmnDataIterator::fEndOfTracks, BmnDataIterator::fInitialized, fpCurrentTrack, fpReader, fProgressByTracks, fTrackIdx, fTracksInEvent, NextTrack(), BmnDataIterator::ProgressTick(), ResetHits(), and UnsetProperties().

Referenced by CountElements(), expdata(), and expdataNN().

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

◆ ResetAll() [2/2]

virtual void BmnRootIterator::ResetAll ( )
overridevirtual

Implements BmnDataIterator.

◆ ResetHits() [1/2]

void BmnRootIterator::ResetHits ( )
overridevirtual

Implements BmnDataIterator.

Definition at line 80 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, fHitIdx, fHitsInTrack, fpCurrentHit, and fpCurrentTrack.

Referenced by NextTrack(), and ResetAll().

Here is the caller graph for this function:

◆ ResetHits() [2/2]

virtual void BmnRootIterator::ResetHits ( )
overridevirtual

Implements BmnDataIterator.

◆ UnsetProperties() [1/2]

void BmnRootIterator::UnsetProperties ( )
private

Definition at line 226 of file BmnRootIterator.cxx.

References BmnDataIterator::fEndOfHits, BmnDataIterator::fEndOfTracks, fHitsInTrack, fpCurrentHit, fpCurrentTrack, and fTracksInEvent.

Referenced by NextTrack(), and ResetAll().

Here is the caller graph for this function:

◆ UnsetProperties() [2/2]

void BmnRootIterator::UnsetProperties ( )
private

Member Data Documentation

◆ fHitIdx

Int_t BmnRootIterator::fHitIdx
private

Definition at line 70 of file BmnRootIterator.h.

Referenced by NextHit(), and ResetHits().

◆ fHitsInTrack

Int_t BmnRootIterator::fHitsInTrack {0}
private

Definition at line 70 of file BmnRootIterator.h.

Referenced by CountElements(), HitsInTrack(), NextHit(), ResetHits(), and UnsetProperties().

◆ fpCurrentHit

Hit_t * BmnRootIterator::fpCurrentHit {nullptr}
private

◆ fpCurrentTrack

Track_t * BmnRootIterator::fpCurrentTrack {nullptr}
private

Definition at line 67 of file BmnRootIterator.h.

Referenced by NextHit(), NextTrack(), ResetAll(), ResetHits(), and UnsetProperties().

◆ fpData

BmnDataReader * BmnRootIterator::fpData {nullptr}
private

Definition at line 63 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), ~BmnRootIterator(), and CountElements().

◆ fpDetModel

const BmnDetectorModel * BmnRootIterator::fpDetModel
private

Definition at line 60 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), and HitDetectorID().

◆ fpReader

TTreeReader * BmnRootIterator::fpReader {nullptr}
private

Definition at line 64 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), NextTrack(), and ResetAll().

◆ fProgressByTracks

Bool_t BmnRootIterator::fProgressByTracks {kTRUE}
private

Definition at line 72 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), CountElements(), NextTrack(), and ResetAll().

◆ fpRootHits

TTreeReaderValue< TClonesArray > * BmnRootIterator::fpRootHits {nullptr}
private

Definition at line 65 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), and ~BmnRootIterator().

◆ fpRootTracks

TTreeReaderValue< TClonesArray > * BmnRootIterator::fpRootTracks {nullptr}
private

Definition at line 65 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), and ~BmnRootIterator().

◆ fTotalEvents

Long64_t BmnRootIterator::fTotalEvents {0}
private

Definition at line 69 of file BmnRootIterator.h.

Referenced by BmnRootIterator(), and GetTotalEvents().

◆ fTotalHits

Int_t BmnRootIterator::fTotalHits {0}
private

Definition at line 70 of file BmnRootIterator.h.

Referenced by CountElements(), and GetTotalHits().

◆ fTotalTracks

Int_t BmnRootIterator::fTotalTracks {0}
private

Definition at line 70 of file BmnRootIterator.h.

Referenced by CountElements(), and GetTotalTracks().

◆ fTrackIdx

Int_t BmnRootIterator::fTrackIdx
private

Definition at line 70 of file BmnRootIterator.h.

Referenced by NextTrack(), and ResetAll().

◆ fTracksInEvent

Int_t BmnRootIterator::fTracksInEvent {0}
private

Definition at line 70 of file BmnRootIterator.h.

Referenced by NextTrack(), ResetAll(), and UnsetProperties().

◆ MAX_WEIGHT

constexpr Double_t BmnRootIterator::MAX_WEIGHT {1.0 / (BMN_CLOSE_TO_ZERO * BMN_CLOSE_TO_ZERO)}
staticconstexprprivate

Definition at line 31 of file BmnRootIterator.h.

Referenced by HitWx(), and HitWy().


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