class HKickTrack: public TObject

_HADES_CLASS_DESCRIPTION

HKickTrack

  This is the output of the HKickTrackF class which matches a segment
in MDC (class HMdcSeg) with a hit in Meta (HTofHit or HShowerHitTof)
and assigns the corresponding momentum.

  Documentation for the non-trivial data members follows:

  pTof .-
    For each track the momentum is determined using to approaches:
       a) The track's deflection in the field. The resultin momentun is p
       b) With p and the track's time of flight the mass is calculated.
          On the basis of the mass and charge the particle is identified,
          once the particle is 'known' it's mass is forced to be on the
          correct value and the momentum is recalculated under this
          condition. The resulting momentum is stored in pTof.

  pid.-
    Particle's PID. See HKickTrackF / HKickMassFit for more information.

  quality.-
    When for a segment in MDC there is only one hit in Meta within the cuts
    a track is formed with quality=1. When several hits in Meta are within
    the cuts several tracks are built with quality=0, thus deferring the
    resolution of such events for a later stage in the analysis.

  r,z,theta,phi.-
    Same meaning as in HMdcSeg

  mass.-
    Despite of the name. This variable actually contains the squared mass
    determined from p and beta.

  system.-
    0  - the track was formed with an MDC segment and a Shower hit
    >0 - the track was formed with an MDC segment and a TOF hit.

  showerSum10, showerSum20
    For the case system==0. showerSum10=showerhit.sum(1)/showerhit.sum(0)
    showerSum20 = showerhit.sum(2)/showerhit.sum(0). See HShowerHit for
    information on what sum(2),sum(1) and sum(0) are.

  segmentId.-
    Id of the MDC segment used to build the track. The segment's HLocation
    is derived from segmentId as follows.

       segLoc.set(3,sector,0,segmentId)

  outerHitId.-
    Id of the segment in Meta used to build the track. There are two
    possibilities:

    system==0   <=> Shower was used

      HShowerHit *hit = (HShowerHit *)catShowerHits->getObject(outerHitId)

    system>0    <=> TOF was used

      outerHitId = tof.sector*1000 + tof.module*100 + tof.cell

  pull.-
    (x_meta - x_mdc) / sigma(x_meta - x_mdc). Where
    Where:
      x_meta -> x coordinate of the hit in Meta used to build the track
      x_mdc -> x coordinate of the MDC segment in the Meta detector.
               The MDC segment used to build the track is propagated
               trough the magnetic field and it's intersection with the
               Meta detector is computed. x_mdc is the x coordinate of
               such intersection point.

Function Members (Methods)

public:
HKickTrack()
HKickTrack(HKickTrack& aTrack, Int_t vers = 0)
virtual~HKickTrack()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Float_tgetBeta()
Int_tgetCharge()
HSymMat6&getCov()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Float_tgetErrMass()
Float_tgetErrP()
Float_tgetErrPhi()
Float_tgetErrPTof()
Float_tgetErrR()
Float_tgetErrTheta()
Float_tgetErrZ()
Float_tgetFlag()
virtual const char*TObject::GetIconName() const
Float_tgetMass()
Float_tgetMetaEloss()
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Int_tgetOuterHitId()
Float_tgetP()
Float_tgetPhi()
Char_tgetPID()
Float_tgetPTof()
Float_tgetPull()
Char_tgetQuality()
Float_tgetR()
Int_tgetRingId()
Int_tgetSector()
Int_tgetSegment()
Float_tgetShowerSum10(Float_t f)
Float_tgetShowerSum20(Float_t f)
Int_tgetSystem()
Float_tgetTheta()
virtual const char*TObject::GetTitle() const
Float_tgetTof()
Short_tgetTofFlag() const
virtual UInt_tTObject::GetUniqueID() const
Float_tgetZ()
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
HKickTrack&operator=(const HKickTrack&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidsetBeta(Float_t b)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidsetCharge(Int_t c)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidsetErrPTof(Float_t e)
voidsetFlag(Float_t f)
voidsetMass(Float_t m, Float_t err)
voidsetMetaEloss(Float_t t)
static voidTObject::SetObjectStat(Bool_t stat)
voidsetOuterHitId(Int_t i)
voidsetP(Float_t ap, Float_t err)
voidsetPhi(Float_t aphi, Float_t err)
voidsetPID(Char_t p)
voidsetPTof(Float_t p)
voidsetPull(Float_t p)
voidsetQuality(Char_t q)
voidsetR(Float_t ar, Float_t err)
voidsetRingId(Int_t i)
voidsetSector(Int_t s)
voidsetSegment(Int_t i)
voidsetShowerSum10(Float_t f)
voidsetShowerSum20(Float_t f)
voidsetSystem(Int_t s)
voidsetTheta(Float_t atheta, Float_t err)
voidsetTof(Float_t t)
voidsetTofFlag(Short_t FLAG)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidsetZ(Float_t az, Float_t err)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
public:
static const Char_tantiProtonId
static const Char_tkMinusId
static const Char_tkPlusId
static const Char_tpiMinusId
static const Char_tpiPlusId
static const Char_tprotonId
static const Char_tunknownId
private:
Float_tbetaTrack's speed
Int_tchargeSign of charge
HSymMat6covCovariance matrix of track params: z,r,p,theta,phi,mass
Float_terrPTofError in pTof
Float_tflagUndefined
Float_tmassTrack's mass squared.
Float_tmetaelossenergy loss in Meta
Short_touterHitIdId of the hit in META used to build the track
Float_tpTrack momentum determined from the kickplane
Float_tpTofTrack Momentum using determined by Time Of Flight using inverse kinematics
Float_tphiAzimuthal angle of the track's direction vector
Char_tpidTentative particle Id of the track
Float_tpullThe variable used for matching
Char_tqualityTrack Quality. q=0 all reasonable combs, q=1 good ones.
Float_trrho component of the 'vertex' coordinates
Short_tringIdId of a RICH ring matching the track
Char_tsectorSector where the track was found
Short_tsegmentIdId of the MDC segment used to build the track
Float_tshowerSum10Shower: sum of 9 charges in post / sum of 9 charges in pre
Float_tshowerSum20Shower: sum of 9 charges in post2 / sum of 9 charges in pre
Int_tsystemDetector which was matched with MDC to form a track
Float_tthetaPolar angle of the track's direction vector
Float_ttofTrack's time of flight
Float_tzz component of the 'vertex' coordinates

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HKickTrack(void)
HKickTrack(HKickTrack& aTrack, Int_t vers = 0)
 copy constructor: vers=0 gives Manuels partly copy
                   vers=1 does a full copy of the object
~HKickTrack(void)
void Streamer(TBuffer& b)
 Stream an object of class HKickTrack.
void setPull(Float_t p)
{ pull = p; }
void setSegment(Int_t i)
{ segmentId = i; }
void setRingId(Int_t i)
{ ringId = i; }
void setOuterHitId(Int_t i)
{ outerHitId = i; }
void setTof(Float_t t)
{ tof = t; }
void setMetaEloss(Float_t t)
{ metaeloss = t; }
void setSystem(Int_t s)
{ system = s;}
void setZ(Float_t az, Float_t err)
{ z=az; cov.setErr(0,err); }
void setR(Float_t ar, Float_t err)
{ r=ar; cov.setErr(1,err); }
void setP(Float_t ap, Float_t err)
{ p=ap; cov.setErr(2,err); }
void setTheta(Float_t atheta, Float_t err)
{theta=atheta; cov.setErr(3,err); }
void setPhi(Float_t aphi, Float_t err)
{ phi=aphi; cov.setErr(4,err); }
void setCharge(Int_t c)
{ charge=c; }
void setMass(Float_t m, Float_t err)
{mass=m; cov.setErr(5,err); }
void setSector(Int_t s)
{ sector = s; }
void setQuality(Char_t q)
{ quality = q; }
void setPID(Char_t p)
{ pid = p;}
void setPTof(Float_t p)
{ pTof = p; }
void setErrPTof(Float_t e)
{ errPTof = e; }
void setBeta(Float_t b)
{ beta = b; }
void setShowerSum10(Float_t f)
{ showerSum10 = f; }
void setShowerSum20(Float_t f)
{ showerSum20 = f; }
void setFlag(Float_t f)
{ flag = f; }
void setTofFlag(Short_t FLAG)
{flag=(Float_t)FLAG;}
Char_t getPID(void)
{ return pid; }
Float_t getPTof(void)
{ return pTof; }
Float_t getErrPTof(void)
{ return errPTof; }
Float_t getZ(void)
{ return z; }
Float_t getErrZ(void)
{ return cov.getErr(0); }
Float_t getR(void)
{ return r; }
Float_t getErrR(void)
{ return cov.getErr(1); }
Float_t getP(void)
{ return p; }
Float_t getErrP(void)
{ return cov.getErr(2); }
Float_t getTheta(void)
{ return theta; }
Float_t getErrTheta(void)
{ return cov.getErr(3); }
Float_t getPhi(void)
{ return phi; }
Float_t getErrPhi(void)
{ return cov.getErr(4); }
Int_t getCharge(void)
{ return charge; }
Float_t getMass(void)
{ return mass; }
Float_t getErrMass(void)
{ return cov.getErr(5); }
Float_t getShowerSum10(Float_t f)
{ return showerSum10; }
Float_t getShowerSum20(Float_t f)
{ return showerSum20; }
Int_t getSector(void)
{ return sector; }
Char_t getQuality(void)
{ return quality; }
Float_t getTof(void)
{ return tof; }
Float_t getMetaEloss(void)
{return metaeloss; }
Int_t getSystem(void)
{ return system; }
Float_t getBeta(void)
{ return beta; }
Int_t getSegment(void)
{ return segmentId; }
Int_t getRingId(void)
{ return ringId; }
Int_t getOuterHitId(void)
{ return outerHitId; }
Float_t getPull(void)
{ return pull; }
Float_t getFlag(void)
{ return flag; }
Short_t getTofFlag(void)
{return (Short_t)flag;}
HSymMat6& getCov(void)
{ return cov; }

Last change: Sat May 22 12:58:39 2010
Last generated: 2010-05-22 12:58

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.