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

Definition at line 20 of file TSharc.h.

Public Member Functions

 TSharc ()
 
 TSharc (const TSharc &rhs)
 
 ~TSharc () override
 
void AddFragment (const std::shared_ptr< const TFragment > &, TChannel *) override
 
void BuildHits () override
 
void Clear (Option_t *="") override
 
virtual void ClearTransients ()
 
void Copy (TObject &) const override
 
virtual TDetectorHitGetHit (const int &) const
 
virtual const std::vector< TDetectorHit * > & GetHitVector () const
 
virtual Short_t GetMultiplicity () const
 
TSharcHitGetSharcHit (const int &i) const
 
int GetSize () const
 
TSharcoperator= (const TSharc &rhs)
 
void Print (Option_t *="") const override
 
void Print (std::ostream &out) const override
 

Static Public Member Functions

static double GetDeadLayerThickness (TSharcHit &hit)
 
static double GetDetectorThickness (TSharcHit &hit, double dist=-1.0)
 
static TVector3 GetOffset ()
 
static double GetPadDeadLayerThickness (TSharcHit &hit)
 
static double GetPadThickness (TSharcHit &hit)
 
static TVector3 GetPosition (int detector, int frontstrip, int backstrip, double X=0.00, double Y=0.00, double Z=0.00)
 
static double GetXOffset ()
 
static double GetYOffset ()
 
static double GetZOffset ()
 
static void SetXYZOffset (const double x, const double y, const double z)
 

Protected Attributes

std::vector< TDetectorHit * > fHits
 

Private Member Functions

int CombineHits (TSharcHit *, TSharcHit *, int, int)
 
void RemoveHits (std::vector< TSharcHit > *, std::set< int > *)
 

Private Attributes

std::vector< TFragmentfBackFragments
 
std::vector< TFragmentfFrontFragments
 
std::vector< TFragmentfPadFragments
 

Static Private Attributes

static double fPdim = +81.6
 
static double fPminDQ = +6.40
 
static double fPminUQ = +2.00
 
static double fRdim = +32.0
 
static double fRingPitch = TSharc::fRdim / 16.0
 
static double fRmaxDQ = +41.00
 
static double fRmaxUQ = +41.00
 
static double fRminDQ = +9.00
 
static double fRminUQ = +9.00
 
static double fSegmentPitch
 
static double fStripBPitch = TSharc::fZdim / 48.0
 
static double fStripFPitch = TSharc::fYdim / 24.0
 
static double fXdim = +72.0
 
static double fXoffset = +0.00
 
static double fXposDB = +40.5
 
static double fXposUB = +42.5
 
static double fYdim = +72.0
 
static double fYminDB = -36.0
 
static double fYminUB = -36.0
 
static double fYoffset = +0.00
 
static double fZdim = +48.0
 
static double fZminDB = +9.00
 
static double fZminUB = -5.00
 
static double fZoffset = +0.00
 
static double fZposDQ = +74.5
 
static double fZposUQ = -66.5
 

#include <TSharc.h>

+ Inheritance diagram for TSharc:
+ Collaboration diagram for TSharc:

Constructor & Destructor Documentation

◆ TSharc() [1/2]

TSharc::TSharc ( )

Definition at line 78 of file TSharc.cxx.

References Clear().

◆ ~TSharc()

TSharc::~TSharc ( )
overridedefault

◆ TSharc() [2/2]

TSharc::TSharc ( const TSharc rhs)

Definition at line 88 of file TSharc.cxx.

References Clear(), and Copy().

Member Function Documentation

◆ AddFragment()

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

◆ BuildHits()

void TSharc::BuildHits ( )
overridevirtual

!

Reimplemented from TDetector.

Definition at line 116 of file TSharc.cxx.

References fBackFragments, fFrontFragments, TDetector::fHits, fPadFragments, TSharcHit::SetBack(), and TSharcHit::SetFront().

◆ Clear()

void TSharc::Clear ( Option_t *  option = "")
override

◆ 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().

◆ CombineHits()

int TSharc::CombineHits ( TSharcHit ,
TSharcHit ,
int  ,
int   
)
private

!

◆ Copy()

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

!

Reimplemented from TDetector.

Definition at line 194 of file TSharc.cxx.

References TDetector::Copy(), fXoffset, fYoffset, and fZoffset.

Referenced by operator=(), and TSharc().

◆ GetDeadLayerThickness()

double TSharc::GetDeadLayerThickness ( TSharcHit hit)
static

Definition at line 268 of file TSharc.cxx.

References TDetectorHit::GetDetector(), and GetDetectorThickness().

◆ GetDetectorThickness()

double TSharc::GetDetectorThickness ( TSharcHit hit,
double  dist = -1.0 
)
static

◆ GetHit()

◆ GetHitVector()

◆ GetMultiplicity()

◆ GetOffset()

static TVector3 TSharc::GetOffset ( )
inlinestatic

Definition at line 33 of file TSharc.h.

References fXoffset, fYoffset, and fZoffset.

◆ GetPadDeadLayerThickness()

double TSharc::GetPadDeadLayerThickness ( TSharcHit hit)
static

Definition at line 282 of file TSharc.cxx.

References TDetectorHit::GetDetector(), and GetDetectorThickness().

◆ GetPadThickness()

double TSharc::GetPadThickness ( TSharcHit hit)
static

Definition at line 275 of file TSharc.cxx.

References TDetectorHit::GetDetector(), and GetDetectorThickness().

◆ GetPosition()

TVector3 TSharc::GetPosition ( int  detector,
int  frontstrip,
int  backstrip,
double  X = 0.00,
double  Y = 0.00,
double  Z = 0.00 
)
static

◆ GetSharcHit()

TSharcHit* TSharc::GetSharcHit ( const int &  i) const
inline

Definition at line 27 of file TSharc.h.

References TDetector::GetHit().

◆ GetSize()

int TSharc::GetSize ( ) const
inline

!

Definition at line 41 of file TSharc.h.

References TDetector::fHits.

◆ GetXOffset()

static double TSharc::GetXOffset ( )
inlinestatic

Definition at line 30 of file TSharc.h.

References fXoffset.

Referenced by TSharcHit::GetPosition().

◆ GetYOffset()

static double TSharc::GetYOffset ( )
inlinestatic

Definition at line 31 of file TSharc.h.

References fYoffset.

Referenced by TSharcHit::GetPosition().

◆ GetZOffset()

static double TSharc::GetZOffset ( )
inlinestatic

Definition at line 32 of file TSharc.h.

References fZoffset.

Referenced by TSharcHit::GetPosition().

◆ operator=()

TSharc& TSharc::operator= ( const TSharc rhs)
inline

!

Definition at line 48 of file TSharc.h.

References Copy().

◆ Print() [1/2]

void TSharc::Print ( Option_t *  = "") const
override

!

Definition at line 182 of file TSharc.cxx.

◆ Print() [2/2]

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

!

Reimplemented from TDetector.

Definition at line 187 of file TSharc.cxx.

◆ RemoveHits()

void TSharc::RemoveHits ( std::vector< TSharcHit > *  hits,
std::set< int > *  to_remove 
)
private

!

Definition at line 155 of file TSharc.cxx.

◆ SetXYZOffset()

static void TSharc::SetXYZOffset ( const double  x,
const double  y,
const double  z 
)
inlinestatic

Definition at line 34 of file TSharc.h.

References fXoffset, fYoffset, and fZoffset.

Member Data Documentation

◆ fBackFragments

std::vector<TFragment> TSharc::fBackFragments
private

Definition at line 70 of file TSharc.h.

Referenced by AddFragment(), BuildHits(), and Clear().

◆ fFrontFragments

std::vector<TFragment> TSharc::fFrontFragments
private

Definition at line 69 of file TSharc.h.

Referenced by AddFragment(), BuildHits(), and Clear().

◆ 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(), BuildHits(), TTigress::BuildHits(), 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(), 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().

◆ fPadFragments

std::vector<TFragment> TSharc::fPadFragments
private

Definition at line 71 of file TSharc.h.

Referenced by AddFragment(), BuildHits(), and Clear().

◆ fPdim

double TSharc::fPdim = +81.6
staticprivate

Rmax-Rmin for all QQQs.

Definition at line 89 of file TSharc.h.

◆ fPminDQ

double TSharc::fPminDQ = +6.40
staticprivate

Definition at line 105 of file TSharc.h.

Referenced by GetPosition().

◆ fPminUQ

double TSharc::fPminUQ = +2.00
staticprivate

Definition at line 101 of file TSharc.h.

Referenced by GetPosition().

◆ fRdim

double TSharc::fRdim = +32.0
staticprivate

total Z dimension of all boxes

Definition at line 88 of file TSharc.h.

◆ fRingPitch

double TSharc::fRingPitch = TSharc::fRdim / 16.0
staticprivate

Definition at line 112 of file TSharc.h.

Referenced by GetPosition().

◆ fRmaxDQ

double TSharc::fRmaxDQ = +41.00
staticprivate

Definition at line 103 of file TSharc.h.

Referenced by GetPosition().

◆ fRmaxUQ

double TSharc::fRmaxUQ = +41.00
staticprivate

Definition at line 99 of file TSharc.h.

Referenced by GetPosition().

◆ fRminDQ

double TSharc::fRminDQ = +9.00
staticprivate

Definition at line 104 of file TSharc.h.

◆ fRminUQ

double TSharc::fRminUQ = +9.00
staticprivate

Definition at line 100 of file TSharc.h.

◆ fSegmentPitch

double TSharc::fSegmentPitch
staticprivate
Initial value:

Definition at line 113 of file TSharc.h.

Referenced by GetPosition().

◆ fStripBPitch

double TSharc::fStripBPitch = TSharc::fZdim / 48.0
staticprivate

Definition at line 111 of file TSharc.h.

Referenced by GetPosition().

◆ fStripFPitch

double TSharc::fStripFPitch = TSharc::fYdim / 24.0
staticprivate

degrees

Definition at line 110 of file TSharc.h.

Referenced by GetPosition().

◆ fXdim

double TSharc::fXdim = +72.0
staticprivate

Definition at line 85 of file TSharc.h.

◆ fXoffset

double TSharc::fXoffset = +0.00
staticprivate

!

Definition at line 80 of file TSharc.h.

Referenced by Clear(), Copy(), GetOffset(), GetXOffset(), and SetXYZOffset().

◆ fXposDB

double TSharc::fXposDB = +40.5
staticprivate

Definition at line 94 of file TSharc.h.

Referenced by GetPosition().

◆ fXposUB

double TSharc::fXposUB = +42.5
staticprivate

QQQ quadrant angular range (degrees)

Definition at line 91 of file TSharc.h.

Referenced by GetPosition().

◆ fYdim

double TSharc::fYdim = +72.0
staticprivate

total X dimension of all boxes

Definition at line 86 of file TSharc.h.

◆ fYminDB

double TSharc::fYminDB = -36.0
staticprivate

Definition at line 95 of file TSharc.h.

Referenced by GetPosition().

◆ fYminUB

double TSharc::fYminUB = -36.0
staticprivate

Definition at line 92 of file TSharc.h.

Referenced by GetPosition().

◆ fYoffset

double TSharc::fYoffset = +0.00
staticprivate

!

Definition at line 81 of file TSharc.h.

Referenced by Clear(), Copy(), GetOffset(), GetYOffset(), and SetXYZOffset().

◆ fZdim

double TSharc::fZdim = +48.0
staticprivate

total Y dimension of all boxes

Definition at line 87 of file TSharc.h.

◆ fZminDB

double TSharc::fZminDB = +9.00
staticprivate

Definition at line 96 of file TSharc.h.

Referenced by GetPosition().

◆ fZminUB

double TSharc::fZminUB = -5.00
staticprivate

Definition at line 93 of file TSharc.h.

Referenced by GetPosition().

◆ fZoffset

double TSharc::fZoffset = +0.00
staticprivate

!

Definition at line 82 of file TSharc.h.

Referenced by Clear(), Copy(), GetOffset(), GetZOffset(), and SetXYZOffset().

◆ fZposDQ

double TSharc::fZposDQ = +74.5
staticprivate

degrees

Definition at line 102 of file TSharc.h.

Referenced by GetPosition().

◆ fZposUQ

double TSharc::fZposUQ = -66.5
staticprivate

Definition at line 98 of file TSharc.h.

Referenced by GetPosition().