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

Definition at line 26 of file TTdrTigress.h.

Public Types

enum  ETdrTigressBits {
  ETdrTigressBits::kIsAddbackSet = 1<<0, ETdrTigressBits::kIsCrossTalkSet = 1<<1, ETdrTigressBits::kIsSuppressedSet = 1<<2, ETdrTigressBits::kIsSupprAddbSet = 1<<3,
  ETdrTigressBits::kBit4 = 1<<4, ETdrTigressBits::kBit5 = 1<<5, ETdrTigressBits::kBit6 = 1<<6, ETdrTigressBits::kBit7 = 1<<7
}
 

Public Member Functions

 TTdrTigress ()
 
 TTdrTigress (const TTdrTigress &)
 
 ~TTdrTigress () override
 
virtual bool AddbackCriterion (const TDetectorHit *, const TDetectorHit *)
 
void AddFragment (const std::shared_ptr< const TFragment > &, TChannel *) override
 
virtual void BuildHits ()
 
void Clear (Option_t *opt="all") override
 
virtual void ClearTransients ()
 
void Copy (TObject &) const override
 
std::function< bool(TTdrTigressHit *, TTdrTigressHit *)> GetAddbackCriterion () const
 
TDetectorHitGetAddbackHit (const int &i)
 
Int_t GetAddbackMultiplicity ()
 
virtual TDetectorHitGetHit (const int &) const
 
virtual const std::vector< TDetectorHit * > & GetHitVector () const
 
virtual Short_t GetMultiplicity () const
 
UShort_t GetNAddbackFrags (const size_t &idx)
 
UShort_t GetNSuppressedAddbackFrags (const size_t &idx)
 
TDetectorHitGetSuppressedAddbackHit (const int &i)
 
Int_t GetSuppressedAddbackMultiplicity (TBgo *)
 
TDetectorHitGetSuppressedHit (const int &i)
 
Int_t GetSuppressedMultiplicity (TBgo *)
 
std::function< bool(TTdrTigressHit *, TBgoHit *)> GetSuppressionCriterion () const
 
TDetectorHitGetTdrTigressHit (const Int_t &i) const
 
bool IsAddbackSet () const
 
bool IsSuppressedAddbackSet () const
 
bool IsSuppressedSet () const
 
TTdrTigressoperator= (const TTdrTigress &)
 
void Print (Option_t *opt="") const override
 
void Print (std::ostream &out) const override
 
void ResetAddback ()
 
void ResetFlags () const
 
void ResetSuppressed ()
 
void ResetSuppressedAddback ()
 
void SetAddbackCriterion (std::function< bool(TTdrTigressHit *, TTdrTigressHit *)> criterion)
 
void SetSuppressionCriterion (std::function< bool(TTdrTigressHit *, TBgoHit *)> criterion)
 
virtual bool SuppressionCriterion (const TDetectorHit *, const TDetectorHit *)
 

Static Public Member Functions

static const char * GetColorFromNumber (Int_t number)
 
static TVector3 GetPosition (int DetNbr, int CryNbr=5, double dist=110.0)
 
static bool SetCoreWave ()
 

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
 
std::vector< UShort_t > & GetAddbackFragVector ()
 
std::vector< TDetectorHit * > & GetAddbackVector ()
 
std::vector< UShort_t > & GetSuppressedAddbackFragVector ()
 
std::vector< TDetectorHit * > & GetSuppressedAddbackVector ()
 
std::vector< TDetectorHit * > & GetSuppressedVector ()
 
void SetAddback (bool flag=true) const
 
void SetBitNumber (ETdrTigressBits bit, Bool_t set) const
 
void SetSuppressed (bool flag=true) const
 
void SetSuppressedAddback (bool flag=true) const
 
Bool_t TestBitNumber (ETdrTigressBits bit) const
 

Private Attributes

std::vector< UShort_t > fAddbackFrags
 
std::vector< TDetectorHit * > fAddbackHits
 
long fCycleStart
 
std::vector< UShort_t > fSuppressedAddbackFrags
 
std::vector< TDetectorHit * > fSuppressedAddbackHits
 
std::vector< TDetectorHit * > fSuppressedHits
 
TTransientBits< UChar_t > fTdrTigressBits
 

Static Private Attributes

static std::function< bool(TTdrTigressHit *, TTdrTigressHit *)> fAddbackCriterion = DefaultAddback
 
static std::map< int, TSpline * > fEnergyResiduals
 
static bool fSetCoreWave = false
 
static std::function< bool(TTdrTigressHit *, TBgoHit *)> fSuppressionCriterion = DefaultSuppression
 
static TVector3 gTigressPosition [17]
 

#include <TTdrTigress.h>

+ Inheritance diagram for TTdrTigress:
+ Collaboration diagram for TTdrTigress:

Member Enumeration Documentation

◆ ETdrTigressBits

Enumerator
kIsAddbackSet 
kIsCrossTalkSet 
kIsSuppressedSet 
kIsSupprAddbSet 
kBit4 
kBit5 
kBit6 
kBit7 

Definition at line 28 of file TTdrTigress.h.

Constructor & Destructor Documentation

◆ TTdrTigress() [1/2]

TTdrTigress::TTdrTigress ( )

Definition at line 118 of file TTdrTigress.cxx.

References Clear().

◆ TTdrTigress() [2/2]

TTdrTigress::TTdrTigress ( const TTdrTigress rhs)

Definition at line 127 of file TTdrTigress.cxx.

References Copy().

◆ ~TTdrTigress()

TTdrTigress::~TTdrTigress ( )
override

Definition at line 151 of file TTdrTigress.cxx.

Member Function Documentation

◆ AddbackCriterion()

virtual bool TSuppressed::AddbackCriterion ( const TDetectorHit ,
const TDetectorHit  
)
inlinevirtualinherited

Reimplemented in TGriffin, TFipps, and TIfin.

Definition at line 26 of file TSuppressed.h.

Referenced by TSuppressed::CreateAddback(), and TSuppressed::CreateSuppressedAddback().

◆ AddFragment()

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

!

Reimplemented from TDetector.

Definition at line 364 of file TTdrTigress.cxx.

References TDetector::fHits.

◆ BuildHits()

virtual void TDetector::BuildHits ( )
inlinevirtualinherited

◆ Clear()

void TTdrTigress::Clear ( Option_t *  opt = "all")
override

◆ ClearStatus()

void TTdrTigress::ClearStatus ( ) const
inlineprivate

!

Definition at line 106 of file TTdrTigress.h.

References fTdrTigressBits.

Referenced by Clear().

◆ ClearTransients()

void TDetector::ClearTransients ( )
virtualinherited

!

Reimplemented in TS3, TTigress, TTrific, and TGriffin.

Definition at line 63 of file TDetector.cxx.

References TDetector::fHits.

Referenced by TGriffin::ClearTransients(), TTrific::ClearTransients(), and TTigress::ClearTransients().

◆ Copy()

void TTdrTigress::Copy ( TObject &  rhs) const
overridevirtual

◆ 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(), GetAddbackMultiplicity(), TIfin::GetAddbackMultiplicity(), TFipps::GetAddbackMultiplicity(), and TGriffin::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(), TTdrClover::GetSuppressedMultiplicity(), GetSuppressedMultiplicity(), TFipps::GetSuppressedMultiplicity(), TIfin::GetSuppressedMultiplicity(), and TGriffin::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(), GetSuppressedAddbackMultiplicity(), TIfin::GetSuppressedAddbackMultiplicity(), TFipps::GetSuppressedAddbackMultiplicity(), and TGriffin::GetSuppressedAddbackMultiplicity().

◆ GetAddbackCriterion()

std::function<bool(TTdrTigressHit*, TTdrTigressHit*)> TTdrTigress::GetAddbackCriterion ( ) const
inline

Definition at line 60 of file TTdrTigress.h.

References fAddbackCriterion.

◆ GetAddbackFragVector()

std::vector< UShort_t > & TTdrTigress::GetAddbackFragVector ( )
private

!

Definition at line 213 of file TTdrTigress.cxx.

References fAddbackFrags.

Referenced by GetAddbackMultiplicity(), GetNAddbackFrags(), and ResetAddback().

◆ GetAddbackHit()

TDetectorHit * TTdrTigress::GetAddbackHit ( const int &  i)

Definition at line 286 of file TTdrTigress.cxx.

References GetAddbackMultiplicity(), and GetAddbackVector().

◆ GetAddbackMultiplicity()

Int_t TTdrTigress::GetAddbackMultiplicity ( )

◆ GetAddbackVector()

std::vector< TDetectorHit * > & TTdrTigress::GetAddbackVector ( )
private

!

Definition at line 208 of file TTdrTigress.cxx.

References fAddbackHits.

Referenced by GetAddbackHit(), GetAddbackMultiplicity(), and ResetAddback().

◆ GetColorFromNumber()

const char * TTdrTigress::GetColorFromNumber ( Int_t  number)
static

Definition at line 459 of file TTdrTigress.cxx.

◆ GetHit()

◆ GetHitVector()

◆ GetMultiplicity()

◆ GetNAddbackFrags()

UShort_t TTdrTigress::GetNAddbackFrags ( const size_t &  idx)

Definition at line 420 of file TTdrTigress.cxx.

References GetAddbackFragVector().

◆ GetNSuppressedAddbackFrags()

UShort_t TTdrTigress::GetNSuppressedAddbackFrags ( const size_t &  idx)

Definition at line 443 of file TTdrTigress.cxx.

References GetSuppressedAddbackFragVector().

◆ GetPosition()

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

!

Definition at line 376 of file TTdrTigress.cxx.

References gTigressPosition.

Referenced by TTdrTigressHit::GetPosition().

◆ GetSuppressedAddbackFragVector()

std::vector< UShort_t > & TTdrTigress::GetSuppressedAddbackFragVector ( )
private

◆ GetSuppressedAddbackHit()

TDetectorHit * TTdrTigress::GetSuppressedAddbackHit ( const int &  i)

Definition at line 351 of file TTdrTigress.cxx.

References GetSuppressedAddbackVector().

◆ GetSuppressedAddbackMultiplicity()

◆ GetSuppressedAddbackVector()

std::vector< TDetectorHit * > & TTdrTigress::GetSuppressedAddbackVector ( )
private

◆ GetSuppressedHit()

TDetectorHit * TTdrTigress::GetSuppressedHit ( const int &  i)

Definition at line 315 of file TTdrTigress.cxx.

References GetSuppressedVector().

◆ GetSuppressedMultiplicity()

Int_t TTdrTigress::GetSuppressedMultiplicity ( TBgo bgo)

◆ GetSuppressedVector()

std::vector< TDetectorHit * > & TTdrTigress::GetSuppressedVector ( )
private

!

Definition at line 228 of file TTdrTigress.cxx.

References fSuppressedHits.

Referenced by GetSuppressedHit(), and ResetSuppressed().

◆ GetSuppressionCriterion()

std::function<bool(TTdrTigressHit*, TBgoHit*)> TTdrTigress::GetSuppressionCriterion ( ) const
inline

Definition at line 65 of file TTdrTigress.h.

References fSuppressionCriterion.

◆ GetTdrTigressHit()

TDetectorHit* TTdrTigress::GetTdrTigressHit ( const Int_t &  i) const
inline

Definition at line 44 of file TTdrTigress.h.

References TDetector::GetHit().

◆ IsAddbackSet()

bool TTdrTigress::IsAddbackSet ( ) const

Definition at line 218 of file TTdrTigress.cxx.

References kIsAddbackSet, and TestBitNumber().

Referenced by GetAddbackMultiplicity(), and Print().

◆ IsSuppressedAddbackSet()

bool TTdrTigress::IsSuppressedAddbackSet ( ) const

Definition at line 253 of file TTdrTigress.cxx.

References kIsSupprAddbSet, and TestBitNumber().

Referenced by GetSuppressedAddbackMultiplicity(), and Print().

◆ IsSuppressedSet()

bool TTdrTigress::IsSuppressedSet ( ) const

Definition at line 233 of file TTdrTigress.cxx.

References kIsSuppressedSet, and TestBitNumber().

Referenced by GetSuppressedMultiplicity(), and Print().

◆ operator=()

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

!

Definition at line 202 of file TTdrTigress.cxx.

References Copy().

◆ Print() [1/2]

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

!

Definition at line 169 of file TTdrTigress.cxx.

◆ Print() [2/2]

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

◆ ResetAddback()

void TTdrTigress::ResetAddback ( )

Definition at line 413 of file TTdrTigress.cxx.

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

◆ ResetFlags()

void TTdrTigress::ResetFlags ( ) const

Definition at line 408 of file TTdrTigress.cxx.

References fTdrTigressBits.

◆ ResetSuppressed()

void TTdrTigress::ResetSuppressed ( )

Definition at line 430 of file TTdrTigress.cxx.

References GetSuppressedVector(), and SetSuppressed().

◆ ResetSuppressedAddback()

void TTdrTigress::ResetSuppressedAddback ( )

◆ SetAddback()

void TTdrTigress::SetAddback ( bool  flag = true) const
private

Definition at line 223 of file TTdrTigress.cxx.

References kIsAddbackSet, and SetBitNumber().

Referenced by GetAddbackMultiplicity(), and ResetAddback().

◆ SetAddbackCriterion()

void TTdrTigress::SetAddbackCriterion ( std::function< bool(TTdrTigressHit *, TTdrTigressHit *)>  criterion)
inline

Definition at line 56 of file TTdrTigress.h.

References fAddbackCriterion.

◆ SetBitNumber()

void TTdrTigress::SetBitNumber ( ETdrTigressBits  bit,
Bool_t  set 
) const
private

Definition at line 453 of file TTdrTigress.cxx.

References fTdrTigressBits, and TTransientBits< T >::SetBit().

Referenced by SetAddback(), SetSuppressed(), and SetSuppressedAddback().

◆ SetCoreWave()

static bool TTdrTigress::SetCoreWave ( )
inlinestatic

!

Definition at line 101 of file TTdrTigress.h.

References fSetCoreWave.

◆ SetSuppressed()

void TTdrTigress::SetSuppressed ( bool  flag = true) const
private

Definition at line 238 of file TTdrTigress.cxx.

References kIsSuppressedSet, and SetBitNumber().

Referenced by GetSuppressedMultiplicity(), and ResetSuppressed().

◆ SetSuppressedAddback()

void TTdrTigress::SetSuppressedAddback ( bool  flag = true) const
private

Definition at line 258 of file TTdrTigress.cxx.

References kIsSupprAddbSet, and SetBitNumber().

Referenced by GetSuppressedAddbackMultiplicity(), and ResetSuppressedAddback().

◆ SetSuppressionCriterion()

void TTdrTigress::SetSuppressionCriterion ( std::function< bool(TTdrTigressHit *, TBgoHit *)>  criterion)
inline

Definition at line 61 of file TTdrTigress.h.

References fSuppressionCriterion.

◆ SuppressionCriterion()

virtual bool TSuppressed::SuppressionCriterion ( const TDetectorHit ,
const TDetectorHit  
)
inlinevirtualinherited

Reimplemented in TGriffin, TFipps, TIfin, TLaBr, and TFippsLaBr.

Definition at line 27 of file TSuppressed.h.

Referenced by TSuppressed::CreateSuppressed(), and TSuppressed::CreateSuppressedAddback().

◆ TestBitNumber()

Bool_t TTdrTigress::TestBitNumber ( ETdrTigressBits  bit) const
inlineprivate

Member Data Documentation

◆ fAddbackCriterion

std::function< bool(TTdrTigressHit *, TTdrTigressHit *)> TTdrTigress::fAddbackCriterion = DefaultAddback
staticprivate

Definition at line 87 of file TTdrTigress.h.

Referenced by GetAddbackCriterion(), and SetAddbackCriterion().

◆ fAddbackFrags

std::vector<UShort_t> TTdrTigress::fAddbackFrags
mutableprivate

! Number of crystals involved in creating in the addback hit

Definition at line 95 of file TTdrTigress.h.

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

◆ fAddbackHits

std::vector<TDetectorHit*> TTdrTigress::fAddbackHits
mutableprivate

! Used to create addback hits on the fly

Definition at line 94 of file TTdrTigress.h.

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

◆ fCycleStart

long TTdrTigress::fCycleStart
private

! The start of the cycle

Definition at line 92 of file TTdrTigress.h.

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

◆ fEnergyResiduals

std::map< int, TSpline * > TTdrTigress::fEnergyResiduals
staticprivate

!

Definition at line 110 of file TTdrTigress.h.

◆ 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(), 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(), 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 TTdrTigress::fSetCoreWave = false
staticprivate

! Flag for Waveforms ON/OFF

Definition at line 90 of file TTdrTigress.h.

Referenced by Copy(), and SetCoreWave().

◆ fSuppressedAddbackFrags

std::vector<UShort_t> TTdrTigress::fSuppressedAddbackFrags
mutableprivate

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

Definition at line 99 of file TTdrTigress.h.

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

◆ fSuppressedAddbackHits

std::vector<TDetectorHit*> TTdrTigress::fSuppressedAddbackHits
mutableprivate

! Used to create suppressed addback hits on the fly

Definition at line 98 of file TTdrTigress.h.

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

◆ fSuppressedHits

std::vector<TDetectorHit*> TTdrTigress::fSuppressedHits
mutableprivate

! Used to create suppressed hits on the fly

Definition at line 97 of file TTdrTigress.h.

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

◆ fSuppressionCriterion

std::function< bool(TTdrTigressHit *, TBgoHit *)> TTdrTigress::fSuppressionCriterion = DefaultSuppression
staticprivate

Definition at line 88 of file TTdrTigress.h.

Referenced by GetSuppressionCriterion(), and SetSuppressionCriterion().

◆ fTdrTigressBits

TTransientBits<UChar_t> TTdrTigress::fTdrTigressBits
mutableprivate

Definition at line 105 of file TTdrTigress.h.

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

◆ gTigressPosition

TVector3 TTdrTigress::gTigressPosition
staticprivate

! Position of each HPGe Tigress

Definition at line 104 of file TTdrTigress.h.

Referenced by GetPosition().