Public Types | |
enum | ES3Bits { ES3Bits::kPixelsSet = BIT(0), ES3Bits::kBit1 = BIT(1), ES3Bits::kBit2 = BIT(2), ES3Bits::kBit3 = BIT(3), ES3Bits::kBit4 = BIT(4), ES3Bits::kBit5 = BIT(5), ES3Bits::kBit6 = BIT(6), ES3Bits::kBit7 = BIT(7) } |
enum | ES3GlobalBits { ES3GlobalBits::kPreSector = BIT(0), ES3GlobalBits::kMultHit = BIT(1), ES3GlobalBits::kKeepShared = BIT(2), ES3GlobalBits::kGBit3 = BIT(3) } |
Public Member Functions | |
TS3 () | |
TS3 (const TS3 &) | |
~TS3 () override | |
void | AddFragment (const std::shared_ptr< const TFragment > &, TChannel *) override |
void | BuildHits () override |
void | BuildPixels () |
void | Clear (Option_t *opt="all") override |
void | ClearTransients () override |
void | Copy (TObject &) const override |
virtual TDetectorHit * | GetHit (const int &) const |
virtual const std::vector< TDetectorHit * > & | GetHitVector () const |
virtual Short_t | GetMultiplicity () const |
TS3Hit * | GetPixelHit (const int &i) |
Int_t | GetPixelMultiplicity () |
TS3Hit * | GetRingHit (const int &i) |
Short_t | GetRingMultiplicity () const |
TS3Hit * | GetS3Hit (const int &i) const |
TS3Hit * | GetSectorHit (const int &i) |
Short_t | GetSectorMultiplicity () const |
TS3 & | operator= (const TS3 &) |
bool | PixelsSet () const |
void | Print (Option_t *opt="") const override |
void | Print (std::ostream &out) const override |
void | ResetRingsSectors () |
void | SetFrontBackEnergy (double de) |
void | SetFrontBackEOffset (double de) |
void | SetFrontBackTime (int time) |
void | SetPixels (bool flag=true) |
void | SetTargetDistance (double dist) |
Static Public Member Functions | |
static TVector3 | GetPosition (int ring, int sector, bool smear=false) |
static TVector3 | GetPosition (int ring, int sector, double offsetphi, double offsetZ, bool sectorsdownstream, bool smear=false) |
static bool | KeepShared () |
static bool | MultiHit () |
static bool | PreferenceSector (bool set=true) |
static bool | SectorPreference () |
static bool | SetKeepShared (bool set=true) |
static bool | SetMultiHit (bool set=true) |
Protected Attributes | |
std::vector< TDetectorHit * > | fHits |
Private Member Functions | |
void | ClearStatus () |
void | SetBitNumber (ES3Bits bit, Bool_t set=true) |
Bool_t | TestBitNumber (ES3Bits bit) const |
Static Private Member Functions | |
static void | SetGlobalBit (ES3GlobalBits bit, Bool_t set=true) |
static Bool_t | TestGlobalBit (ES3GlobalBits bit) |
Private Attributes | |
TTransientBits< UChar_t > | fS3Bits |
std::vector< TS3Hit > | fS3PixelHits |
std::vector< TS3Hit > | fS3RingHits |
std::vector< TS3Hit > | fS3SectorHits |
Static Private Attributes | |
static double | fFrontBackEnergy = 0.9 |
static double | fFrontBackOffset = 0 |
static Int_t | fFrontBackTime = 75 |
static TTransientBits< UShort_t > | fgS3Bits = static_cast<std::underlying_type<TS3::ES3GlobalBits>::type>(TS3::ES3GlobalBits::kMultHit) |
static double | fInnerDiameter = 22. |
static double | fOffsetPhiCon = 0.5 * TMath::Pi() |
static double | fOffsetPhiSet |
static double | fOuterDiameter = 70. |
static int | fRingNumber = 24 |
static int | fSectorNumber = 32 |
static double | fTargetDistance = 31. |
#include <TS3.h>
|
strong |
|
strong |
|
overridedefault |
|
overridevirtual |
!
This function creates TS3Hits for each fragment and stores them in separate front and back vectors
Reimplemented from TDetector.
Definition at line 56 of file TS3.cxx.
References TGRSIOptions::AnalysisOptions(), TMnemonic::CollectedCharge(), fS3RingHits, fS3SectorHits, TChannel::GetMnemonic(), TAnalysisOptions::IsWaveformFitting(), TMnemonic::kN, TS3Hit::SetRingNumber(), TS3Hit::SetSectorNumber(), and TS3Hit::SetWavefit().
|
inlineoverridevirtual |
void TS3::BuildPixels | ( | ) |
Loop over two vectors and build energy+time matching hits
If we have parts of hit left here they are possibly a shared strip hit not easy singles
Definition at line 102 of file TS3.cxx.
References fFrontBackEnergy, fFrontBackOffset, fFrontBackTime, fS3Bits, fS3PixelHits, fS3RingHits, fS3SectorHits, fSectorNumber, KeepShared(), kPixelsSet, MultiHit(), SectorPreference(), SetBitNumber(), TS3Hit::SetRingNumber(), TS3Hit::SetSectorNumber(), and TTransientBits< T >::TestBit().
Referenced by GetPixelMultiplicity().
|
override |
!
Definition at line 420 of file TS3.cxx.
References TDetector::Clear(), fS3PixelHits, fS3RingHits, fS3SectorHits, SetMultiHit(), and SetPixels().
Referenced by TS3().
|
inlineoverridevirtual |
!
Reimplemented from TDetector.
Definition at line 100 of file TS3.h.
References fS3Bits, fS3PixelHits, fS3RingHits, and fS3SectorHits.
|
overridevirtual |
!
Reimplemented from TDetector.
Definition at line 48 of file TS3.cxx.
References TDetector::Copy(), fS3PixelHits, fS3RingHits, and fS3SectorHits.
Referenced by operator=(), and TS3().
|
virtualinherited |
Definition at line 70 of file TDetector.cxx.
References TDetector::fHits.
Referenced by exAnalysis(), TBgo::GetBgoHit(), TCSM::GetCSMHit(), TDescant::GetDescantHit(), TEagle::GetEagleHit(), TEmma::GetEmmaHit(), TGenericDetector::GetGenericDetectorHit(), TLaBrBgo::GetLaBrBgoHit(), TFippsLaBr::GetLaBrHit(), TLaBr::GetLaBrHit(), TPaces::GetPacesHit(), GetS3Hit(), TSceptar::GetSceptarHit(), TSharc::GetSharcHit(), TSiLi::GetSiLiHit(), TTAC::GetTACHit(), TFippsTAC::GetTACHit(), TTdrClover::GetTdrCloverHit(), TTdrPlastic::GetTdrPlasticHit(), TTdrSiLi::GetTdrSiLiHit(), TTdrTigress::GetTdrTigressHit(), TTigress::GetTigressHit(), TTip::GetTipHit(), TTrific::GetTrificHit(), TZeroDegree::GetZeroDegreeHit(), and MakeAnalysisHistograms().
|
inlinevirtualinherited |
Reimplemented in TGriffin.
Definition at line 64 of file TDetector.h.
References TDetector::fHits.
Referenced by TSuppressed::CreateSuppressed(), TSuppressed::CreateSuppressedAddback(), TFipps::FixCrossTalk(), TIfin::FixCrossTalk(), TTdrClover::GetAddbackMultiplicity(), TTdrTigress::GetAddbackMultiplicity(), TFipps::GetAddbackMultiplicity(), TIfin::GetAddbackMultiplicity(), TTdrClover::GetSuppressedAddbackMultiplicity(), TTdrTigress::GetSuppressedAddbackMultiplicity(), TFipps::GetSuppressedMultiplicity(), and TIfin::GetSuppressedMultiplicity().
|
inlinevirtualinherited |
Reimplemented in TTrific, and TGriffin.
Definition at line 62 of file TDetector.h.
References TDetector::fHits.
Referenced by exAnalysis(), TimeWalkSelector::FillHistograms(), ExampleEventSelector::FillHistograms(), ExampleTreeSelector::FillHistograms(), AngularCorrelationSelector::FillHistograms(), main(), MakeAnalysisHistograms(), TBgo::Print(), TTdrClover::Print(), TTdrTigress::Print(), TFipps::Print(), TIfin::Print(), and TTigress::Print().
TS3Hit * TS3::GetPixelHit | ( | const int & | i | ) |
Definition at line 398 of file TS3.cxx.
References fS3PixelHits, and GetPixelMultiplicity().
Int_t TS3::GetPixelMultiplicity | ( | ) |
Definition at line 92 of file TS3.cxx.
References BuildPixels(), and fS3PixelHits.
Referenced by GetPixelHit().
|
static |
Definition at line 331 of file TS3.cxx.
References fOffsetPhiSet, and fTargetDistance.
Referenced by TS3Hit::GetPosition().
|
static |
Definition at line 336 of file TS3.cxx.
References fInnerDiameter, fOffsetPhiCon, fOuterDiameter, fRingNumber, and fSectorNumber.
TS3Hit * TS3::GetRingHit | ( | const int & | i | ) |
Definition at line 378 of file TS3.cxx.
References fS3RingHits, and GetRingMultiplicity().
|
inline |
|
inline |
Definition at line 64 of file TS3.h.
References TDetector::GetHit().
TS3Hit * TS3::GetSectorHit | ( | const int & | i | ) |
Definition at line 388 of file TS3.cxx.
References fS3SectorHits, and GetSectorMultiplicity().
|
inline |
|
inlinestatic |
!
Definition at line 86 of file TS3.h.
References kKeepShared, and TestGlobalBit().
Referenced by BuildPixels().
|
inlinestatic |
!
Definition at line 80 of file TS3.h.
References kMultHit, and TestGlobalBit().
Referenced by BuildPixels().
|
inline |
Definition at line 88 of file TS3.h.
References kPixelsSet, and TestBitNumber().
|
inlinestatic |
|
overridevirtual |
void TS3::ResetRingsSectors | ( | ) |
Definition at line 367 of file TS3.cxx.
References fS3RingHits, and fS3SectorHits.
|
inlinestatic |
!
Definition at line 74 of file TS3.h.
References kPreSector, and TestGlobalBit().
Referenced by BuildPixels().
|
private |
Definition at line 86 of file TS3.cxx.
References fS3Bits, and TTransientBits< T >::SetBit().
Referenced by BuildPixels(), and SetPixels().
|
inline |
Set fractional allowed energy difference.
Definition at line 48 of file TS3.h.
References fFrontBackEnergy, and SetPixels().
|
inline |
Set fractional allowed energy difference.
Definition at line 53 of file TS3.h.
References fFrontBackOffset, and SetPixels().
|
inline |
Set absolute allow time difference.
Definition at line 58 of file TS3.h.
References fFrontBackTime, and SetPixels().
|
inlinestaticprivate |
Definition at line 131 of file TS3.h.
References fgS3Bits, and TTransientBits< T >::SetBit().
Referenced by PreferenceSector(), SetKeepShared(), and SetMultiHit().
|
inlinestatic |
|
inlinestatic |
!
Definition at line 75 of file TS3.h.
References kMultHit, and SetGlobalBit().
Referenced by Clear().
|
inline |
Definition at line 89 of file TS3.h.
References kPixelsSet, and SetBitNumber().
Referenced by Clear(), SetFrontBackEnergy(), SetFrontBackEOffset(), and SetFrontBackTime().
|
inline |
Definition at line 96 of file TS3.h.
References fTargetDistance.
|
inlineprivate |
Definition at line 128 of file TS3.h.
References fS3Bits, and TTransientBits< T >::TestBit().
Referenced by PixelsSet().
|
inlinestaticprivate |
Definition at line 132 of file TS3.h.
References fgS3Bits, and TTransientBits< T >::TestBit().
Referenced by KeepShared(), MultiHit(), and SectorPreference().
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
Global Bit.
Definition at line 130 of file TS3.h.
Referenced by SetGlobalBit(), and TestGlobalBit().
|
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().
|
staticprivate |
|
staticprivate |
|
staticprivate |
!
Definition at line 139 of file TS3.h.
Referenced by GetPosition().
|
staticprivate |
|
staticprivate |
|
private |
flags for transient members
Definition at line 125 of file TS3.h.
Referenced by BuildPixels(), ClearStatus(), ClearTransients(), SetBitNumber(), and TestBitNumber().
|
private |
! transient vector to hold the on-the-fly calculated pixel hits
Definition at line 123 of file TS3.h.
Referenced by BuildPixels(), Clear(), ClearTransients(), Copy(), GetPixelHit(), and GetPixelMultiplicity().
|
private |
vector to store hits of the ring side
Definition at line 121 of file TS3.h.
Referenced by AddFragment(), BuildPixels(), Clear(), ClearTransients(), Copy(), GetRingHit(), GetRingMultiplicity(), and ResetRingsSectors().
|
private |
vector to store hits of the sector side
Definition at line 122 of file TS3.h.
Referenced by AddFragment(), BuildPixels(), Clear(), ClearTransients(), Copy(), GetSectorHit(), GetSectorMultiplicity(), and ResetRingsSectors().
|
staticprivate |
|
staticprivate |