GRSISort
Created by P.C. Bender
Developement Team: P.C. Bender, R. Dunlop, V. Bildstein
An extension of the ROOT analysis Framework
TGriffin Class Reference

Definition at line 23 of file TGriffin.h.

Public Types

enum  EGainBits { EGainBits::kLowGain, EGainBits::kHighGain }
 
enum  EGriffinBits {
  EGriffinBits::kIsLowGainAddbackSet = 1<<0, EGriffinBits::kIsHighGainAddbackSet = 1<<1, EGriffinBits::kIsLowGainCrossTalkSet = 1<<2, EGriffinBits::kIsHighGainCrossTalkSet = 1<<3,
  EGriffinBits::kIsLowGainSuppressed = 1<<4, EGriffinBits::kIsHighGainSuppressed = 1<<5, EGriffinBits::kIsLowGainSuppressedAddbackSet = 1<<6, EGriffinBits::kIsHighGainSuppressedAddbackSet = 1<<7
}
 

Public Member Functions

 TGriffin ()
 
 TGriffin (const TGriffin &)
 
 ~TGriffin () override
 
bool AddbackCriterion (const TDetectorHit *hit1, const TDetectorHit *hit2) override
 
void AddFragment (const std::shared_ptr< const TFragment > &, TChannel *) override
 
void BuildHits () override
 
void Clear (Option_t *opt="all") override
 
void ClearTransients () override
 
void Copy (TObject &) const override
 
void FixHighGainCrossTalk ()
 
void FixLowGainCrossTalk ()
 
std::function< bool(const TDetectorHit *, const TDetectorHit *)> GetAddbackCriterion () const
 
TGriffinHitGetAddbackHighGainHit (const int &i)
 
Short_t GetAddbackHighGainMultiplicity ()
 
TGriffinHitGetAddbackHit (const int &i)
 
TGriffinHitGetAddbackLowGainHit (const int &i)
 
Short_t GetAddbackLowGainMultiplicity ()
 
Short_t GetAddbackMultiplicity ()
 
TGriffinHitGetGriffinHighGainHit (const int &i)
 
TGriffinHitGetGriffinHit (const int &i)
 
TGriffinHitGetGriffinLowGainHit (const int &i)
 
Short_t GetHighGainMultiplicity () const
 
virtual TDetectorHitGetHit (const int &) const
 
TDetectorHitGetHit (const int &idx)
 
virtual TDetectorHitGetHit (const int &) const
 
Short_t GetLowGainMultiplicity () const
 
Short_t GetMultiplicity () const override
 
UShort_t GetNAddbackFrags (const size_t &idx)
 
UShort_t GetNHighGainAddbackFrags (const size_t &idx)
 
UShort_t GetNHighGainSuppressedAddbackFrags (const size_t &idx)
 
UShort_t GetNLowGainAddbackFrags (const size_t &idx)
 
UShort_t GetNLowGainSuppressedAddbackFrags (const size_t &idx)
 
UShort_t GetNSuppressedAddbackFrags (const size_t &idx)
 
TGriffinHitGetSuppressedAddbackHighGainHit (const int &i)
 
Short_t GetSuppressedAddbackHighGainMultiplicity (const TBgo *bgo)
 
TGriffinHitGetSuppressedAddbackHit (const int &i)
 
TGriffinHitGetSuppressedAddbackLowGainHit (const int &i)
 
Short_t GetSuppressedAddbackLowGainMultiplicity (const TBgo *bgo)
 
Short_t GetSuppressedAddbackMultiplicity (const TBgo *bgo)
 
TGriffinHitGetSuppressedHighGainHit (const int &i)
 
Short_t GetSuppressedHighGainMultiplicity (const TBgo *bgo)
 
TGriffinHitGetSuppressedHit (const int &i)
 
TGriffinHitGetSuppressedLowGainHit (const int &i)
 
Short_t GetSuppressedLowGainMultiplicity (const TBgo *bgo)
 
Short_t GetSuppressedMultiplicity (const TBgo *bgo)
 
std::function< bool(const TDetectorHit *, const TDetectorHit *)> GetSuppressionCriterion () const
 
bool IsAddbackSet (const EGainBits &gain_type) const
 
Bool_t IsCrossTalkSet (const EGainBits &gain_type) const
 
bool IsSuppressed (const EGainBits &gain_type) const
 
bool IsSuppressedAddbackSet (const EGainBits &gain_type) const
 
TGriffinoperator= (const TGriffin &)
 
void Print (Option_t *opt="") const override
 
void Print (std::ostream &out) const override
 
void ResetAddback ()
 
void ResetFlags () const
 
void ResetHighGainAddback ()
 
void ResetHighGainSuppressed ()
 
void ResetHighGainSuppressedAddback ()
 
void ResetLowGainAddback ()
 
void ResetLowGainSuppressed ()
 
void ResetLowGainSuppressedAddback ()
 
void ResetSuppressed ()
 
void ResetSuppressedAddback ()
 
void SetAddbackCriterion (std::function< bool(const TDetectorHit *, const TDetectorHit *)> criterion)
 
void SetSuppressionCriterion (std::function< bool(const TDetectorHit *, const TDetectorHit *)> criterion)
 
bool SuppressionCriterion (const TDetectorHit *hit, const TDetectorHit *bgoHit) override
 

Static Public Member Functions

static Double_t CTCorrectedEnergy (const TGriffinHit *const hit_to_correct, const TGriffinHit *const other_hit, Bool_t time_constraint=true)
 
static const char * GetColorFromNumber (int number)
 
static EGainBits GetDefaultGainType ()
 
static TVector3 GetDetectorPosition (int DetNbr)
 
static TVector3 GetPosition (int DetNbr, int CryNbr=5, double dist=110.0)
 
static bool SetCoreWave ()
 
static void SetDefaultGainType (const EGainBits &gain_type)
 

Protected Member Functions

template<class T >
void CreateAddback (const std::vector< T *> &hits, std::vector< T *> &addbacks, std::vector< UShort_t > &nofFragments)
 
template<class T >
void CreateSuppressed (const TBgo *bgo, const std::vector< T *> &hits, std::vector< T *> &suppressedHits)
 
template<class T >
void CreateSuppressedAddback (const TBgo *bgo, const std::vector< T *> &hits, std::vector< T *> &addbacks, std::vector< UShort_t > &nofFragments)
 

Protected Attributes

std::vector< TDetectorHit * > fHits
 

Private Member Functions

void ClearStatus () const
 
void FixCrossTalk (const EGainBits &gain_type)
 
std::vector< UShort_t > & GetAddbackFragVector (const EGainBits &gain_type)
 
TGriffinHitGetAddbackHit (const int &i, const EGainBits &gain_type)
 
Short_t GetAddbackMultiplicity (const EGainBits &gain_type)
 
std::vector< TDetectorHit * > & GetAddbackVector (const EGainBits &gain_type)
 
TGriffinHitGetGriffinHit (const int &i, const EGainBits &gain_type)
 
const std::vector< TDetectorHit * > & GetHitVector () const override
 
std::vector< TDetectorHit * > & GetHitVector (const EGainBits &gain_type)
 
const std::vector< TDetectorHit * > & GetHitVector (const EGainBits &gain_type) const
 
Short_t GetMultiplicity (const EGainBits &gain_type) const
 
UShort_t GetNAddbackFrags (const size_t &idx, const EGainBits &gain_type)
 
UShort_t GetNSuppressedAddbackFrags (const size_t &idx, const EGainBits &gain_type)
 
std::vector< UShort_t > & GetSuppressedAddbackFragVector (const EGainBits &gain_type)
 
TGriffinHitGetSuppressedAddbackHit (const int &i, const EGainBits &gain_type)
 
Short_t GetSuppressedAddbackMultiplicity (const TBgo *bgo, const EGainBits &gain_type)
 
std::vector< TDetectorHit * > & GetSuppressedAddbackVector (const EGainBits &gain_type)
 
TGriffinHitGetSuppressedHit (const int &i, const EGainBits &gain_type)
 
Short_t GetSuppressedMultiplicity (const TBgo *bgo, const EGainBits &gain_type)
 
std::vector< TDetectorHit * > & GetSuppressedVector (const EGainBits &gain_type)
 
void ResetAddback (const EGainBits &gain_type)
 
void ResetSuppressed (const EGainBits &gain_type)
 
void ResetSuppressedAddback (const EGainBits &gain_type)
 
void SetAddback (const EGainBits &gain_type, bool flag=true) const
 
void SetBitNumber (EGriffinBits bit, Bool_t set) const
 
void SetCrossTalk (const EGainBits &gain_type, bool flag=true) const
 
void SetSuppressed (const EGainBits &gain_type, bool flag=true) const
 
void SetSuppressedAddback (const EGainBits &gain_type, bool flag=true) const
 
Bool_t TestBitNumber (EGriffinBits bit) const
 

Private Attributes

std::vector< UShort_t > fAddbackHighGainFrags
 
std::vector< TDetectorHit * > fAddbackHighGainHits
 
std::vector< UShort_t > fAddbackLowGainFrags
 
std::vector< TDetectorHit * > fAddbackLowGainHits
 
long fCycleStart
 
TTransientBits< UChar_t > fGriffinBits
 
std::vector< TDetectorHit * > fGriffinHighGainHits
 
std::vector< TDetectorHit * > & fGriffinLowGainHits = fHits
 
std::vector< UShort_t > fSuppressedAddbackHighGainFrags
 
std::vector< TDetectorHit * > fSuppressedAddbackHighGainHits
 
std::vector< UShort_t > fSuppressedAddbackLowGainFrags
 
std::vector< TDetectorHit * > fSuppressedAddbackLowGainHits
 
std::vector< TDetectorHit * > fSuppressedHighGainHits
 
std::vector< TDetectorHit * > fSuppressedLowGainHits
 

Static Private Attributes

static std::function< bool(const TDetectorHit *, const TDetectorHit *)> fAddbackCriterion = DefaultGriffinAddback
 
static EGainBits fDefaultGainType = TGriffin::EGainBits::kLowGain
 
static bool fSetCoreWave = false
 
static std::function< bool(const TDetectorHit *, const TDetectorHit *)> fSuppressionCriterion = DefaultGriffinSuppression
 
static TVector3 gCloverPosition [17]
 

#include <TGriffin.h>

+ Inheritance diagram for TGriffin:
+ Collaboration diagram for TGriffin:

Member Enumeration Documentation

◆ EGainBits

enum TGriffin::EGainBits
strong
Enumerator
kLowGain 
kHighGain 

Definition at line 35 of file TGriffin.h.

◆ EGriffinBits

Enumerator
kIsLowGainAddbackSet 
kIsHighGainAddbackSet 
kIsLowGainCrossTalkSet 
kIsHighGainCrossTalkSet 
kIsLowGainSuppressed 
kIsHighGainSuppressed 
kIsLowGainSuppressedAddbackSet 
kIsHighGainSuppressedAddbackSet 

Definition at line 25 of file TGriffin.h.

Constructor & Destructor Documentation

◆ TGriffin() [1/2]

TGriffin::TGriffin ( )

Definition at line 117 of file TGriffin.cxx.

References Clear().

◆ TGriffin() [2/2]

TGriffin::TGriffin ( const TGriffin rhs)

Definition at line 126 of file TGriffin.cxx.

References Copy().

◆ ~TGriffin()

Member Function Documentation

◆ AddbackCriterion()

bool TGriffin::AddbackCriterion ( const TDetectorHit hit1,
const TDetectorHit hit2 
)
inlineoverridevirtual

Reimplemented from TSuppressed.

Definition at line 78 of file TGriffin.h.

References fAddbackCriterion.

◆ AddFragment()

void TGriffin::AddFragment ( const std::shared_ptr< const TFragment > &  frag,
TChannel chan 
)
overridevirtual

◆ BuildHits()

void TGriffin::BuildHits ( )
inlineoverridevirtual

!

Reimplemented from TDetector.

Definition at line 57 of file TGriffin.h.

◆ Clear()

◆ ClearStatus()

void TGriffin::ClearStatus ( ) const
inlineprivate

!

Definition at line 169 of file TGriffin.h.

References fGriffinBits.

Referenced by Clear().

◆ ClearTransients()

void TGriffin::ClearTransients ( )
inlineoverridevirtual

!

Reimplemented from TDetector.

Definition at line 59 of file TGriffin.h.

References TDetector::ClearTransients(), fGriffinBits, and fGriffinHighGainHits.

◆ Copy()

◆ CreateAddback()

template<class T >
void TSuppressed::CreateAddback ( const std::vector< T *> &  hits,
std::vector< T *> &  addbacks,
std::vector< UShort_t > &  nofFragments 
)
inlineprotectedinherited

This funxtion always(!) re-creates the vectors of addback hits and number of fragments per addback hit based on the provided vector of hits

Because the functions to return hit vectors etc. are almost always returning vectors of TDetectorHits, T is most likely TDetectorHit. This means we can't use T directly to create a new hit, we need to use TClass::New().

Definition at line 34 of file TSuppressed.h.

References TSuppressed::AddbackCriterion(), TDetectorHit::kIsEnergySet, and TDetectorHit::kIsTimeSet.

Referenced by TTdrClover::GetAddbackMultiplicity(), TTdrTigress::GetAddbackMultiplicity(), TFipps::GetAddbackMultiplicity(), TIfin::GetAddbackMultiplicity(), and GetAddbackMultiplicity().

◆ CreateSuppressed()

template<class T >
void TSuppressed::CreateSuppressed ( const TBgo bgo,
const std::vector< T *> &  hits,
std::vector< T *> &  suppressedHits 
)
inlineprotectedinherited

This function always(!) re-creates the vector of suppressed hits based on the provided TBgo and vector of hits

Because the functions to return hit vectors etc. are almost always returning vectors of TDetectorHits, T is most likely TDetectorHit. This means we can't use T directly to create a new hit, we need to use TClass::New().

Definition at line 65 of file TSuppressed.h.

References TDetector::GetHitVector(), and TSuppressed::SuppressionCriterion().

Referenced by TFippsLaBr::GetSuppressedMultiplicity(), TLaBr::GetSuppressedMultiplicity(), TTdrTigress::GetSuppressedMultiplicity(), TTdrClover::GetSuppressedMultiplicity(), TIfin::GetSuppressedMultiplicity(), TFipps::GetSuppressedMultiplicity(), and GetSuppressedMultiplicity().

◆ CreateSuppressedAddback()

template<class T >
void TSuppressed::CreateSuppressedAddback ( const TBgo bgo,
const std::vector< T *> &  hits,
std::vector< T *> &  addbacks,
std::vector< UShort_t > &  nofFragments 
)
inlineprotectedinherited

This funxtion always(!) re-creates the vectors of suppressed addback hits and number of fragments per suppressed addback hit based on the provided TBgo and vector of hits

Because the functions to return hit vectors etc. are almost always returning vectors of TDetectorHits, T is most likely TDetectorHit. This means we can't use T directly to create a new hit, we need to use TClass::New().

Definition at line 90 of file TSuppressed.h.

References TSuppressed::AddbackCriterion(), TDetector::GetHitVector(), TDetectorHit::kIsEnergySet, TDetectorHit::kIsTimeSet, and TSuppressed::SuppressionCriterion().

Referenced by TTdrClover::GetSuppressedAddbackMultiplicity(), TTdrTigress::GetSuppressedAddbackMultiplicity(), TFipps::GetSuppressedAddbackMultiplicity(), TIfin::GetSuppressedAddbackMultiplicity(), and GetSuppressedAddbackMultiplicity().

◆ CTCorrectedEnergy()

Double_t TGriffin::CTCorrectedEnergy ( const TGriffinHit *const  hit_to_correct,
const TGriffinHit *const  other_hit,
Bool_t  time_constraint = true 
)
static

◆ FixCrossTalk()

◆ FixHighGainCrossTalk()

void TGriffin::FixHighGainCrossTalk ( )

Definition at line 633 of file TGriffin.cxx.

References FixCrossTalk(), and kHighGain.

◆ FixLowGainCrossTalk()

void TGriffin::FixLowGainCrossTalk ( )

Definition at line 628 of file TGriffin.cxx.

References FixCrossTalk(), and kLowGain.

◆ GetAddbackCriterion()

std::function<bool(const TDetectorHit*, const TDetectorHit*)> TGriffin::GetAddbackCriterion ( ) const
inline

Definition at line 76 of file TGriffin.h.

References fAddbackCriterion.

◆ GetAddbackFragVector()

std::vector< UShort_t > & TGriffin::GetAddbackFragVector ( const EGainBits gain_type)
private

◆ GetAddbackHighGainHit()

TGriffinHit * TGriffin::GetAddbackHighGainHit ( const int &  i)

Definition at line 442 of file TGriffin.cxx.

References GetAddbackHit(), and kHighGain.

◆ GetAddbackHighGainMultiplicity()

Short_t TGriffin::GetAddbackHighGainMultiplicity ( )

Definition at line 402 of file TGriffin.cxx.

References GetAddbackMultiplicity(), and kHighGain.

◆ GetAddbackHit() [1/2]

◆ GetAddbackHit() [2/2]

TGriffinHit * TGriffin::GetAddbackHit ( const int &  i,
const EGainBits gain_type 
)
private

Definition at line 447 of file TGriffin.cxx.

References GetAddbackMultiplicity(), and GetAddbackVector().

◆ GetAddbackLowGainHit()

TGriffinHit * TGriffin::GetAddbackLowGainHit ( const int &  i)

Definition at line 437 of file TGriffin.cxx.

References GetAddbackHit(), and kLowGain.

◆ GetAddbackLowGainMultiplicity()

Short_t TGriffin::GetAddbackLowGainMultiplicity ( )

Definition at line 397 of file TGriffin.cxx.

References GetAddbackMultiplicity(), and kLowGain.

◆ GetAddbackMultiplicity() [1/2]

◆ GetAddbackMultiplicity() [2/2]

Short_t TGriffin::GetAddbackMultiplicity ( const EGainBits gain_type)
private

◆ GetAddbackVector()

std::vector< TDetectorHit * > & TGriffin::GetAddbackVector ( const EGainBits gain_type)
private

◆ GetColorFromNumber()

const char * TGriffin::GetColorFromNumber ( int  number)
static

Definition at line 659 of file TGriffin.cxx.

Referenced by CrossTalkFix().

◆ GetDefaultGainType()

◆ GetDetectorPosition()

TVector3 TGriffin::GetDetectorPosition ( int  DetNbr)
static

!

Definition at line 528 of file TGriffin.cxx.

References gCloverPosition.

◆ GetGriffinHighGainHit()

TGriffinHit * TGriffin::GetGriffinHighGainHit ( const int &  i)

!

Definition at line 376 of file TGriffin.cxx.

References GetGriffinHit(), and kHighGain.

◆ GetGriffinHit() [1/2]

◆ GetGriffinHit() [2/2]

TGriffinHit * TGriffin::GetGriffinHit ( const int &  i,
const EGainBits gain_type 
)
private

!

Definition at line 381 of file TGriffin.cxx.

References FixCrossTalk(), GetHitVector(), and IsCrossTalkSet().

◆ GetGriffinLowGainHit()

TGriffinHit * TGriffin::GetGriffinLowGainHit ( const int &  i)

!

Definition at line 371 of file TGriffin.cxx.

References GetGriffinHit(), and kLowGain.

◆ GetHighGainMultiplicity()

Short_t TGriffin::GetHighGainMultiplicity ( ) const
inline

Definition at line 48 of file TGriffin.h.

References fGriffinHighGainHits.

Referenced by Print().

◆ GetHit() [1/3]

TDetectorHit * TDetector::GetHit

Definition at line 70 of file TDetector.cxx.

◆ GetHit() [2/3]

TDetectorHit * TGriffin::GetHit ( const int &  idx)

Definition at line 366 of file TGriffin.cxx.

References GetGriffinHit().

Referenced by exAnalysis(), and MakeAnalysisHistograms().

◆ GetHit() [3/3]

◆ GetHitVector() [1/3]

const std::vector<TDetectorHit*>& TGriffin::GetHitVector ( ) const
inlineoverrideprivatevirtual

◆ GetHitVector() [2/3]

std::vector< TDetectorHit * > & TGriffin::GetHitVector ( const EGainBits gain_type)
private

!

Definition at line 305 of file TGriffin.cxx.

References fGriffinHighGainHits, fGriffinLowGainHits, kHighGain, and kLowGain.

◆ GetHitVector() [3/3]

const std::vector< TDetectorHit * > & TGriffin::GetHitVector ( const EGainBits gain_type) const
private

!

Definition at line 296 of file TGriffin.cxx.

References fGriffinHighGainHits, fGriffinLowGainHits, kHighGain, and kLowGain.

◆ GetLowGainMultiplicity()

Short_t TGriffin::GetLowGainMultiplicity ( ) const
inline

Definition at line 47 of file TGriffin.h.

References fGriffinLowGainHits.

Referenced by Print().

◆ GetMultiplicity() [1/2]

◆ GetMultiplicity() [2/2]

Short_t TGriffin::GetMultiplicity ( const EGainBits gain_type) const
private

Definition at line 287 of file TGriffin.cxx.

References fGriffinHighGainHits, fGriffinLowGainHits, kHighGain, and kLowGain.

◆ GetNAddbackFrags() [1/2]

UShort_t TGriffin::GetNAddbackFrags ( const size_t &  idx)
inline

◆ GetNAddbackFrags() [2/2]

UShort_t TGriffin::GetNAddbackFrags ( const size_t &  idx,
const EGainBits gain_type 
)
private

Definition at line 574 of file TGriffin.cxx.

References GetAddbackFragVector().

◆ GetNHighGainAddbackFrags()

UShort_t TGriffin::GetNHighGainAddbackFrags ( const size_t &  idx)

Definition at line 569 of file TGriffin.cxx.

References GetNAddbackFrags(), and kHighGain.

◆ GetNHighGainSuppressedAddbackFrags()

UShort_t TGriffin::GetNHighGainSuppressedAddbackFrags ( const size_t &  idx)

Definition at line 753 of file TGriffin.cxx.

References GetNSuppressedAddbackFrags(), and kHighGain.

◆ GetNLowGainAddbackFrags()

UShort_t TGriffin::GetNLowGainAddbackFrags ( const size_t &  idx)

Definition at line 564 of file TGriffin.cxx.

References GetNAddbackFrags(), and kLowGain.

◆ GetNLowGainSuppressedAddbackFrags()

UShort_t TGriffin::GetNLowGainSuppressedAddbackFrags ( const size_t &  idx)

Definition at line 748 of file TGriffin.cxx.

References GetNSuppressedAddbackFrags(), and kLowGain.

◆ GetNSuppressedAddbackFrags() [1/2]

UShort_t TGriffin::GetNSuppressedAddbackFrags ( const size_t &  idx)
inline

◆ GetNSuppressedAddbackFrags() [2/2]

UShort_t TGriffin::GetNSuppressedAddbackFrags ( const size_t &  idx,
const EGainBits gain_type 
)
private

Definition at line 911 of file TGriffin.cxx.

References GetSuppressedAddbackFragVector().

◆ GetPosition()

TVector3 TGriffin::GetPosition ( int  DetNbr,
int  CryNbr = 5,
double  dist = 110.0 
)
static

◆ GetSuppressedAddbackFragVector()

std::vector< UShort_t > & TGriffin::GetSuppressedAddbackFragVector ( const EGainBits gain_type)
private

◆ GetSuppressedAddbackHighGainHit()

TGriffinHit * TGriffin::GetSuppressedAddbackHighGainHit ( const int &  i)

Definition at line 724 of file TGriffin.cxx.

References GetSuppressedAddbackHit(), and kHighGain.

◆ GetSuppressedAddbackHighGainMultiplicity()

Short_t TGriffin::GetSuppressedAddbackHighGainMultiplicity ( const TBgo bgo)

Definition at line 714 of file TGriffin.cxx.

References GetSuppressedAddbackMultiplicity(), and kHighGain.

◆ GetSuppressedAddbackHit() [1/2]

◆ GetSuppressedAddbackHit() [2/2]

TGriffinHit * TGriffin::GetSuppressedAddbackHit ( const int &  i,
const EGainBits gain_type 
)
private

Definition at line 846 of file TGriffin.cxx.

References FixCrossTalk(), GetSuppressedAddbackVector(), and IsCrossTalkSet().

◆ GetSuppressedAddbackLowGainHit()

TGriffinHit * TGriffin::GetSuppressedAddbackLowGainHit ( const int &  i)

Definition at line 719 of file TGriffin.cxx.

References GetSuppressedAddbackHit(), and kLowGain.

◆ GetSuppressedAddbackLowGainMultiplicity()

Short_t TGriffin::GetSuppressedAddbackLowGainMultiplicity ( const TBgo bgo)

Definition at line 709 of file TGriffin.cxx.

References GetSuppressedAddbackMultiplicity(), and kLowGain.

◆ GetSuppressedAddbackMultiplicity() [1/2]

◆ GetSuppressedAddbackMultiplicity() [2/2]

Short_t TGriffin::GetSuppressedAddbackMultiplicity ( const TBgo bgo,
const EGainBits gain_type 
)
private

Automatically builds the suppressed addback hits using the fAddbackCriterion (if the size of the fAddbackHits vector is zero) and return the number of suppressed addback hits.

Definition at line 862 of file TGriffin.cxx.

References TSuppressed::CreateSuppressedAddback(), FixCrossTalk(), GetHitVector(), GetSuppressedAddbackFragVector(), GetSuppressedAddbackVector(), IsCrossTalkSet(), IsSuppressedAddbackSet(), and SetSuppressedAddback().

◆ GetSuppressedAddbackVector()

std::vector< TDetectorHit * > & TGriffin::GetSuppressedAddbackVector ( const EGainBits gain_type)
private

◆ GetSuppressedHighGainHit()

TGriffinHit * TGriffin::GetSuppressedHighGainHit ( const int &  i)

!

Definition at line 675 of file TGriffin.cxx.

References GetSuppressedHit(), and kHighGain.

◆ GetSuppressedHighGainMultiplicity()

Short_t TGriffin::GetSuppressedHighGainMultiplicity ( const TBgo bgo)

Definition at line 685 of file TGriffin.cxx.

References GetSuppressedMultiplicity(), and kHighGain.

◆ GetSuppressedHit() [1/2]

TGriffinHit* TGriffin::GetSuppressedHit ( const int &  i)
inline

◆ GetSuppressedHit() [2/2]

TGriffinHit * TGriffin::GetSuppressedHit ( const int &  i,
const EGainBits gain_type 
)
private

!

Definition at line 785 of file TGriffin.cxx.

References FixCrossTalk(), GetSuppressedVector(), and IsCrossTalkSet().

◆ GetSuppressedLowGainHit()

TGriffinHit * TGriffin::GetSuppressedLowGainHit ( const int &  i)

!

Definition at line 670 of file TGriffin.cxx.

References GetSuppressedHit(), and kLowGain.

◆ GetSuppressedLowGainMultiplicity()

Short_t TGriffin::GetSuppressedLowGainMultiplicity ( const TBgo bgo)

Definition at line 680 of file TGriffin.cxx.

References GetSuppressedMultiplicity(), and kLowGain.

◆ GetSuppressedMultiplicity() [1/2]

◆ GetSuppressedMultiplicity() [2/2]

Short_t TGriffin::GetSuppressedMultiplicity ( const TBgo bgo,
const EGainBits gain_type 
)
private

Automatically builds the suppressed hits using the fSuppressionCriterion and returns the number of suppressed hits

Definition at line 801 of file TGriffin.cxx.

References TSuppressed::CreateSuppressed(), FixCrossTalk(), GetHitVector(), GetSuppressedVector(), IsCrossTalkSet(), IsSuppressed(), and SetSuppressed().

◆ GetSuppressedVector()

std::vector< TDetectorHit * > & TGriffin::GetSuppressedVector ( const EGainBits gain_type)
private

◆ GetSuppressionCriterion()

std::function<bool(const TDetectorHit*, const TDetectorHit*)> TGriffin::GetSuppressionCriterion ( ) const
inline

Definition at line 100 of file TGriffin.h.

References fSuppressionCriterion.

◆ IsAddbackSet()

bool TGriffin::IsAddbackSet ( const EGainBits gain_type) const

◆ IsCrossTalkSet()

◆ IsSuppressed()

bool TGriffin::IsSuppressed ( const EGainBits gain_type) const

◆ IsSuppressedAddbackSet()

bool TGriffin::IsSuppressedAddbackSet ( const EGainBits gain_type) const

◆ operator=()

TGriffin & TGriffin::operator= ( const TGriffin rhs)

!

Definition at line 272 of file TGriffin.cxx.

References Copy().

◆ Print() [1/2]

void TGriffin::Print ( Option_t *  opt = "") const
override

!

Definition at line 231 of file TGriffin.cxx.

Referenced by Print().

◆ Print() [2/2]

void TGriffin::Print ( std::ostream &  out) const
overridevirtual

◆ ResetAddback() [1/2]

void TGriffin::ResetAddback ( )
inline

!

Definition at line 90 of file TGriffin.h.

References GetDefaultGainType(), and ResetAddback().

Referenced by ResetAddback(), ResetHighGainAddback(), and ResetLowGainAddback().

◆ ResetAddback() [2/2]

void TGriffin::ResetAddback ( const EGainBits gain_type)
private

!

Definition at line 553 of file TGriffin.cxx.

References GetAddbackFragVector(), GetAddbackVector(), SetAddback(), and SetCrossTalk().

◆ ResetFlags()

void TGriffin::ResetFlags ( ) const

Definition at line 538 of file TGriffin.cxx.

References fGriffinBits.

◆ ResetHighGainAddback()

void TGriffin::ResetHighGainAddback ( )

!

Definition at line 548 of file TGriffin.cxx.

References kLowGain, and ResetAddback().

◆ ResetHighGainSuppressed()

void TGriffin::ResetHighGainSuppressed ( )

!

Definition at line 704 of file TGriffin.cxx.

References kHighGain, and ResetSuppressed().

◆ ResetHighGainSuppressedAddback()

void TGriffin::ResetHighGainSuppressedAddback ( )

!

Definition at line 743 of file TGriffin.cxx.

References kHighGain, and ResetSuppressedAddback().

◆ ResetLowGainAddback()

void TGriffin::ResetLowGainAddback ( )

!

Definition at line 543 of file TGriffin.cxx.

References kLowGain, and ResetAddback().

◆ ResetLowGainSuppressed()

void TGriffin::ResetLowGainSuppressed ( )

!

Definition at line 699 of file TGriffin.cxx.

References kLowGain, and ResetSuppressed().

◆ ResetLowGainSuppressedAddback()

void TGriffin::ResetLowGainSuppressedAddback ( )

!

Definition at line 738 of file TGriffin.cxx.

References kLowGain, and ResetSuppressedAddback().

◆ ResetSuppressed() [1/2]

void TGriffin::ResetSuppressed ( )
inline

◆ ResetSuppressed() [2/2]

void TGriffin::ResetSuppressed ( const EGainBits gain_type)
private

!

Definition at line 836 of file TGriffin.cxx.

References GetSuppressedVector(), and SetSuppressed().

◆ ResetSuppressedAddback() [1/2]

void TGriffin::ResetSuppressedAddback ( )
inline

◆ ResetSuppressedAddback() [2/2]

void TGriffin::ResetSuppressedAddback ( const EGainBits gain_type)
private

◆ SetAddback()

void TGriffin::SetAddback ( const EGainBits gain_type,
bool  flag = true 
) const
private

◆ SetAddbackCriterion()

void TGriffin::SetAddbackCriterion ( std::function< bool(const TDetectorHit *, const TDetectorHit *)>  criterion)
inline

Definition at line 72 of file TGriffin.h.

References fAddbackCriterion.

◆ SetBitNumber()

void TGriffin::SetBitNumber ( EGriffinBits  bit,
Bool_t  set 
) const
private

◆ SetCoreWave()

static bool TGriffin::SetCoreWave ( )
inlinestatic

!

Definition at line 163 of file TGriffin.h.

References fSetCoreWave.

◆ SetCrossTalk()

void TGriffin::SetCrossTalk ( const EGainBits gain_type,
bool  flag = true 
) const
private

◆ SetDefaultGainType()

void TGriffin::SetDefaultGainType ( const EGainBits gain_type)
static

Definition at line 278 of file TGriffin.cxx.

References fDefaultGainType, kHighGain, and kLowGain.

◆ SetSuppressed()

void TGriffin::SetSuppressed ( const EGainBits gain_type,
bool  flag = true 
) const
private

◆ SetSuppressedAddback()

void TGriffin::SetSuppressedAddback ( const EGainBits gain_type,
bool  flag = true 
) const
private

◆ SetSuppressionCriterion()

void TGriffin::SetSuppressionCriterion ( std::function< bool(const TDetectorHit *, const TDetectorHit *)>  criterion)
inline

Definition at line 96 of file TGriffin.h.

References fSuppressionCriterion.

◆ SuppressionCriterion()

bool TGriffin::SuppressionCriterion ( const TDetectorHit hit,
const TDetectorHit bgoHit 
)
inlineoverridevirtual

Reimplemented from TSuppressed.

Definition at line 102 of file TGriffin.h.

References fSuppressionCriterion.

◆ TestBitNumber()

Bool_t TGriffin::TestBitNumber ( EGriffinBits  bit) const
inlineprivate

Member Data Documentation

◆ fAddbackCriterion

std::function< bool(const TDetectorHit *, const TDetectorHit *)> TGriffin::fAddbackCriterion = DefaultGriffinAddback
staticprivate

Definition at line 132 of file TGriffin.h.

Referenced by AddbackCriterion(), GetAddbackCriterion(), and SetAddbackCriterion().

◆ fAddbackHighGainFrags

std::vector<UShort_t> TGriffin::fAddbackHighGainFrags
mutableprivate

! Number of crystals involved in creating in the addback hit

Definition at line 150 of file TGriffin.h.

Referenced by Clear(), Copy(), and GetAddbackFragVector().

◆ fAddbackHighGainHits

std::vector<TDetectorHit*> TGriffin::fAddbackHighGainHits
mutableprivate

! Used to create addback hits on the fly

Definition at line 148 of file TGriffin.h.

Referenced by Clear(), Copy(), GetAddbackVector(), Print(), and ~TGriffin().

◆ fAddbackLowGainFrags

std::vector<UShort_t> TGriffin::fAddbackLowGainFrags
mutableprivate

! Number of crystals involved in creating in the addback hit

Definition at line 149 of file TGriffin.h.

Referenced by Clear(), Copy(), and GetAddbackFragVector().

◆ fAddbackLowGainHits

std::vector<TDetectorHit*> TGriffin::fAddbackLowGainHits
mutableprivate

! Used to create addback hits on the fly

Definition at line 147 of file TGriffin.h.

Referenced by Clear(), Copy(), GetAddbackVector(), Print(), and ~TGriffin().

◆ fCycleStart

long TGriffin::fCycleStart
private

! The start of the cycle

Definition at line 144 of file TGriffin.h.

Referenced by Clear(), Copy(), and Print().

◆ fDefaultGainType

TGriffin::EGainBits TGriffin::fDefaultGainType = TGriffin::EGainBits::kLowGain
staticprivate

Definition at line 160 of file TGriffin.h.

Referenced by GetDefaultGainType(), GetHitVector(), and SetDefaultGainType().

◆ fGriffinBits

TTransientBits<UChar_t> TGriffin::fGriffinBits
mutableprivate

Definition at line 145 of file TGriffin.h.

Referenced by ClearStatus(), ClearTransients(), Copy(), ResetFlags(), SetBitNumber(), and TestBitNumber().

◆ fGriffinHighGainHits

std::vector<TDetectorHit*> TGriffin::fGriffinHighGainHits
private

◆ fGriffinLowGainHits

std::vector<TDetectorHit*>& TGriffin::fGriffinLowGainHits = fHits
private

! Reference to default hit vector (needs to be transient)

Definition at line 136 of file TGriffin.h.

Referenced by GetHitVector(), GetLowGainMultiplicity(), GetMultiplicity(), and Print().

◆ fHits

std::vector<TDetectorHit*> TDetector::fHits
protectedinherited

Definition at line 72 of file TDetector.h.

Referenced by TSiLi::AddCluster(), TEaglePulser::AddFragment(), TFippsPulser::AddFragment(), TGenericDetector::AddFragment(), TPaces::AddFragment(), TTdrSiLi::AddFragment(), TBgo::AddFragment(), TSiLi::AddFragment(), TTip::AddFragment(), TSceptar::AddFragment(), TTdrPlastic::AddFragment(), TTAC::AddFragment(), TFippsTAC::AddFragment(), TEagle::AddFragment(), TDescant::AddFragment(), TZeroDegree::AddFragment(), TTdrClover::AddFragment(), TTdrTigress::AddFragment(), TFipps::AddFragment(), TIfin::AddFragment(), TTrific::AddFragment(), TLaBr::AddFragment(), TFippsLaBr::AddFragment(), TTigress::AddFragment(), TEmma::BuildHits(), TCSM::BuildHits(), TSharc::BuildHits(), TTigress::BuildHits(), TSharc::Clear(), TDetector::Clear(), TEmma::Clear(), TTrific::Clear(), TDetector::ClearTransients(), TDetector::Copy(), TSiLi::GetAddbackMultiplicity(), TTigress::GetAddbackMultiplicity(), TFipps::GetFippsHit(), TDetector::GetHit(), TDetector::GetHitVector(), TIfin::GetIfinHit(), TDetector::GetMultiplicity(), TTrific::GetMultiplicity(), TSharc::GetSize(), TFippsLaBr::GetSuppressedMultiplicity(), TLaBr::GetSuppressedMultiplicity(), TTdrTigress::GetSuppressedMultiplicity(), TTdrClover::GetSuppressedMultiplicity(), TSiLi::Print(), TTdrSiLi::Print(), TTAC::Print(), TPaces::Print(), TFippsTAC::Print(), TTip::Print(), TZeroDegree::Print(), TTdrPlastic::Print(), TSceptar::Print(), TEagle::Print(), TDetector::Print(), TDescant::Print(), TEmma::Print(), TFippsLaBr::Print(), TLaBr::Print(), TTrific::Print(), TTigress::Print(), TSiLi::UseFitCharge(), and TDetector::~TDetector().

◆ fSetCoreWave

bool TGriffin::fSetCoreWave = false
staticprivate

! Flag for Waveforms ON/OFF

Definition at line 141 of file TGriffin.h.

Referenced by Copy(), and SetCoreWave().

◆ fSuppressedAddbackHighGainFrags

std::vector<UShort_t> TGriffin::fSuppressedAddbackHighGainFrags
mutableprivate

! Number of crystals involved in creating in the suppressed addback hit

Definition at line 158 of file TGriffin.h.

Referenced by Clear(), Copy(), and GetSuppressedAddbackFragVector().

◆ fSuppressedAddbackHighGainHits

std::vector<TDetectorHit*> TGriffin::fSuppressedAddbackHighGainHits
mutableprivate

! Used to create suppressed addback hits on the fly

Definition at line 156 of file TGriffin.h.

Referenced by Clear(), Copy(), GetSuppressedAddbackVector(), and ~TGriffin().

◆ fSuppressedAddbackLowGainFrags

std::vector<UShort_t> TGriffin::fSuppressedAddbackLowGainFrags
mutableprivate

! Number of crystals involved in creating in the suppressed addback hit

Definition at line 157 of file TGriffin.h.

Referenced by Clear(), Copy(), and GetSuppressedAddbackFragVector().

◆ fSuppressedAddbackLowGainHits

std::vector<TDetectorHit*> TGriffin::fSuppressedAddbackLowGainHits
mutableprivate

! Used to create suppressed addback hits on the fly

Definition at line 155 of file TGriffin.h.

Referenced by Clear(), Copy(), GetSuppressedAddbackVector(), and ~TGriffin().

◆ fSuppressedHighGainHits

std::vector<TDetectorHit*> TGriffin::fSuppressedHighGainHits
private

! The set of suppressed crystal hits

Definition at line 153 of file TGriffin.h.

Referenced by Clear(), Copy(), GetSuppressedVector(), and ~TGriffin().

◆ fSuppressedLowGainHits

std::vector<TDetectorHit*> TGriffin::fSuppressedLowGainHits
private

! The set of suppressed crystal hits

Definition at line 152 of file TGriffin.h.

Referenced by Clear(), Copy(), GetSuppressedVector(), and ~TGriffin().

◆ fSuppressionCriterion

std::function< bool(const TDetectorHit *, const TDetectorHit *)> TGriffin::fSuppressionCriterion = DefaultGriffinSuppression
staticprivate

◆ gCloverPosition

TVector3 TGriffin::gCloverPosition
staticprivate

! Position of each HPGe Clover

Definition at line 168 of file TGriffin.h.

Referenced by GetDetectorPosition(), and GetPosition().