GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
Loading...
Searching...
No Matches
TSuppressed Class Reference

Detailed Description

This is an abstract class that adds basic functionality for Compton suppressed detectors like GRIFFIN.

Definition at line 21 of file TSuppressed.h.

Public Member Functions

 TSuppressed ()=default
 
 TSuppressed (const TSuppressed &)=default
 
 TSuppressed (TSuppressed &&) noexcept=default
 
 ~TSuppressed ()=default
 
virtual bool AddbackCriterion (const TDetectorHit *, const TDetectorHit *)
 
virtual void AddFragment (const std::shared_ptr< const TFragment > &, TChannel *)
 
virtual void AddHit (TDetectorHit *hit)
 
virtual void BuildHits ()
 
void Clear (Option_t *opt="all") override
 
virtual void ClearTransients ()
 
void Copy (TObject &) const override
 
virtual TDetectorHitGetHit (const int &index) const
 
virtual const std::vector< TDetectorHit * > & GetHitVector () const
 
virtual Short_t GetMultiplicity () const
 
std::vector< TDetectorHit * > & Hits ()
 
const std::vector< TDetectorHit * > & Hits () const
 
virtual bool NoHits () const
 
TSuppressedoperator= (const TSuppressed &)=default
 
TSuppressedoperator= (TSuppressed &&) noexcept=default
 
void Print (Option_t *opt="") const override
 
virtual void Print (std::ostream &out) const
 
virtual bool SuppressionCriterion (const TDetectorHit *, const TDetectorHit *)
 

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)
 

Private Attributes

std::vector< TDetectorHit * > fHits
 
+ Inheritance diagram for TSuppressed:
+ Collaboration diagram for TSuppressed:

Constructor & Destructor Documentation

◆ TSuppressed() [1/3]

TSuppressed::TSuppressed ( )
default

◆ TSuppressed() [2/3]

TSuppressed::TSuppressed ( const TSuppressed & )
default

◆ TSuppressed() [3/3]

TSuppressed::TSuppressed ( TSuppressed && )
defaultnoexcept

◆ ~TSuppressed()

TSuppressed::~TSuppressed ( )
default

Member Function Documentation

◆ AddbackCriterion()

virtual bool TSuppressed::AddbackCriterion ( const TDetectorHit * ,
const TDetectorHit *  )
inlinevirtual

Reimplemented in TFipps, TGriffin, and TIfin.

Definition at line 30 of file TSuppressed.h.

Referenced by CreateAddback(), and CreateSuppressedAddback().

◆ AddFragment()

virtual void TDetector::AddFragment ( const std::shared_ptr< const TFragment > & ,
TChannel *  )
inlinevirtualinherited

◆ AddHit()

◆ BuildHits()

virtual void TDetector::BuildHits ( )
inlinevirtualinherited

◆ Clear()

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

◆ ClearTransients()

void TDetector::ClearTransients ( )
virtualinherited

!

Reimplemented in TGriffin, TS3, TTigress, and TTrific.

Definition at line 54 of file TDetector.cxx.

References TDetector::fHits.

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

◆ Copy()

void TSuppressed::Copy ( TObject & rhs) const
override

◆ CreateAddback()

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

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 38 of file TSuppressed.h.

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

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

◆ CreateSuppressed()

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

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 69 of file TSuppressed.h.

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

Referenced by TFipps::GetSuppressedMultiplicity(), TFippsLaBr::GetSuppressedMultiplicity(), TGriffin::GetSuppressedMultiplicity(), TIfin::GetSuppressedMultiplicity(), TLaBr::GetSuppressedMultiplicity(), TTdrClover::GetSuppressedMultiplicity(), and TTdrTigress::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 )
inlineprotected

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 94 of file TSuppressed.h.

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

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

◆ GetHit()

◆ GetHitVector()

◆ GetMultiplicity()

◆ Hits() [1/2]

◆ Hits() [2/2]

const std::vector< TDetectorHit * > & TDetector::Hits ( ) const
inlineinherited

Definition at line 79 of file TDetector.h.

References TDetector::fHits.

◆ NoHits()

virtual bool TDetector::NoHits ( ) const
inlinevirtualinherited

◆ operator=() [1/2]

TSuppressed & TSuppressed::operator= ( const TSuppressed & )
default

◆ operator=() [2/2]

TSuppressed & TSuppressed::operator= ( TSuppressed && )
defaultnoexcept

◆ Print() [1/2]

void TDetector::Print ( Option_t * opt = "") const
overrideinherited

!

Default print statement for TDetector.

Definition at line 37 of file TDetector.cxx.

References TDetector::Print().

Referenced by TDetector::Print().

◆ Print() [2/2]

void TDetector::Print ( std::ostream & out) const
virtualinherited

Print detector to stream out. Iterates over hits and prints them.

Reimplemented in TAries, TBgo, TDescant, TEagle, TEaglePulser, TEmma, TFipps, TFippsLaBr, TFippsPulser, TFippsTAC, TGenericDetector, TGriffin, TIfin, TLaBr, TPaces, TRcmp, TRF, TS3, TSceptar, TSharc2, TSharc, TSiLi, TTAC, TTdrClover, TTdrPlastic, TTdrSiLi, TTdrTigress, TTigress, TTip, TTrific, TTriFoil, and TZeroDegree.

Definition at line 43 of file TDetector.cxx.

References TDetector::fHits.

◆ SuppressionCriterion()

virtual bool TSuppressed::SuppressionCriterion ( const TDetectorHit * ,
const TDetectorHit *  )
inlinevirtual

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

Definition at line 31 of file TSuppressed.h.

Referenced by CreateSuppressed(), and CreateSuppressedAddback().

Member Data Documentation

◆ fHits