![]() |
GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
|
![]() |
The TFipps class defines the observables and algorithms used when analyzing FIPPS data. It includes detector positions, add-back methods, etc.
Public Types | |
enum class | EFippsBits { kIsAddbackSet = 1<<0 , kIsCrossTalkSet = 1<<1 , kIsSuppressedSet = 1<<2 , kIsSuppressedAddbackSet = 1<<3 , kBit4 = 1<<4 , kBit5 = 1<<5 , kBit6 = 1<<6 , kBit7 = 1<<7 } |
Public Member Functions | |
TFipps () | |
TFipps (const TFipps &) | |
~TFipps () override | |
bool | AddbackCriterion (const TDetectorHit *hit1, const TDetectorHit *hit2) override |
void | AddFragment (const std::shared_ptr< const TFragment > &, TChannel *) override |
virtual void | AddHit (TDetectorHit *hit) |
void | BuildHits () override |
void | Clear (Option_t *opt="all") override |
virtual void | ClearTransients () |
void | Copy (TObject &) const override |
void | FixCrossTalk () |
std::function< bool(const TDetectorHit *, const TDetectorHit *)> | GetAddbackCriterion () const |
TFippsHit * | GetAddbackHit (const int &i) |
Int_t | GetAddbackMultiplicity () |
TFippsHit * | GetFippsHit (const Int_t &i) |
virtual TDetectorHit * | GetHit (const int &index) const |
virtual const std::vector< TDetectorHit * > & | GetHitVector () const |
virtual Short_t | GetMultiplicity () const |
UShort_t | GetNAddbackFrags (const size_t &idx) |
TFippsHit * | GetSuppressedAddbackHit (const int &i) |
Int_t | GetSuppressedAddbackMultiplicity (const TBgo *bgo) |
TFippsHit * | GetSuppressedHit (const int &i) |
Int_t | GetSuppressedMultiplicity (const TBgo *bgo) |
std::function< bool(const TDetectorHit *, const TDetectorHit *)> | GetSuppressionCriterion () const |
std::vector< TDetectorHit * > & | Hits () |
const std::vector< TDetectorHit * > & | Hits () const |
bool | IsAddbackSet () const |
Bool_t | IsCrossTalkSet () const |
bool | IsSuppressed () const |
bool | IsSuppressedAddbackSet () const |
virtual bool | NoHits () const |
TFipps & | operator= (const TFipps &) |
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(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 TFippsHit *const hit_to_correct, const TFippsHit *const other_hit, Bool_t time_constraint=true) |
static const char * | GetColorFromNumber (int number) |
static TVector3 | GetPosition (int DetNbr, int CryNbr=5, double dist=90.0) |
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 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 (EFippsBits bit, Bool_t set) const |
void | SetCrossTalk (bool flag=true) const |
void | SetSuppressed (bool flag=true) const |
void | SetSuppressedAddback (bool flag=true) const |
Bool_t | TestBitNumber (EFippsBits bit) const |
Private Attributes | |
std::vector< UShort_t > | fAddbackFrags |
std::vector< TDetectorHit * > | fAddbackHits |
TTransientBits< UChar_t > | fFippsBits |
std::vector< TDetectorHit * > | fHits |
std::vector< UShort_t > | fSuppressedAddbackFrags |
std::vector< TDetectorHit * > | fSuppressedAddbackHits |
std::vector< TDetectorHit * > | fSuppressedHits |
Static Private Attributes | |
static std::function< bool(const TDetectorHit *, const TDetectorHit *)> | fAddbackCriterion = DefaultFippsAddback |
static std::function< bool(const TDetectorHit *, const TDetectorHit *)> | fSuppressionCriterion = DefaultFippsSuppression |
static TVector3 | gCloverPosition [17] |
|
strong |
TFipps::TFipps | ( | ) |
Definition at line 100 of file TFipps.cxx.
References Clear().
TFipps::TFipps | ( | const TFipps & | rhs | ) |
Definition at line 109 of file TFipps.cxx.
References Copy().
|
override |
Definition at line 135 of file TFipps.cxx.
References fAddbackHits, fSuppressedAddbackHits, and fSuppressedHits.
|
inlineoverridevirtual |
Reimplemented from TSuppressed.
Definition at line 69 of file TFipps.h.
References fAddbackCriterion.
|
overridevirtual |
!
Reimplemented from TDetector.
Definition at line 409 of file TFipps.cxx.
References TDetector::fHits, TChannel::GetMnemonic(), TMnemonic::kG, and TMnemonic::SubSystem().
|
inlinevirtualinherited |
Definition at line 63 of file TDetector.h.
References TDetector::fHits.
Referenced by TAries::AddFragment(), TBgo::AddFragment(), TDescant::AddFragment(), TGenericDetector::AddFragment(), TLaBr::AddFragment(), TPaces::AddFragment(), TSceptar::AddFragment(), TSiLi::AddFragment(), TTAC::AddFragment(), TTigress::AddFragment(), TTip::AddFragment(), TTrific::AddFragment(), TZeroDegree::AddFragment(), TEmma::BuildHits(), TSharc2::BuildHits(), and TSharc::BuildHits().
|
inlineoverridevirtual |
|
override |
!
Definition at line 145 of file TFipps.cxx.
References TSuppressed::Clear(), ClearStatus(), fAddbackFrags, fAddbackHits, fSuppressedAddbackFrags, fSuppressedAddbackHits, and fSuppressedHits.
Referenced by TFipps().
|
inlineprivate |
|
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().
|
override |
!
Definition at line 118 of file TFipps.cxx.
References TSuppressed::Copy(), fAddbackFrags, fAddbackHits, fFippsBits, fSuppressedAddbackFrags, fSuppressedAddbackHits, and fSuppressedHits.
Referenced by TFipps(), and operator=().
|
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 38 of file TSuppressed.h.
References TSuppressed::AddbackCriterion(), TDetectorHit::kIsEnergySet, and TDetectorHit::kIsTimeSet.
Referenced by GetAddbackMultiplicity(), TGriffin::GetAddbackMultiplicity(), TIfin::GetAddbackMultiplicity(), TTdrClover::GetAddbackMultiplicity(), and TTdrTigress::GetAddbackMultiplicity().
|
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 69 of file TSuppressed.h.
References TDetector::GetHitVector(), and TSuppressed::SuppressionCriterion().
Referenced by GetSuppressedMultiplicity(), TFippsLaBr::GetSuppressedMultiplicity(), TGriffin::GetSuppressedMultiplicity(), TIfin::GetSuppressedMultiplicity(), TLaBr::GetSuppressedMultiplicity(), TTdrClover::GetSuppressedMultiplicity(), and TTdrTigress::GetSuppressedMultiplicity().
|
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 94 of file TSuppressed.h.
References TSuppressed::AddbackCriterion(), TDetector::GetHitVector(), TDetectorHit::kIsEnergySet, TDetectorHit::kIsTimeSet, and TSuppressed::SuppressionCriterion().
Referenced by GetSuppressedAddbackMultiplicity(), TGriffin::GetSuppressedAddbackMultiplicity(), TIfin::GetSuppressedAddbackMultiplicity(), TTdrClover::GetSuppressedAddbackMultiplicity(), and TTdrTigress::GetSuppressedAddbackMultiplicity().
|
static |
Corrects the energy of the hit to correct by ADDING the uncorrected energy of the other hit times the parameter for this combination This is different to the very similar TGriffin function that SUBTRACTS instead of ADDING. If time_constraint is true it also checks that the two hits are within the addback window to each other.
Definition at line 521 of file TFipps.cxx.
References TAnalysisOptions::AddbackWindow(), TGRSIOptions::AnalysisOptions(), DRED, TDetectorHit::GetChannel(), TDetectorHit::GetCrystal(), TChannel::GetCTCoeff(), TDetectorHit::GetDetector(), TDetectorHit::GetEnergy(), TFippsHit::GetNoCTEnergy(), TDetectorHit::GetTime(), and RESET_COLOR.
Referenced by FixCrossTalk().
void TFipps::FixCrossTalk | ( | ) |
Definition at line 562 of file TFipps.cxx.
References TGRSIOptions::AnalysisOptions(), CTCorrectedEnergy(), TDetector::GetHitVector(), and SetCrossTalk().
Referenced by GetAddbackHit(), GetAddbackMultiplicity(), GetFippsHit(), GetSuppressedAddbackHit(), GetSuppressedAddbackMultiplicity(), GetSuppressedHit(), and GetSuppressedMultiplicity().
|
inline |
Definition at line 67 of file TFipps.h.
References fAddbackCriterion.
|
private |
!
Definition at line 195 of file TFipps.cxx.
References fAddbackFrags.
Referenced by GetAddbackMultiplicity(), GetNAddbackFrags(), and ResetAddback().
TFippsHit * TFipps::GetAddbackHit | ( | const int & | i | ) |
Definition at line 377 of file TFipps.cxx.
References FixCrossTalk(), GetAddbackVector(), and IsCrossTalkSet().
Int_t TFipps::GetAddbackMultiplicity | ( | ) |
Definition at line 314 of file TFipps.cxx.
References TSuppressed::CreateAddback(), FixCrossTalk(), GetAddbackFragVector(), GetAddbackVector(), TDetector::GetHitVector(), IsAddbackSet(), IsCrossTalkSet(), and SetAddback().
|
private |
!
Definition at line 190 of file TFipps.cxx.
References fAddbackHits.
Referenced by GetAddbackHit(), GetAddbackMultiplicity(), and ResetAddback().
|
static |
Definition at line 586 of file TFipps.cxx.
Referenced by main().
TFippsHit * TFipps::GetFippsHit | ( | const Int_t & | i | ) |
Definition at line 255 of file TFipps.cxx.
References TDetector::fHits, FixCrossTalk(), and IsCrossTalkSet().
|
virtualinherited |
Reimplemented in TGriffin.
Definition at line 61 of file TDetector.cxx.
References TDetector::fHits.
Referenced by TSiLi::AddCluster(), TTigress::GetAddbackMultiplicity(), TAries::GetAriesHit(), TBgo::GetBgoHit(), TCSM::GetCSMHit(), TDescant::GetDescantHit(), TEagle::GetEagleHit(), TEmma::GetEmmaHit(), TGenericDetector::GetGenericDetectorHit(), TLaBrBgo::GetLaBrBgoHit(), TFippsLaBr::GetLaBrHit(), TLaBr::GetLaBrHit(), TPaces::GetPacesHit(), TS3::GetS3Hit(), TSceptar::GetSceptarHit(), TSharc2::GetSharc2Hit(), TSharc::GetSharcHit(), TSiLi::GetSiLiHit(), TFippsTAC::GetTACHit(), TTAC::GetTACHit(), TTdrClover::GetTdrCloverHit(), TTdrPlastic::GetTdrPlasticHit(), TTdrSiLi::GetTdrSiLiHit(), TTdrTigress::GetTdrTigressHit(), TTigress::GetTigressHit(), TTip::GetTipHit(), TTrific::GetTrificHit(), TZeroDegree::GetZeroDegreeHit(), MakeAnalysisHistograms(), and TTigress::Print().
|
inlinevirtualinherited |
Reimplemented in TGriffin.
Definition at line 75 of file TDetector.h.
References TDetector::fHits.
Referenced by TSuppressed::CreateSuppressed(), TSuppressed::CreateSuppressedAddback(), FixCrossTalk(), TIfin::FixCrossTalk(), GetAddbackMultiplicity(), TIfin::GetAddbackMultiplicity(), TTdrClover::GetAddbackMultiplicity(), TTdrTigress::GetAddbackMultiplicity(), GetSuppressedAddbackMultiplicity(), TIfin::GetSuppressedAddbackMultiplicity(), TTdrClover::GetSuppressedAddbackMultiplicity(), TTdrTigress::GetSuppressedAddbackMultiplicity(), GetSuppressedMultiplicity(), and TIfin::GetSuppressedMultiplicity().
|
inlinevirtualinherited |
Reimplemented in TGriffin.
Definition at line 73 of file TDetector.h.
References TDetector::fHits.
Referenced by TTigress::AddFragment(), ExampleEventHelper::Exec(), ExampleTreeHelper::Exec(), TimeWalkHelper::Exec(), AngularCorrelationSelector::FillHistograms(), ExampleEventSelector::FillHistograms(), ExampleTreeSelector::FillHistograms(), TimeWalkSelector::FillHistograms(), TSiLi::GetAddbackMultiplicity(), TTigress::GetAddbackMultiplicity(), TGriffin::GetLowGainMultiplicity(), TGriffin::GetMultiplicity(), TSharc::GetSize(), main(), MakeAnalysisHistograms(), TAries::Print(), TBgo::Print(), TDescant::Print(), TEmma::Print(), Print(), TIfin::Print(), TLaBr::Print(), TPaces::Print(), TSceptar::Print(), TSiLi::Print(), TTAC::Print(), TTdrClover::Print(), TTdrTigress::Print(), TTigress::Print(), TTip::Print(), TTrific::Print(), and TZeroDegree::Print().
UShort_t TFipps::GetNAddbackFrags | ( | const size_t & | idx | ) |
Definition at line 504 of file TFipps.cxx.
References GetAddbackFragVector().
|
static |
!
Definition at line 430 of file TFipps.cxx.
References gCloverPosition.
Referenced by TFippsHit::GetPosition().
|
private |
Definition at line 210 of file TFipps.cxx.
References fSuppressedAddbackFrags.
Referenced by GetSuppressedAddbackMultiplicity(), and ResetSuppressedAddback().
TFippsHit * TFipps::GetSuppressedAddbackHit | ( | const int & | i | ) |
Definition at line 393 of file TFipps.cxx.
References FixCrossTalk(), GetSuppressedAddbackVector(), and IsCrossTalkSet().
Int_t TFipps::GetSuppressedAddbackMultiplicity | ( | const TBgo * | bgo | ) |
Definition at line 345 of file TFipps.cxx.
References TSuppressed::CreateSuppressedAddback(), FixCrossTalk(), TDetector::GetHitVector(), GetSuppressedAddbackFragVector(), GetSuppressedAddbackVector(), IsCrossTalkSet(), IsSuppressedAddbackSet(), and SetSuppressedAddback().
|
private |
Definition at line 205 of file TFipps.cxx.
References fSuppressedAddbackHits.
Referenced by GetSuppressedAddbackHit(), GetSuppressedAddbackMultiplicity(), and ResetSuppressedAddback().
TFippsHit * TFipps::GetSuppressedHit | ( | const int & | i | ) |
Definition at line 271 of file TFipps.cxx.
References FixCrossTalk(), fSuppressedHits, and IsCrossTalkSet().
Int_t TFipps::GetSuppressedMultiplicity | ( | const TBgo * | bgo | ) |
Automatically builds the suppressed hits using the fSuppressionCriterion and returns the number of suppressed hits
Definition at line 287 of file TFipps.cxx.
References TSuppressed::CreateSuppressed(), FixCrossTalk(), TDetector::GetHitVector(), GetSuppressedVector(), IsCrossTalkSet(), IsSuppressed(), and SetSuppressed().
|
private |
Definition at line 200 of file TFipps.cxx.
References fSuppressedHits.
Referenced by GetSuppressedMultiplicity(), and ResetSuppressed().
|
inline |
Definition at line 89 of file TFipps.h.
References fSuppressionCriterion.
|
inlineinherited |
Definition at line 78 of file TDetector.h.
References TDetector::fHits.
Referenced by TCSM::BuildHits(), TSharc::BuildHits(), TTigress::BuildHits(), TGriffin::GetHitVector(), TGriffin::GetHitVector(), TSharc2::GetSize(), TLaBr::GetSuppressedMultiplicity(), TGriffin::Print(), and TSiLi::UseFitCharge().
|
inlineinherited |
Definition at line 79 of file TDetector.h.
References TDetector::fHits.
bool TFipps::IsAddbackSet | ( | ) | const |
Definition at line 215 of file TFipps.cxx.
References kIsAddbackSet, and TestBitNumber().
Referenced by GetAddbackMultiplicity(), and Print().
bool TFipps::IsCrossTalkSet | ( | ) | const |
Definition at line 220 of file TFipps.cxx.
References kIsCrossTalkSet, and TestBitNumber().
Referenced by GetAddbackHit(), GetAddbackMultiplicity(), GetFippsHit(), GetSuppressedAddbackHit(), GetSuppressedAddbackMultiplicity(), GetSuppressedHit(), GetSuppressedMultiplicity(), and Print().
bool TFipps::IsSuppressed | ( | ) | const |
Definition at line 225 of file TFipps.cxx.
References kIsSuppressedSet, and TestBitNumber().
Referenced by GetSuppressedMultiplicity().
bool TFipps::IsSuppressedAddbackSet | ( | ) | const |
Definition at line 230 of file TFipps.cxx.
References kIsSuppressedAddbackSet, and TestBitNumber().
Referenced by GetSuppressedAddbackMultiplicity().
|
inlinevirtualinherited |
Definition at line 76 of file TDetector.h.
References TDetector::fHits.
Referenced by TTigress::BuildHits(), TTigress::GetAddbackMultiplicity(), and TLaBr::GetSuppressedMultiplicity().
|
override |
|
overridevirtual |
Reimplemented from TDetector.
Definition at line 167 of file TFipps.cxx.
References fAddbackHits, TDetector::GetMultiplicity(), IsAddbackSet(), and IsCrossTalkSet().
void TFipps::ResetAddback | ( | ) |
Definition at line 473 of file TFipps.cxx.
References GetAddbackFragVector(), GetAddbackVector(), SetAddback(), and SetCrossTalk().
void TFipps::ResetFlags | ( | ) | const |
Definition at line 468 of file TFipps.cxx.
References fFippsBits.
void TFipps::ResetSuppressed | ( | ) |
Definition at line 484 of file TFipps.cxx.
References GetSuppressedVector(), and SetSuppressed().
void TFipps::ResetSuppressedAddback | ( | ) |
Definition at line 493 of file TFipps.cxx.
References GetSuppressedAddbackFragVector(), GetSuppressedAddbackVector(), SetCrossTalk(), and SetSuppressedAddback().
|
private |
Definition at line 235 of file TFipps.cxx.
References kIsAddbackSet, and SetBitNumber().
Referenced by GetAddbackMultiplicity(), and ResetAddback().
|
inline |
Definition at line 63 of file TFipps.h.
References fAddbackCriterion.
|
private |
Definition at line 514 of file TFipps.cxx.
References fFippsBits, and TTransientBits< T >::SetBit().
Referenced by SetAddback(), SetCrossTalk(), SetSuppressed(), and SetSuppressedAddback().
|
private |
Definition at line 240 of file TFipps.cxx.
References kIsCrossTalkSet, and SetBitNumber().
Referenced by FixCrossTalk(), ResetAddback(), and ResetSuppressedAddback().
|
private |
Definition at line 245 of file TFipps.cxx.
References kIsSuppressedSet, and SetBitNumber().
Referenced by GetSuppressedMultiplicity(), and ResetSuppressed().
|
private |
Definition at line 250 of file TFipps.cxx.
References kIsSuppressedAddbackSet, and SetBitNumber().
Referenced by GetSuppressedAddbackMultiplicity(), and ResetSuppressedAddback().
|
inline |
Definition at line 85 of file TFipps.h.
References fSuppressionCriterion.
|
inlineoverridevirtual |
Reimplemented from TSuppressed.
Definition at line 91 of file TFipps.h.
References fSuppressionCriterion.
|
inlineprivate |
Definition at line 121 of file TFipps.h.
References fFippsBits, and TTransientBits< T >::TestBit().
Referenced by IsAddbackSet(), IsCrossTalkSet(), IsSuppressed(), and IsSuppressedAddbackSet().
|
staticprivate |
Definition at line 100 of file TFipps.h.
Referenced by AddbackCriterion(), GetAddbackCriterion(), and SetAddbackCriterion().
|
mutableprivate |
! Number of crystals involved in creating the addback hit
Definition at line 109 of file TFipps.h.
Referenced by Clear(), Copy(), and GetAddbackFragVector().
|
mutableprivate |
|
mutableprivate |
Definition at line 106 of file TFipps.h.
Referenced by ClearStatus(), Copy(), ResetFlags(), SetBitNumber(), and TestBitNumber().
|
privateinherited |
Definition at line 88 of file TDetector.h.
Referenced by TDetector::~TDetector(), TEagle::AddFragment(), TEaglePulser::AddFragment(), AddFragment(), TFippsLaBr::AddFragment(), TFippsPulser::AddFragment(), TFippsTAC::AddFragment(), TIfin::AddFragment(), TTdrClover::AddFragment(), TTdrPlastic::AddFragment(), TTdrSiLi::AddFragment(), TTdrTigress::AddFragment(), TDetector::AddHit(), TDetector::Clear(), TDetector::ClearTransients(), TDetector::Copy(), GetFippsHit(), TDetector::GetHit(), TDetector::GetHitVector(), TIfin::GetIfinHit(), TDetector::GetMultiplicity(), TFippsLaBr::GetSuppressedMultiplicity(), TTdrClover::GetSuppressedMultiplicity(), TTdrTigress::GetSuppressedMultiplicity(), TDetector::Hits(), TDetector::Hits(), TDetector::NoHits(), TDetector::Print(), TEagle::Print(), TEaglePulser::Print(), TFippsLaBr::Print(), TFippsTAC::Print(), TTdrPlastic::Print(), and TTdrSiLi::Print().
|
mutableprivate |
! Number of crystals involved in creating the suppressed addback hit
Definition at line 112 of file TFipps.h.
Referenced by Clear(), Copy(), and GetSuppressedAddbackFragVector().
|
mutableprivate |
|
mutableprivate |
! Used to create suppressed hits on the fly
Definition at line 110 of file TFipps.h.
Referenced by ~TFipps(), Clear(), Copy(), GetSuppressedHit(), and GetSuppressedVector().
|
staticprivate |
Definition at line 101 of file TFipps.h.
Referenced by GetSuppressionCriterion(), SetSuppressionCriterion(), and SuppressionCriterion().
|
staticprivate |