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

The TTrific class defines the observables and algorithms used when analyzing TIGRESS data.

Definition at line 29 of file TTrific.h.

Public Types

enum  ETrificBits {
  ETrificBits::kPositionCalculated = BIT(0), ETrificBits::kRangeCalculated = BIT(1), ETrificBits::kBit2 = BIT(2), ETrificBits::kBit3 = BIT(3),
  ETrificBits::kBit4 = BIT(4), ETrificBits::kBit5 = BIT(5), ETrificBits::kBit6 = BIT(6), ETrificBits::kBit7 = BIT(7)
}
 

Public Member Functions

 TTrific ()
 
 TTrific (const TTrific &)
 
 ~TTrific () override
 
void AddFragment (const std::shared_ptr< const TFragment > &, TChannel *chan) override
 
void BuildHits () override
 
void Clear (Option_t *="") override
 
void ClearTransients () override
 
void Copy (TObject &) const override
 
virtual TDetectorHitGetHit (const int &) const
 
virtual const std::vector< TDetectorHit * > & GetHitVector () const
 
virtual Short_t GetMultiplicity () const override
 
TVector3 GetPosition (Int_t detectorNumber)
 
TVector3 GetPosition ()
 
Int_t GetRange ()
 
virtual Short_t GetSingMultiplicity () const
 
TTrificHitGetTrificHit (const int &i) const
 
TTrificHitGetTrificSingHit (const int &i) const
 
TTrificHitGetTrificXHit (const int &i) const
 
TTrificHitGetTrificYHit (const int &i) const
 
virtual Short_t GetXMultiplicity () const
 
void GetXYGrid ()
 
virtual Short_t GetYMultiplicity () const
 
TTrificoperator= (const TTrific &)
 
void Print (Option_t *opt="") const override
 
void Print (std::ostream &out) const override
 

Static Public Member Functions

static bool SetCoreWave ()
 
static void SetCustomTargetChamber (Double_t distance)
 
static void SetSharc (Double_t distance=650.57)
 
static void SetTip (Double_t distance=600.)
 

Public Attributes

TVector3 fParticle = TVector3(0,0,0)
 
Int_t fRange = 0
 

Static Public Attributes

static const double fInitialSpacingCart = 28.0
 
static const double fSpacingCart = 13.0
 
static double fTargetToWindowCart = 700.0
 

Protected Attributes

std::vector< TDetectorHit * > fHits
 

Private Attributes

std::vector< TTrificHit * > fSingFragments
 
TTransientBits< UShort_t > fTrificBits
 
std::vector< TTrificHit * > fXFragments
 
std::vector< TTrificHit * > fYFragments
 

Static Private Attributes

static const double fAngle = (60./180.)*TMath::Pi()
 
static Int_t fGridX = 0
 
static Int_t fGridY = 0
 
static const TVector3 fNormalGridVec = TVector3(0,-TMath::Cos(fAngle),TMath::Sin(fAngle))
 
static bool fSetCoreWave = false
 
static const double fXmm [12] ={-33,-27,-21,-15,-9,-3,3,9,15,21,27,33}
 
static const double fYmm [12] ={42,36,28,20,12,4,-4,-12,-20,-28,-36,-42}
 

#include <TTrific.h>

+ Inheritance diagram for TTrific:
+ Collaboration diagram for TTrific:

Member Enumeration Documentation

◆ ETrificBits

enum TTrific::ETrificBits
strong
Enumerator
kPositionCalculated 
kRangeCalculated 
kBit2 
kBit3 
kBit4 
kBit5 
kBit6 
kBit7 

Definition at line 33 of file TTrific.h.

Constructor & Destructor Documentation

◆ TTrific() [1/2]

TTrific::TTrific ( )

Definition at line 41 of file TTrific.cxx.

References Clear().

◆ TTrific() [2/2]

TTrific::TTrific ( const TTrific rhs)

Definition at line 49 of file TTrific.cxx.

References Copy().

◆ ~TTrific()

TTrific::~TTrific ( )
override

Definition at line 71 of file TTrific.cxx.

Member Function Documentation

◆ AddFragment()

void TTrific::AddFragment ( const std::shared_ptr< const TFragment > &  ,
TChannel  
)
overridevirtual

◆ BuildHits()

void TTrific::BuildHits ( )
inlineoverridevirtual

!

Reimplemented from TDetector.

Definition at line 58 of file TTrific.h.

◆ Clear()

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

!

Definition at line 122 of file TTrific.cxx.

References TDetector::Clear(), TDetector::fHits, fSingFragments, fTrificBits, fXFragments, and fYFragments.

Referenced by TTrific().

◆ ClearTransients()

void TTrific::ClearTransients ( )
inlineoverridevirtual

!

Reimplemented from TDetector.

Definition at line 60 of file TTrific.h.

References TDetector::ClearTransients(), fParticle, fRange, and fTrificBits.

◆ Copy()

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

!

Reimplemented from TDetector.

Definition at line 57 of file TTrific.cxx.

References TDetector::Copy(), fSetCoreWave, fSingFragments, fTrificBits, fXFragments, and fYFragments.

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

◆ GetHit()

◆ GetHitVector()

◆ GetMultiplicity()

virtual Short_t TTrific::GetMultiplicity ( ) const
inlineoverridevirtual

Reimplemented from TDetector.

Definition at line 68 of file TTrific.h.

References TDetector::fHits.

◆ GetPosition() [1/2]

TVector3 TTrific::GetPosition ( Int_t  detectorNumber)

!

Definition at line 161 of file TTrific.cxx.

References fInitialSpacingCart, fSpacingCart, fTargetToWindowCart, and GetPosition().

◆ GetPosition() [2/2]

◆ GetRange()

◆ GetSingMultiplicity()

virtual Short_t TTrific::GetSingMultiplicity ( ) const
inlinevirtual

Definition at line 71 of file TTrific.h.

References fSingFragments.

◆ GetTrificHit()

TTrificHit* TTrific::GetTrificHit ( const int &  i) const
inline

Definition at line 50 of file TTrific.h.

References TDetector::GetHit().

◆ GetTrificSingHit()

TTrificHit* TTrific::GetTrificSingHit ( const int &  i) const
inline

Definition at line 53 of file TTrific.h.

References fSingFragments.

◆ GetTrificXHit()

TTrificHit* TTrific::GetTrificXHit ( const int &  i) const
inline

Definition at line 51 of file TTrific.h.

References fXFragments.

◆ GetTrificYHit()

TTrificHit* TTrific::GetTrificYHit ( const int &  i) const
inline

Definition at line 52 of file TTrific.h.

References fYFragments.

◆ GetXMultiplicity()

virtual Short_t TTrific::GetXMultiplicity ( ) const
inlinevirtual

Definition at line 69 of file TTrific.h.

References fXFragments.

◆ GetXYGrid()

void TTrific::GetXYGrid ( )

!

Definition at line 141 of file TTrific.cxx.

References fGridX, fGridY, fXFragments, fYFragments, and TDetectorHit::GetDetector().

Referenced by GetPosition(), and GetRange().

◆ GetYMultiplicity()

virtual Short_t TTrific::GetYMultiplicity ( ) const
inlinevirtual

Definition at line 70 of file TTrific.h.

References fYFragments.

◆ operator=()

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

!

Definition at line 92 of file TTrific.cxx.

References Copy().

◆ Print() [1/2]

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

!

Definition at line 76 of file TTrific.cxx.

◆ Print() [2/2]

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

!

Reimplemented from TDetector.

Definition at line 82 of file TTrific.cxx.

References TDetector::fHits, fSingFragments, fXFragments, and fYFragments.

◆ SetCoreWave()

static bool TTrific::SetCoreWave ( )
inlinestatic

!

Definition at line 106 of file TTrific.h.

References fSetCoreWave.

◆ SetCustomTargetChamber()

static void TTrific::SetCustomTargetChamber ( Double_t  distance)
inlinestatic

Definition at line 76 of file TTrific.h.

References fTargetToWindowCart.

◆ SetSharc()

static void TTrific::SetSharc ( Double_t  distance = 650.57)
inlinestatic

Definition at line 74 of file TTrific.h.

References fTargetToWindowCart.

◆ SetTip()

static void TTrific::SetTip ( Double_t  distance = 600.)
inlinestatic

Definition at line 75 of file TTrific.h.

References fTargetToWindowCart.

Member Data Documentation

◆ fAngle

const double TTrific::fAngle = (60./180.)*TMath::Pi()
staticprivate

Definition at line 128 of file TTrific.h.

Referenced by GetPosition().

◆ fGridX

Int_t TTrific::fGridX = 0
staticprivate

Definition at line 126 of file TTrific.h.

Referenced by GetPosition(), GetRange(), and GetXYGrid().

◆ fGridY

Int_t TTrific::fGridY = 0
staticprivate

Definition at line 127 of file TTrific.h.

Referenced by GetPosition(), GetRange(), and GetXYGrid().

◆ 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(), AddFragment(), TLaBr::AddFragment(), TFippsLaBr::AddFragment(), TTigress::AddFragment(), TEmma::BuildHits(), TCSM::BuildHits(), TSharc::BuildHits(), TTigress::BuildHits(), TSharc::Clear(), TDetector::Clear(), TEmma::Clear(), Clear(), TDetector::ClearTransients(), TDetector::Copy(), TSiLi::GetAddbackMultiplicity(), TTigress::GetAddbackMultiplicity(), TFipps::GetFippsHit(), TDetector::GetHit(), TDetector::GetHitVector(), TIfin::GetIfinHit(), TDetector::GetMultiplicity(), 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(), Print(), TTigress::Print(), TSiLi::UseFitCharge(), and TDetector::~TDetector().

◆ fInitialSpacingCart

const double TTrific::fInitialSpacingCart = 28.0
static

Definition at line 114 of file TTrific.h.

Referenced by TTrificHit::GetPosition(), and GetPosition().

◆ fNormalGridVec

const TVector3 TTrific::fNormalGridVec = TVector3(0,-TMath::Cos(fAngle),TMath::Sin(fAngle))
staticprivate

Definition at line 129 of file TTrific.h.

◆ fParticle

TVector3 TTrific::fParticle = TVector3(0,0,0)

!

Definition at line 79 of file TTrific.h.

Referenced by ClearTransients(), and GetPosition().

◆ fRange

Int_t TTrific::fRange = 0

!

Definition at line 81 of file TTrific.h.

Referenced by ClearTransients(), and GetRange().

◆ fSetCoreWave

bool TTrific::fSetCoreWave = false
staticprivate

! Flag for Waveforms ON/OFF

Definition at line 97 of file TTrific.h.

Referenced by Copy(), and SetCoreWave().

◆ fSingFragments

std::vector<TTrificHit*> TTrific::fSingFragments
private

Definition at line 101 of file TTrific.h.

Referenced by AddFragment(), Clear(), Copy(), GetRange(), GetSingMultiplicity(), GetTrificSingHit(), and Print().

◆ fSpacingCart

const double TTrific::fSpacingCart = 13.0
static

Definition at line 113 of file TTrific.h.

Referenced by TTrificHit::GetPosition(), and GetPosition().

◆ fTargetToWindowCart

double TTrific::fTargetToWindowCart = 700.0
static

◆ fTrificBits

TTransientBits<UShort_t> TTrific::fTrificBits
private

Definition at line 103 of file TTrific.h.

Referenced by Clear(), ClearTransients(), Copy(), GetPosition(), and GetRange().

◆ fXFragments

std::vector<TTrificHit*> TTrific::fXFragments
private

◆ fXmm

const double TTrific::fXmm ={-33,-27,-21,-15,-9,-3,3,9,15,21,27,33}
staticprivate

Definition at line 120 of file TTrific.h.

Referenced by GetPosition().

◆ fYFragments

std::vector<TTrificHit*> TTrific::fYFragments
private

◆ fYmm

const double TTrific::fYmm ={42,36,28,20,12,4,-4,-12,-20,-28,-36,-42}
staticprivate

Definition at line 122 of file TTrific.h.

Referenced by GetPosition().