class HMdcTrkCand: public TObject

_HADES_CLASS_DESCRIPTION


  HMdcTrkCand (MDC track candidate)


  this class keep information about matching between
  inner and outer segments:
    seg1Ind - index of inner segment (HMdcSeg object) in category.
    seg2Ind - index of outer segment in category.
              If seg2Ind==-1  - no outer segments (!).
    nCandForSeg1 - number of outer segments for this inner
                   (for each combination exist HMdcTrkCand object).
                   If nCandForSeg1==0 - no outer segments
                   If nCandForSeg1>0 this container is first one from
                   nCandForSeg1 objects.
                   If nCandForSeg1==-1 - one of the next objects.
    nextCandInd  - index of next HMdcTrkCand object.
                   If nextCandInd==-1 this object is latest from
                   nCandForSeg1 objects.


  The HMdcTrkCand objects are stored in the matrix category catMdcTrkCand.

  Retrieving of HMdcTrkCand objects.
    Let pMdcTrkCandCat is poiner to catMdcTrkCand category
    and iterMdcTrkCand is corresponding iterator then:

    iterMdcTrkCand->Reset();
    while( (pMdcTrkCand=(HMdcTrkCand*)iterMdcTrkCand->Next()) !=0) {
      Short_t nOuterSeg=pMdcTrkCand->getNCandForSeg1();
      if(nOuterSeg==0) {    // no outer segments:

      } else {

        //----------------------------------------------------------------
        // If you don't care about number of outer segments for inner one:
        ...              // your code

        //----------------------------------------------------------------
        // Otherwise:
        if(nOuterSeg==-1) continue;
        Short_t nextObjInd=0;
        while (nextObjInd>=0) {
          ...              // your code
          // Next HMdcTrkCand object geting:
          nextObjInd = pMdcTrkCand->getNextCandInd();
          if(nextObjInd>=0) pMdcTrkCand =
              (HMdcTrkCand*)pMdcTrkCandCat->getObject(nextObjInd);
        }

      }
    }

  dedx fom Mdc segments can beretrieved via
  getdedxInnerSeg()         mean value of t2-t1 for inner segment
  getdedxOuterSeg()         sigma of t2-t1 distribution in inner segment
  getSigmadedxInnerSeg()    number of wires in inner segment
                            before truncated mean procedure
  getSigmadedxOuterSeg()    number of wires in inner segment
                            cutted by truncated mean procedure
  getNWirededxInnerSeg()    mean value of t2-t1 for outer segment
  getNWirededxOuterSeg()    sigma of t2-t1 distribution in outer segment
  getNWireCutdedxInnerSeg() number of wires in outer segment
                            before truncated mean procedure
  getNWireCutdedxOuterSeg() number of wires in outer segment
                            cutted by truncated mean procedure

  to do it inside a loop the following functions ar provided

  getdedxSeg(Int_t seg)          seg==0: for inner seg , seg==1 for outer seg
  getSigmadedxSeg(Int_t seg)     seg==0: for inner seg , seg==1 for outer seg
  getNWirededxSeg(Int_t seg)     seg==0: for inner seg , seg==1 for outer seg
  getNWireCutdedxSeg(Int_t seg)  seg==0: for inner seg , seg==1 for outer seg
  setdedxSeg(Int_t seg,Float_t dedx)        seg==0: for inner seg , seg==1 for outer seg
  setSigmadedxSeg(Int_t seg,Float_t sig)    seg==0: for inner seg , seg==1 for outer seg
  setNWirededxSeg(Int_t seg,UChar_t nw)     seg==0: for inner seg , seg==1 for outer seg
  setNWireCutdedxSeg(Int_t seg,UChar_t nw)  seg==0: for inner seg , seg==1 for outer seg

Function Members (Methods)

public:
HMdcTrkCand()
HMdcTrkCand(const HMdcTrkCand&)
HMdcTrkCand(Char_t sec, Short_t s1ind, Int_t ind)
HMdcTrkCand(HMdcTrkCand* fTrkCand, Short_t s2ind, Short_t ind)
virtual~HMdcTrkCand()
voidTObject::AbstractMethod(const char* method) const
voidaddSeg2Ind(const Short_t ind)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
voidclear()
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_tgetdedxCombinedSeg()
Float_tgetdedxInnerSeg()
Float_tgetdedxOuterSeg()
Float_tgetdedxSeg(Int_t seg)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Short_tgetFirstCandInd() const
Char_tgetFlag() const
virtual const char*TObject::GetIconName() const
Short_tgetMetaMatchInd() const
virtual const char*TObject::GetName() const
Short_tgetNCandForSeg1() const
Short_tgetNextCandInd() const
UChar_tgetNWireCutdedxCombinedSeg()
UChar_tgetNWireCutdedxInnerSeg()
UChar_tgetNWireCutdedxOuterSeg()
UChar_tgetNWireCutdedxSeg(Int_t seg)
UChar_tgetNWirededxCombinedSeg()
UChar_tgetNWirededxInnerSeg()
UChar_tgetNWirededxOuterSeg()
UChar_tgetNWirededxSeg(Int_t seg)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Char_tgetSec() const
Short_tgetSeg1Ind() const
Short_tgetSeg2Ind() const
Short_tgetSegInd(const Int_t seg) const
Float_tgetSigmadedxCombinedSeg()
Float_tgetSigmadedxInnerSeg()
Float_tgetSigmadedxOuterSeg()
Float_tgetSigmadedxSeg(Int_t seg)
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
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)
HMdcTrkCand&operator=(const HMdcTrkCand&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidprint() const
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 = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidsetdedxCombinedSeg(Float_t dedx)
voidsetdedxInnerSeg(Float_t dedx)
voidsetdedxOuterSeg(Float_t dedx)
voidsetdedxSeg(Int_t seg, Float_t dedx)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidsetFirstCandInd(Short_t i)
voidsetFlag(const Char_t fl)
voidsetMetaMatchInd(const Short_t ind)
voidsetNCandForSeg1(const Short_t n)
voidsetNextCandInd(const Short_t n)
voidsetNWireCutdedxCombinedSeg(UChar_t nw)
voidsetNWireCutdedxInnerSeg(UChar_t nw)
voidsetNWireCutdedxOuterSeg(UChar_t nw)
voidsetNWireCutdedxSeg(Int_t seg, UChar_t nw)
voidsetNWirededxCombinedSeg(UChar_t nw)
voidsetNWirededxInnerSeg(UChar_t nw)
voidsetNWirededxOuterSeg(UChar_t nw)
voidsetNWirededxSeg(Int_t seg, UChar_t nw)
static voidTObject::SetObjectStat(Bool_t stat)
voidsetSec(const Char_t s)
voidsetSeg1Ind(const Short_t ind)
voidsetSeg2Ind(const Short_t ind)
voidsetSigmadedxCombinedSeg(Float_t sig)
voidsetSigmadedxInnerSeg(Float_t sig)
voidsetSigmadedxOuterSeg(Float_t sig)
voidsetSigmadedxSeg(Int_t seg, Float_t sig)
virtual voidTObject::SetUniqueID(UInt_t uid)
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
};
protected:
Float_tdedxCombinedmean value of t2-t1 for inner+outer segment
Float_tdedxInnermean value of t2-t1 for inner segment
UChar_tdedxNWireCombinednumber of wires in inner+outer segment before truncated mean procedure
UChar_tdedxNWireCutCombinednumber of wires in inner+outer segment cutted by truncated mean procedure
UChar_tdedxNWireCutInnernumber of wires in inner segment cutted by truncated mean procedure
UChar_tdedxNWireCutOuternumber of wires in outer segment cutted by truncated mean procedure
UChar_tdedxNWireInnernumber of wires in inner segment before truncated mean procedure
UChar_tdedxNWireOuternumber of wires in outer segment before truncated mean procedure
Float_tdedxOutermean value of t2-t1 for outer segment
Float_tdedxSigmaCombinedsigma of t2-t1 distribution in inner+outer segment
Float_tdedxSigmaInnersigma of t2-t1 distribution in inner segment
Float_tdedxSigmaOutersigma of t2-t1 distribution in outer segment
Short_tfirstCandIndindex of the first HMdcTrkCand object with
Char_tflaguser flag
Short_tmetaMatchIndfirst HMetaMatch obj.index created for this one
Short_tnCandForSeg1number of HMdcTrkCand objects
Short_tnextCandIndindex of next HMdcTrkCand object
Char_tsectorsector number
Short_tseg1Indindex of HMdcSeg container (inner segment)
Short_tseg2Indindex of HMdcSeg container (outer segment)
private:
HMdcTrkCand*pFirstCand! first HMdcTrkCand object with

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HMdcTrkCand(Char_t sec, Short_t s1ind, Int_t ind)
 Setting inner segment
HMdcTrkCand(HMdcTrkCand* fTrkCand, Short_t s2ind, Short_t ind)
 Setting outer segment
void clear(void)
 reset data members to default values
void print(void)
 prints information about HMdcTrakCand on the screen
void Streamer(TBuffer& b)
 Stream an object of class HMdcTrkCand.
HMdcTrkCand(const HMdcTrkCand& )
! the same inner segment
{clear();}
HMdcTrkCand(Char_t sec, Short_t s1ind, Int_t ind)
~HMdcTrkCand(void)
{}
void setSec(const Char_t s)
{sector=s;}
void setSeg1Ind(const Short_t ind)
{seg1Ind=ind;}
void setSeg2Ind(const Short_t ind)
{seg2Ind=ind;}
void setNCandForSeg1(const Short_t n)
{nCandForSeg1=n;}
void setFirstCandInd(Short_t i)
{firstCandInd=i;}
void setNextCandInd(const Short_t n)
{nextCandInd=n;}
void setMetaMatchInd(const Short_t ind)
{metaMatchInd=ind;}
void addSeg2Ind(const Short_t ind)
{seg2Ind=ind; nCandForSeg1=1;}
void setFlag(const Char_t fl)
{ flag=fl;}
void setdedxInnerSeg(Float_t dedx)
{dedxInner=dedx;}
void setdedxOuterSeg(Float_t dedx)
{dedxOuter=dedx;}
void setdedxCombinedSeg(Float_t dedx)
{dedxCombined=dedx;}
void setdedxSeg(Int_t seg, Float_t dedx)
void setSigmadedxInnerSeg(Float_t sig)
{dedxSigmaInner=sig;}
void setSigmadedxOuterSeg(Float_t sig)
{dedxSigmaOuter=sig;}
void setSigmadedxCombinedSeg(Float_t sig)
{dedxSigmaCombined=sig;}
void setSigmadedxSeg(Int_t seg, Float_t sig)
void setNWirededxInnerSeg(UChar_t nw)
{dedxNWireInner=nw;}
void setNWirededxOuterSeg(UChar_t nw)
{dedxNWireOuter=nw;}
void setNWirededxCombinedSeg(UChar_t nw)
{dedxNWireCombined=nw;}
void setNWirededxSeg(Int_t seg, UChar_t nw)
void setNWireCutdedxInnerSeg(UChar_t nw)
{dedxNWireCutInner=nw;}
void setNWireCutdedxOuterSeg(UChar_t nw)
{dedxNWireCutOuter=nw;}
void setNWireCutdedxCombinedSeg(UChar_t nw)
{dedxNWireCutCombined=nw;}
void setNWireCutdedxSeg(Int_t seg, UChar_t nw)
Char_t getSec(void)
{return sector;}
Short_t getSeg1Ind(void)
{return seg1Ind;}
Short_t getSeg2Ind(void)
{return seg2Ind;}
Short_t getSegInd(const Int_t seg) const
Short_t getNCandForSeg1(void)
{return nCandForSeg1;}
Short_t getNextCandInd(void)
{return nextCandInd;}
Short_t getFirstCandInd(void)
{return firstCandInd;}
Short_t getMetaMatchInd(void)
{return metaMatchInd;}
Char_t getFlag(void)
{return flag;}
Float_t getdedxInnerSeg()
{return dedxInner;}
Float_t getdedxOuterSeg()
{return dedxOuter;}
Float_t getdedxCombinedSeg()
{return dedxCombined;}
Float_t getdedxSeg(Int_t seg)
Float_t getSigmadedxInnerSeg()
{return dedxSigmaInner;}
Float_t getSigmadedxOuterSeg()
{return dedxSigmaOuter;}
Float_t getSigmadedxCombinedSeg()
{return dedxSigmaCombined;}
Float_t getSigmadedxSeg(Int_t seg)
UChar_t getNWirededxInnerSeg()
{return dedxNWireInner;}
UChar_t getNWirededxOuterSeg()
{return dedxNWireOuter;}
UChar_t getNWirededxCombinedSeg()
{return dedxNWireCombined;}
UChar_t getNWirededxSeg(Int_t seg)
UChar_t getNWireCutdedxInnerSeg()
{return dedxNWireCutInner;}
UChar_t getNWireCutdedxOuterSeg()
{return dedxNWireCutOuter;}
UChar_t getNWireCutdedxCombinedSeg()
{return dedxNWireCutCombined;}
UChar_t getNWireCutdedxSeg(Int_t seg)

Last change: Sat May 22 13:04:16 2010
Last generated: 2010-05-22 13:04

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.