FEDRA emulsion software from the OPERA Collaboration
EdbTrackDS Class Reference

#include <EdbDecaySearch.h>

Inheritance diagram for EdbTrackDS:
Collaboration diagram for EdbTrackDS:

Public Member Functions

void AddDaughter (EdbTrackP *t)
 
void AddFriend (EdbTrackP *t)
 
int Classification ()
 
const char * Comment ()
 
int CSTrack ()
 
int Darkness ()
 
 EdbTrackDS ()
 
 EdbTrackDS (EdbTrackP *track)
 
 EdbTrackDS (EdbTrackP *track, EdbVertex *vtxup)
 
int FlagDS ()
 
int FlagKink ()
 
EdbTrackPGetDaughter (int i)
 
TObjArray * GetDaughters ()
 
EdbTrackPGetFriend (int i)
 
TObjArray * GetFriends ()
 
EdbTrackPGetOriginal ()
 
EdbTrackPGetTrack ()
 
void Init ()
 
double IPDown ()
 
double IPUp ()
 
int KinkPlate ()
 
int NDaughters ()
 
int NFriends ()
 
double P ()
 
int Particle ()
 
double Pmax ()
 
double Pmin ()
 
void Print ()
 
int Run ()
 
EdbSegPSegmentFirst ()
 
void SetClassification (int v)
 
void SetComment (char *comment)
 
void SetCSTrack (int v)
 
void SetDarkness (int v)
 
void SetFlagDS (int v)
 
void SetFlagKink (int v)
 
void SetFlagsAuto ()
 
void SetKinkPlate (int v)
 
void SetP (double p, double pmin, double pmax)
 
void SetParticle (int v)
 
void SetRun (int v)
 
void SetSegmentFirst (EdbSegP *s)
 
void SetTrackSearch (int v)
 
void SetVertexDown (EdbVertex *v)
 
void SetVertexUp (EdbVertex *v)
 
int TrackSearch ()
 
EdbVertexVertexDown ()
 
EdbVertexVertexUp ()
 
- Public Member Functions inherited from EdbTrackP
void AddSegment (EdbSegP *s)
 
void AddSegmentF (EdbSegP *s)
 
void AddTrack (const EdbTrackP &tr)
 
void AddVTA (EdbVTA *vta)
 
int CheckAliasSegments ()
 
int CheckMaxGap ()
 
float CHI2 ()
 
float CHI2F ()
 
void Clear ()
 
void ClearF ()
 
void ClearVTA ()
 
void ClearVTA (EdbVTA *vta)
 
void Copy (const EdbTrackP &tr)
 
Float_t DE () const
 
Int_t Dir () const
 
 EdbTrackP (EdbSegP &seg)
 
 EdbTrackP (EdbSegP *seg, float m=0.12)
 
 EdbTrackP (EdbTrackP &track)
 
 EdbTrackP (int nseg=0)
 vertex track end is attached to More...
 
int EstimatePositionAt (Float_t z, EdbSegP &ss)
 
void FitTrack ()
 
int FitTrackKFS (bool zmax=false, float X0=5810., int design=0)
 
Double_t GetBTEfficiency ()
 
EdbSegPGetSegment (int i) const
 
EdbSegPGetSegmentF (int i) const
 
EdbSegPGetSegmentFFirst () const
 
EdbSegPGetSegmentFirst () const
 
EdbSegPGetSegmentFLast () const
 
EdbSegPGetSegmentLast () const
 
Int_t GetSegmentsAid (int &nseg) const
 
Int_t GetSegmentsFlag (int &nseg) const
 
Int_t GetSegmentsMCTrack (int &nseg) const
 
EdbSegPGetSegmentWithClosestZ (float z, float dz)
 
Float_t M () const
 
float MakePredictionTo (Float_t z, EdbSegP &ss)
 
int MakeSelector (EdbSegP &ss, bool followZ=true)
 
Int_t N () const
 
Int_t N0 () const
 
Int_t NF () const
 
Int_t Npl () const
 
Int_t PDG () const
 
Float_t PerrDown () const
 
Float_t PerrUp () const
 
void Print ()
 
void PrintNice ()
 
int RemoveAliasSegments ()
 
void RemoveSegment (EdbSegP *s)
 
void Set0 ()
 
void SetCounters ()
 
void SetDE (float de)
 
void SetM (float m)
 
void SetN0 ()
 
void SetN0 (int n0)
 
void SetNpl ()
 
void SetNpl (int npl)
 
void SetOwner ()
 
void SetPDG (int pdg)
 
void SetPerr (Float_t perrDown, Float_t perrUp)
 
void SetPerrDown (Float_t perrDown)
 
void SetPerrUp (Float_t perrUp)
 
int SetSegmentsP (float p)
 
int SetSegmentsTrack ()
 
int SetSegmentsTrack (int id)
 
void SubstituteSegment (EdbSegP *sold, EdbSegP *snew)
 
const EdbSegPTrackEnd () const
 
EdbSegPTrackExtremity (bool zpos, bool usesegpar=false) const
 
const EdbSegPTrackStart () const
 
EdbSegPTrackZmax (bool usesegpar=false) const
 
EdbSegPTrackZmin (bool usesegpar=false) const
 
void Transform (const EdbAffine2D &tr)
 
EdbVertexVertex (int zpos)
 
EdbVertexVertexE ()
 
EdbVertexVertexS ()
 
EdbVTAVTAE () const
 
EdbVTAVTAS () const
 
Float_t Wgrains () const
 
Float_t Wmean () const
 
Float_t Zend () const
 
Float_t Zmax () const
 
Float_t Zmin () const
 
Float_t Zstart () const
 
virtual ~EdbTrackP ()
 
- Public Member Functions inherited from EdbSegP
void addEMULDigit (TObject *a)
 
Int_t Aid (int i) const
 
bool CheckCOV () const
 
Float_t Chi2 () const
 
void Clear ()
 
Int_t Compare (const TObject *obj) const
 
void Copy (const EdbSegP &s)
 
TMatrixD & COV () const
 
Float_t DeltaR (EdbSegP *seg1) const
 
Float_t DeltaTheta (EdbSegP *seg1) const
 
Float_t DZ () const
 
Float_t DZem () const
 
 EdbSegP ()
 
 EdbSegP (const EdbSegP &s)
 
 EdbSegP (int id, float x, float y, float tx, float ty, float w=0, int flag=0)
 
TRefArray * EMULDigitArray () const
 
Int_t Flag () const
 
void ForceCOV (TMatrixD &cov)
 
Int_t ID () const
 
bool IsCompatible (EdbSegP &s, float nsigx, float nsigt) const
 
Bool_t IsEqual (const TObject *obj) const
 
bool IsInside (float xmin, float xmax, float ymin, float ymax) const
 
bool IsInside (float xmin, float xmax, float ymin, float ymax, float zmin, float zmax) const
 
Bool_t IsSortable () const
 
Int_t MCEvt () const
 
Int_t MCTrack () const
 
void MergeTo (EdbSegP &s)
 
Float_t P () const
 
Float_t Phi () const
 
Int_t PID () const
 
Int_t Plate () const
 
void Print (Option_t *opt="") const
 
void PrintNice () const
 
Float_t Prob () const
 
Float_t ProbLink (EdbSegP &s1, EdbSegP &s2)
 
void PropagateTo (float z)
 
void PropagateToCOV (float z)
 
void PropagateToDZ (float dz)
 
EdbID ScanID () const
 
void Set (int id, float x, float y, float tx, float ty, float w, int flag)
 
void Set0 ()
 
void SetAid (int a, int v, int side=0)
 
void SetChi2 (float chi2)
 
void SetCOV (double *array, int dim=5)
 
void SetCOV (TMatrixD &cov)
 
void SetDZ (float dz)
 
void SetDZem (float dz)
 
void SetErrorP (float sp2)
 
void SetErrors ()
 
void SetErrors (float sx2, float sy2, float sz2, float stx2, float sty2, float sp2=1.)
 
void SetErrors0 ()
 
void SetErrorsCOV (float sx2, float sy2, float sz2, float stx2, float sty2, float sp2=1.)
 
void SetFlag (int flag)
 
void SetID (int id)
 
void SetMC (int mEvt, int mTrack)
 
void SetP (float p)
 
void SetPID (int pid)
 
void SetPlate (int plateid)
 
void SetProb (float prob)
 
void SetProbability (float p)
 
void SetScanID (EdbID id)
 
void SetSide (int side=0)
 
void SetSZ (float sz)
 
void SetTrack (int trid)
 
void SetTX (Float_t tx)
 
void SetTY (Float_t ty)
 
void SetVid (int vid, int sid)
 
void SetVolume (float w)
 
void SetW (float w)
 
void SetX (Float_t x)
 
void SetY (Float_t y)
 
void SetZ (float z)
 
Int_t Side () const
 
Float_t SP () const
 
Float_t STX () const
 
Float_t STY () const
 
Float_t SX () const
 
Float_t SY () const
 
Float_t SZ () const
 
Float_t Theta () const
 
Int_t Track () const
 
Float_t TX () const
 
Float_t TY () const
 
Int_t Vid (int i) const
 
Float_t Volume () const
 
Float_t W () const
 
Float_t X () const
 
Float_t Y () const
 
Float_t Z () const
 
virtual ~EdbSegP ()
 
- Public Member Functions inherited from EdbTrack2D
virtual void Substruct (EdbTrack2D *t)
 
virtual void Test () const
 
virtual void Transform (const EdbAffine2D *a)
 
virtual ~EdbTrack2D ()
 
- Public Member Functions inherited from EdbPoint2D
virtual void SetX (float x)=0
 
virtual void SetY (float y)=0
 
virtual void Substruct (EdbPoint *p)
 
virtual void TestPoint2D () const
 
virtual ~EdbPoint2D ()
 
- Public Member Functions inherited from EdbPoint
virtual void Transform (const EdbAffine3D *a)
 
virtual ~EdbPoint ()
 
- Public Member Functions inherited from EdbAngle2D
virtual void SetTX (float x)=0
 
virtual void SetTY (float y)=0
 
virtual void Substruct (const EdbAngle2D *a)
 
virtual ~EdbAngle2D ()
 

Private Attributes

int eClassification
 
TString eComment
 
int eCSTrack
 
int eDarkness
 
TObjArray * eDaughters
 
int eFlagDS
 
int eFlagKink
 
TObjArray * eFriends
 
int eKinkPlate
 
EdbTrackPeOriginal
 
double eP
 
EdbTrackPeParent
 
int eParticle
 
double ePmax
 
double ePmin
 
int eRun
 
EdbSegPeSegmentFirst
 
int eTrackSearch
 
EdbVertexeVertexDown
 
EdbVertexeVertexUp
 

Additional Inherited Members

- Static Public Member Functions inherited from EdbSegP
static Float_t Angle (const EdbSegP &s1, const EdbSegP &s2)
 
static Float_t Distance (const EdbSegP &s1, const EdbSegP &s2)
 
static void LinkMT (const EdbSegP *s1, const EdbSegP *s2, EdbSegP *s)
 
- Public Attributes inherited from EdbSegP
Float_t eTX
 
Float_t eTY
 
Float_t eX
 
Float_t eY
 
Float_t eZ
 
- Protected Attributes inherited from EdbSegP
TMatrixD * eCOV
 

Constructor & Destructor Documentation

◆ EdbTrackDS() [1/3]

EdbTrackDS::EdbTrackDS ( )
inline
38 : EdbTrackP(), eOriginal(0){ Init();}
void Init()
Definition: EdbDecaySearch.h:44
EdbTrackP * eOriginal
Definition: EdbDecaySearch.h:12
EdbTrackP(int nseg=0)
vertex track end is attached to
Definition: EdbPattern.cxx:429

◆ EdbTrackDS() [2/3]

EdbTrackDS::EdbTrackDS ( EdbTrackP track)
inline
Definition: bitview.h:14

◆ EdbTrackDS() [3/3]

EdbTrackDS::EdbTrackDS ( EdbTrackP track,
EdbVertex vtxup 
)
inline
41  Init();
42  SetVertexUp(vtxup);
43  }
void SetVertexUp(EdbVertex *v)
Definition: EdbDecaySearch.h:62

Member Function Documentation

◆ AddDaughter()

void EdbTrackDS::AddDaughter ( EdbTrackP t)
inline
75 { if(eDaughters->FindObject(t)==NULL) eDaughters->Add(t);}
TTree * t
Definition: check_shower.C:4
TObjArray * eDaughters
Definition: EdbDecaySearch.h:19
#define NULL
Definition: nidaqmx.h:84

◆ AddFriend()

void EdbTrackDS::AddFriend ( EdbTrackP t)
inline
70 { if(eFriends->FindObject(t)==NULL) eFriends->Add(t);}
TObjArray * eFriends
Definition: EdbDecaySearch.h:17

◆ Classification()

int EdbTrackDS::Classification ( )
inline
97 { return eClassification;}
int eClassification
Definition: EdbDecaySearch.h:22

◆ Comment()

const char* EdbTrackDS::Comment ( )
inline
60 { return eComment.Data();}
TString eComment
Definition: EdbDecaySearch.h:13

◆ CSTrack()

int EdbTrackDS::CSTrack ( )
inline
93 { return eCSTrack;}
int eCSTrack
Definition: EdbDecaySearch.h:29

◆ Darkness()

int EdbTrackDS::Darkness ( )
inline
91 { return eDarkness;}
int eDarkness
Definition: EdbDecaySearch.h:28

◆ FlagDS()

int EdbTrackDS::FlagDS ( )
inline
81 { return eFlagDS;}
int eFlagDS
Definition: EdbDecaySearch.h:21

◆ FlagKink()

int EdbTrackDS::FlagKink ( )
inline
85 { return eFlagKink;}
int eFlagKink
Definition: EdbDecaySearch.h:24

◆ GetDaughter()

EdbTrackP* EdbTrackDS::GetDaughter ( int  i)
inline
77 { return (EdbTrackP *) eDaughters->At(i);}
Definition: EdbPattern.h:118

◆ GetDaughters()

TObjArray* EdbTrackDS::GetDaughters ( )
inline
78 { return eDaughters;}

◆ GetFriend()

EdbTrackP* EdbTrackDS::GetFriend ( int  i)
inline
72 { return (EdbTrackP *) eFriends->At(i);}

◆ GetFriends()

TObjArray* EdbTrackDS::GetFriends ( )
inline
73 { return eFriends;}

◆ GetOriginal()

EdbTrackP* EdbTrackDS::GetOriginal ( )
inline
107 { return eOriginal;}

◆ GetTrack()

EdbTrackP* EdbTrackDS::GetTrack ( )
inline
108 { return eOriginal;}

◆ Init()

void EdbTrackDS::Init ( )
inline
44  {
47  eParent = NULL;
48  eFriends = new TObjArray;
49  eDaughters = new TObjArray;
51  eTrackSearch = 0;
52  eP = ePmin = ePmax = -1;
53 
54  SetFlagsAuto();
55  }
void SetFlagsAuto()
Definition: EdbDecaySearch.C:20
int eParticle
Definition: EdbDecaySearch.h:27
EdbTrackP * eParent
Definition: EdbDecaySearch.h:18
EdbSegP * eSegmentFirst
Definition: EdbDecaySearch.h:16
int eTrackSearch
Definition: EdbDecaySearch.h:23
double ePmax
Definition: EdbDecaySearch.h:34
int eKinkPlate
Definition: EdbDecaySearch.h:25
double ePmin
Definition: EdbDecaySearch.h:33
double eP
Definition: EdbDecaySearch.h:32
int eRun
Definition: EdbDecaySearch.h:30
EdbVertex * eVertexUp
Definition: EdbDecaySearch.h:14
EdbVertex * eVertexDown
Definition: EdbDecaySearch.h:15

◆ IPDown()

double EdbTrackDS::IPDown ( )
inline
EdbSegP * GetSegmentLast() const
Definition: EdbPattern.h:195
double CalcIP(EdbSegP *s, double x, double y, double z)
Definition: EdbEDAUtil.C:85

◆ IPUp()

double EdbTrackDS::IPUp ( )
inline
99 { return eVertexUp ? EdbEDAUtil::CalcIP(SegmentFirst(), eVertexUp) : -1.0;}
EdbSegP * SegmentFirst()
Definition: EdbDecaySearch.h:68

◆ KinkPlate()

int EdbTrackDS::KinkPlate ( )
inline
87 { return eKinkPlate;}

◆ NDaughters()

int EdbTrackDS::NDaughters ( )
inline
76 { return eDaughters->GetEntries();}

◆ NFriends()

int EdbTrackDS::NFriends ( )
inline
71 { return eFriends->GetEntries();}

◆ P()

double EdbTrackDS::P ( )
inline
103 { return eP;}

◆ Particle()

int EdbTrackDS::Particle ( )
inline
89 { return eParticle;}

◆ Pmax()

double EdbTrackDS::Pmax ( )
inline
105 { return ePmax;}

◆ Pmin()

double EdbTrackDS::Pmin ( )
inline
104 { return ePmin;}

◆ Print()

void EdbTrackDS::Print ( )

◆ Run()

int EdbTrackDS::Run ( )
inline
95 { return eRun;}

◆ SegmentFirst()

EdbSegP* EdbTrackDS::SegmentFirst ( )
inline
EdbSegP * GetSegmentFirst() const
Definition: EdbPattern.h:194

◆ SetClassification()

void EdbTrackDS::SetClassification ( int  v)
inline
96 { eClassification = v;}

◆ SetComment()

void EdbTrackDS::SetComment ( char *  comment)
inline
59 { eComment = comment;}

◆ SetCSTrack()

void EdbTrackDS::SetCSTrack ( int  v)
inline
92 { eCSTrack = v;}

◆ SetDarkness()

void EdbTrackDS::SetDarkness ( int  v)
inline
90 { eDarkness = v;}

◆ SetFlagDS()

void EdbTrackDS::SetFlagDS ( int  v)
inline
80 { eFlagDS = v;}

◆ SetFlagKink()

void EdbTrackDS::SetFlagKink ( int  v)
inline
84 { eFlagKink = v;}

◆ SetFlagsAuto()

void EdbTrackDS::SetFlagsAuto ( )
20  {
21  // check if the track is a scanback track
22  EdbTrackP *tsb = NULL; //gEDA?gEDA->CheckScanback(this):NULL;
23  if(tsb) SetCSTrack(tsb->ID());
24 
25  int idmuon = -1; //gEDA?gEDA->IdMuon():-1;
26  if (CSTrack()==idmuon&&idmuon!=-1) {
27  SetParticle(1); // 1: muon
28  printf(" Track: %d is muon\n", ID());
29  }
30  double p, pmin, pmax;
31  CalcP(this, p, pmin, pmax, 0); // pmin = pmin, pmax = pmax
32  SetP(p,pmin,pmax);
33 }
Int_t ID() const
Definition: EdbSegP.h:144
int CSTrack()
Definition: EdbDecaySearch.h:93
void SetP(double p, double pmin, double pmax)
Definition: EdbDecaySearch.h:102
void SetCSTrack(int v)
Definition: EdbDecaySearch.h:92
void SetParticle(int v)
Definition: EdbDecaySearch.h:88
EdbMomentumEstimator * CalcP(EdbTrackP *t, double &p, double &pmin, double &pmax, bool print=kTRUE)
Definition: EdbEDAUtil.C:369
p
Definition: testBGReduction_AllMethods.C:8

◆ SetKinkPlate()

void EdbTrackDS::SetKinkPlate ( int  v)
inline
86 { eKinkPlate = v;}

◆ SetP()

void EdbTrackDS::SetP ( double  p,
double  pmin,
double  pmax 
)
inline
102 { eP=p; ePmin=pmin; ePmax=pmax;}

◆ SetParticle()

void EdbTrackDS::SetParticle ( int  v)
inline
88 { eParticle = v;}

◆ SetRun()

void EdbTrackDS::SetRun ( int  v)
inline
94 { eRun = v;}

◆ SetSegmentFirst()

void EdbTrackDS::SetSegmentFirst ( EdbSegP s)
inline
67 { eSegmentFirst = s;}
EdbSegP * s
Definition: tlg2pattern.C:32

◆ SetTrackSearch()

void EdbTrackDS::SetTrackSearch ( int  v)
inline
82 { eTrackSearch = v;}

◆ SetVertexDown()

void EdbTrackDS::SetVertexDown ( EdbVertex v)
inline
64 { eVertexDown = v; }

◆ SetVertexUp()

void EdbTrackDS::SetVertexUp ( EdbVertex v)
inline
62 { eVertexUp = v;}

◆ TrackSearch()

int EdbTrackDS::TrackSearch ( )
inline
83 { return eTrackSearch;}

◆ VertexDown()

EdbVertex* EdbTrackDS::VertexDown ( )
inline
65 { return eVertexDown;}

◆ VertexUp()

EdbVertex* EdbTrackDS::VertexUp ( )
inline
63 { return eVertexUp;}

Member Data Documentation

◆ eClassification

int EdbTrackDS::eClassification
private

◆ eComment

TString EdbTrackDS::eComment
private

◆ eCSTrack

int EdbTrackDS::eCSTrack
private

◆ eDarkness

int EdbTrackDS::eDarkness
private

◆ eDaughters

TObjArray* EdbTrackDS::eDaughters
private

◆ eFlagDS

int EdbTrackDS::eFlagDS
private

◆ eFlagKink

int EdbTrackDS::eFlagKink
private

◆ eFriends

TObjArray* EdbTrackDS::eFriends
private

◆ eKinkPlate

int EdbTrackDS::eKinkPlate
private

◆ eOriginal

EdbTrackP* EdbTrackDS::eOriginal
private

◆ eP

double EdbTrackDS::eP
private

◆ eParent

EdbTrackP* EdbTrackDS::eParent
private

◆ eParticle

int EdbTrackDS::eParticle
private

◆ ePmax

double EdbTrackDS::ePmax
private

◆ ePmin

double EdbTrackDS::ePmin
private

◆ eRun

int EdbTrackDS::eRun
private

◆ eSegmentFirst

EdbSegP* EdbTrackDS::eSegmentFirst
private

◆ eTrackSearch

int EdbTrackDS::eTrackSearch
private

◆ eVertexDown

EdbVertex* EdbTrackDS::eVertexDown
private

◆ eVertexUp

EdbVertex* EdbTrackDS::eVertexUp
private

The documentation for this class was generated from the following files: