class HMdcClus: public HMdcList12GroupCells

_HADES_CLASS_DESCRIPTION

 HMdcClust

  Container class keep cluster information:
   x,y - position of cluster on the project plane HMdcPlane
   xTag,yTag,zTarg - target, or point on the kick plane
   indexPar - index of parent in catMdcClus for Seg.1 = -1)
   indCh1,indCh2 - region of indexes of childs (for Seg.2 = -1,-2)

  Int_t getIndexParent(void) {return indexPar;}
  void  getIndexRegChilds(Int_t& first, Int_t& last)
  Int_t getNextIndexChild(Int_t ind)
    Example:
      Int_t ind=-1;
      while(ind=getNextIndexChild(ind)>0) {

      }


Function Members (Methods)

public:
HMdcClus()
HMdcClus(HMdcList12GroupCells& lcells)
HMdcClus(const HMdcClus&)
virtual~HMdcClus()
Float_tA() const
voidTObject::AbstractMethod(const char* method) const
Int_tHMdcList12GroupCells::add(HMdcList12GroupCells* lst)
virtual voidTObject::AppendPad(Option_t* option = "")
Float_tB() const
virtual voidTObject::Browse(TBrowser* b)
Float_tC() const
voidcalcIntersection(const HGeomVector& r, const HGeomVector& dir, HGeomVector& out) const
voidcalcIntersection(const HGeomVector& p, Float_t& x, Float_t& y) const
voidcalcIntersection(const HGeomVector& p1, const HGeomVector& p2, Float_t& x, Float_t& y) const
static TClass*Class()
virtual const char*TObject::ClassName() const
voidclear()
virtual voidTObject::Clear(Option_t* = "")
voidclearMod1Par()
voidclearMod2Par()
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
Int_tHMdcList12GroupCells::compare(const HMdcList12GroupCells* lst, Int_t l1 = -1, Int_t l2 = -1, HMdcList12GroupCells* lstIdent = 0) const
Int_tHMdcList12GroupCells::compareAndUnset(const HMdcList12GroupCells* lst, HMdcList12GroupCells* lstIdent, Int_t modi = -1)
virtual voidTObject::Copy(TObject& object) const
voidHMdcList12GroupCells::copyData(const UChar_t* a, const Int_t* fc)
Float_tD() const
virtual voidTObject::Delete(Option_t* option = "")MENU
voidHMdcList12GroupCells::delTime(Int_t lay, Int_t cell, UChar_t time)
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
voidfillErrMatClus(Bool_t isCoilOff, HSymMat4& errMatClus)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
static Bool_tHMdcList12GroupCells::findOverlap(Int_t& c1, Int_t& c2)
Int_tHMdcList12GroupCells::get4FirstCells(Int_t lay, Int_t* list) const
Int_tHMdcList12GroupCells::getActiveModule() const
Float_tgetAlphaM1() const
Float_tgetAlphaM2() const
const UChar_t*HMdcList12GroupCells::getArr() const
Float_tgetBParKickPl()
Int_tHMdcList12GroupCells::getCell(Int_t lay, Int_t idx) const
UChar_tgetClFnLevelM1() const
UChar_tgetClFnLevelM2() const
Short_tgetClusSizeM1() const
Short_tgetClusSizeM2() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Float_tgetErrX() const
Float_tgetErrXTarg() const
Float_tgetErrY() const
Float_tgetErrYTarg() const
Float_tgetErrZTarg() const
UChar_tgetFakeFlag() const
const Int_t*HMdcList12GroupCells::getFirstCell() const
Int_tHMdcList12GroupCells::getFirstCell(Int_t lay) const
virtual const char*TObject::GetIconName() const
Int_tgetIndexParent() const
voidgetIndexRegChilds(Int_t& first, Int_t& last) const
UChar_tgetIOSeg() const
Int_tHMdcList12GroupCells::getLastCell(Int_t lay) const
UChar_tHMdcList12GroupCells::getListLayers(Int_t imod = -1) const
Int_tHMdcList12GroupCells::getMaxNCellsPerLay() const
Int_tgetMinCl() const
UChar_tgetMinCl(Int_t mod) const
Short_tgetMod() const
virtual const char*TObject::GetName() const
Int_tgetNBins() const
Int_tHMdcList12GroupCells::getNCells() const
Int_tHMdcList12GroupCells::getNCells(Int_t lay, Int_t layEnd = -1) const
Int_tHMdcList12GroupCells::getNDrTimes() const
Int_tHMdcList12GroupCells::getNDrTimes(Int_t lay) const
Int_tHMdcList12GroupCells::getNDrTimes(Int_t lay1, Int_t lay2) const
Short_tgetNDrTimesM1() const
Short_tgetNDrTimesM2() const
Int_tHMdcList12GroupCells::getNDrTimesMod(Int_t m) const
Bool_tHMdcList12GroupCells::getNext(Int_t lay, Int_t& cell) const
Bool_tHMdcList12GroupCells::getNextCell(Int_t& lay, Int_t& cell) const
Int_tgetNextIndexChild(Int_t ind) const
Bool_tgetNextWire(HLocation& loc) const
Bool_tgetNextWire(Int_t& mod, Int_t& lay, Int_t& cell) const
Int_tHMdcList12GroupCells::getNLayers() const
Int_tHMdcList12GroupCells::getNLayers(Int_t imod) const
Int_tHMdcList12GroupCells::getNLayersMod(Int_t mod) const
Short_tgetNMergClust() const
Short_tgetNMergClustM1() const
Short_tgetNMergClustM2() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Short_tgetOwnIndex() const
Float_tgetPhi() const
voidgetPoint(HGeomVector& v) const
Float_tgetRatioM1() const
Float_tgetRatioM2() const
UChar_tgetRealLevel() const
UChar_tgetSec() const
Int_tgetSegIndex() const
voidgetShapeM1(Float_t& s1, Float_t& s2, Float_t& al) const
voidgetShapeM2(Float_t& s1, Float_t& s2, Float_t& al) const
Float_tgetSigma1M1() const
Float_tgetSigma1M2() const
Float_tgetSigma2M1() const
Float_tgetSigma2M2() const
Short_tgetStatus() const
Float_tgetSumWt() const
voidgetTarg(HGeomVector& v) const
Float_tgetTheta() const
UChar_tHMdcList12GroupCells::getTime(Int_t lay, Int_t cell) const
virtual const char*TObject::GetTitle() const
Int_tgetTypeClFinder() const
virtual UInt_tTObject::GetUniqueID() const
Float_tgetX() const
Float_tgetXTarg() const
Float_tgetY() const
Float_tgetYOnPrPlane(Float_t x, Float_t z) const
Float_tgetYTarg() const
Float_tgetZ() const
Float_tgetZOnPrPlane(Float_t x, Float_t y) const
Float_tgetZTarg() 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
Bool_tisFixedLevel() const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tisGeant() const
Bool_tHMdcList12GroupCells::isIncluded(const HMdcList12GroupCells& lst, Int_t l1 = 0, Int_t l2 = 11) const
Bool_tTObject::IsOnHeap() const
Bool_tisSegmentAmpCut() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
Int_tHMdcList12GroupCells::next(Int_t lay, Int_t prCell) const
Int_tHMdcList12GroupCells::next(Int_t lay, Int_t prCell, UChar_t& tm) const
Int_tHMdcList12GroupCells::nIdentDrTimes(const HMdcList12GroupCells* lst, Int_t l1 = 0, Int_t l2 = 11) 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)
HMdcClus&operator=(const HMdcClus&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
Int_tHMdcList12GroupCells::previous(Int_t lay, Int_t prCell) const
voidprint(Bool_t fl = kTRUE) const
virtual voidTObject::Print(Option_t* option = "") const
virtual voidprintCont(Bool_t fl) const
voidprintPos() 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)
voidsetClFnLevelM1(UChar_t lv)
voidsetClFnLevelM2(UChar_t lv)
voidsetClusSizeM1(Short_t clSz)
voidsetClusSizeM2(Short_t clSz)
voidsetDefValues()
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidsetErrTarg(const HGeomVector& v)
voidsetFakeFlag(UChar_t fl)
voidsetIndexChilds(Int_t l1, Int_t l2)
voidsetIndexParent(Int_t lp)
voidsetIOSeg(Int_t sg)
voidsetMinCl(Int_t m1or3, Int_t m2or4)
voidsetMod(Int_t m)
voidsetNBins(Int_t nBn)
voidsetNDrTimesM1(Short_t nDrTm)
voidsetNDrTimesM2(Short_t nDrTm)
voidsetNMergClust(Short_t nmrc)
voidsetNMergClustM1(Short_t nmrc)
voidsetNMergClustM2(Short_t nmrc)
static voidTObject::SetObjectStat(Bool_t stat)
voidsetOwnIndex(Int_t ind)
voidsetPrPlane(Float_t a, Float_t b, Float_t d)
voidsetRealLevel(UChar_t rl)
voidsetSec(Int_t sc)
voidsetSecSegInd(Int_t sc, Int_t sg, Int_t ind)
voidsetSegIndex(Int_t si)
voidsetShapeM1(Float_t s1, Float_t s2, Float_t al)
voidsetShapeM2(Float_t s1, Float_t s2, Float_t al)
voidsetStatus(Short_t st)
voidsetSumWt(Float_t swt)
voidsetTarg(const HGeomVector& v)
voidsetTarg(Float_t xl, Float_t yl, Float_t zl)
voidsetTarget(Float_t xl, Float_t ex, Float_t yl, Float_t ey, Float_t zl, Float_t ez)
Int_tHMdcList12GroupCells::setTime(Int_t lay, Int_t cell, UChar_t time)
voidsetTypeClFinder(Int_t type)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidsetXTarg(Float_t xl, Float_t err)
voidsetXY(Float_t xl, Float_t errx, Float_t yl, Float_t erry)
voidsetYTarg(Float_t yl, Float_t err)
voidsetZTarg(Float_t zl, 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 HMdcList12GroupCells::[unnamed] { laySz
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Float_talphaM1angle (deg.) of long axis and X axis
Float_talphaM2angle (deg.) of long axis and X axis
UChar_tclFnLevelM1level of cluster finder in mod.1
UChar_tclFnLevelM2level of cluster finder in mod.2
Short_tclusSizeM1number of bins in mod.1 cluster
Short_tclusSizeM2Num. of bins in mod.2 cluster
Float_terrXError of x-coordinate of cluster
Float_terrXTargError of xTarg(Mdc1-2) or point on kickplane (Mdc3-4)
Float_terrYError of y-coordinate of cluster
Float_terrYTargError of yTarg(Mdc1-2) or point on kickplane (Mdc3-4)
Float_terrZTargError of zTarg(Mdc1-2) or point on kickplane (Mdc3-4)
UChar_tfakeFlagFlag of fake suppression code
Int_tindCh1indexes region of childs in catMdcClus (def.: = -1)
Int_tindCh2(def.: = -2)
Int_tindex>=0 - OWN index in clus.cat
Int_tindexParindex of parent cluster in catMdcClus (def.: =-1)
UChar_tminCl1minCl1 mdc 1or3, minCl2 mdc 2or4 (depending on seg.)
UChar_tminCl2clusters with bin content >= maxCl were searched
Short_tmod=-1 if typeClFinder=0
Int_tnBinsNum. of bins in cluster
Short_tnDrTimesM1number of drift times in cluster
Short_tnDrTimesM2number of drift times in cluster
Short_tnMergClusM1number of merged clusters
Short_tnMergClusM2number of merged clusters
Short_tnMergedClusNumber of merged clusters
Float_tparAProject plane: parA*x+parB*y+z=parD
Float_tparB
Float_tparD
UChar_trealLevelreal level of cluster finder for this cluster
UChar_tsec
UChar_tseg
Int_tsegIndexindex of HMdcSeg object
Float_tsigma1M1cluster shape mod.1:
Float_tsigma1M2cluster shape mod.2:
Float_tsigma2M1sigma1 - long axis, sigma2 - short axis
Float_tsigma2M2sigma1 - long axis, sigma2 - short axis
Short_tstatususer var.
Float_tsumWtSum. of bins' weights in cluster
Int_ttypeClFinder=0 - finding in all mdc in sec.
Float_txx-coordinate of cluster
Float_txTargx-target(Mdc1-2) or point on kick plane (Mdc3-4)
Float_tyy-coordinate of cluster
Float_tyTargy-target(Mdc1-2) or point on kick plane (Mdc3-4)
Float_tzTargz-target(Mdc1-2) or point on kick plane (Mdc3-4)

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void clear(void)
void setDefValues(void)
void print(Bool_t fl = kTRUE) const
void printPos(void)
void printCont(Bool_t fl) const
void calcIntersection(const HGeomVector &r, const HGeomVector &dir, HGeomVector &out)
 Calculating of a cross of line r,dir (point and direction)
 with project plane parA*x+parB*y+z=parD
void calcIntersection(const HGeomVector& p1, const HGeomVector& p2, Float_t& x, Float_t& y) const
 Calculating of a cross of line p1 -> p2 (two points on the line)
 with project plane parA*x+parB*y+z=parD
void calcIntersection(const HGeomVector &p, Float_t& x, Float_t& y)
 Calculating of a cross of line target -> p (two points on the line)
 with project plane parA*x+parB*y+z=parD
void fillErrMatClus(Bool_t isCoilOff, HSymMat4& errMatClus)
Bool_t getNextWire(Int_t& mod, Int_t& lay, Int_t& cell) const
Bool_t getNextWire(HLocation& loc) const
void Streamer(TBuffer& b)
 Stream an object of class HMdcClus.
HMdcClus(void)
{setDefValues();}
HMdcClus(HMdcList12GroupCells& lcells)
{setDefValues();}
~HMdcClus(void)
{}
Bool_t isGeant(void)
{return kFALSE;}
void clearMod1Par(void)
void clearMod2Par(void)
void setSec(Int_t sc)
{sec=sc;}
void setMod(Int_t m)
{mod=m;}
void setIOSeg(Int_t sg)
{seg=sg;}
void setOwnIndex(Int_t ind)
{index=ind;}
void setSecSegInd(Int_t sc, Int_t sg, Int_t ind)
{sec=sc; seg=sg; index=ind;}
void setMinCl(Int_t m1or3, Int_t m2or4)
{minCl1=m1or3; minCl2=m2or4;}
void setSumWt(Float_t swt)
{sumWt=swt;}
void setRealLevel(UChar_t rl)
{realLevel=rl;}
void setNBins(Int_t nBn)
{nBins=nBn;}
void setIndexParent(Int_t lp)
{indexPar=lp;}
void setIndexChilds(Int_t l1, Int_t l2)
{indCh1=l1; indCh2=l2;}
void setTypeClFinder(Int_t type)
{typeClFinder=type;}
void setNMergClust(Short_t nmrc)
{nMergedClus=nmrc;}
void setXY(Float_t xl, Float_t errx, Float_t yl, Float_t erry)
{x=xl; errX=errx; y=yl; errY=erry;}
void setXTarg(Float_t xl, Float_t err)
{xTarg=xl; errXTarg=err;}
void setYTarg(Float_t yl, Float_t err)
{yTarg=yl; errYTarg=err;}
void setZTarg(Float_t zl, Float_t err)
{zTarg=zl; errZTarg=err;}
void setTarg(Float_t xl, Float_t yl, Float_t zl)
{xTarg=xl; yTarg=yl; zTarg=zl;}
void setTarg(const HGeomVector& v)
void setErrTarg(const HGeomVector& v)
void setTarget(Float_t xl, Float_t ex, Float_t yl, Float_t ey, Float_t zl, Float_t ez)
void setPrPlane(Float_t a, Float_t b, Float_t d)
{clFnLevelM1=lv;}
void setClusSizeM1(Short_t clSz)
{clusSizeM1=clSz;}
void setNDrTimesM1(Short_t nDrTm)
{nDrTimesM1=nDrTm;}
void setNMergClustM1(Short_t nmrc)
{nMergClusM1=nmrc;}
void setShapeM1(Float_t s1, Float_t s2, Float_t al)
{clFnLevelM2=lv;}
void setClusSizeM2(Short_t clSz)
{clusSizeM2=clSz;}
void setNDrTimesM2(Short_t nDrTm)
{nDrTimesM2=nDrTm;}
void setNMergClustM2(Short_t nmrc)
{nMergClusM2=nmrc;}
void setShapeM2(Float_t s1, Float_t s2, Float_t al)
{segIndex = si;}
void setFakeFlag(UChar_t fl)
{fakeFlag = fl;}
Short_t getMod(void)
{return mod;}
Int_t getTypeClFinder(void)
{return typeClFinder&127;}
UChar_t getSec(void)
{return sec;}
UChar_t getIOSeg(void)
{return seg;}
Short_t getOwnIndex(void)
{return index;}
Int_t getMinCl(Int_t mod) const
{return Int_t(minCl1+minCl2);}
UChar_t getMinCl(Int_t mod) const
{return (mod&1)==0 ? minCl1:minCl2;}
UChar_t getRealLevel(void)
{return realLevel;}
Float_t getX(void)
{return x;}
Float_t getY(void)
{return y;}
Float_t getZ(void)
{return parD-parA*x-parB*y;}
Float_t getXTarg(void)
{return xTarg;}
Float_t getYTarg(void)
{return yTarg;}
Float_t getZTarg(void)
{return zTarg;}
Float_t getErrX(void)
{return errX;}
Float_t getErrY(void)
{return errY;}
Float_t getErrXTarg(void)
{return errXTarg;}
Float_t getErrYTarg(void)
{return errYTarg;}
Float_t getErrZTarg(void)
{return errZTarg;}
Float_t getTheta(void)
Float_t getPhi(void)
Float_t getSumWt(void)
{return sumWt;}
Int_t getNBins(void)
{return nBins;}
void getPoint(HGeomVector& v) const
{v.setXYZ(x,y,parD-parA*x-parB*y);}
void getTarg(HGeomVector& v) const
{v.setXYZ(xTarg,yTarg,zTarg);}
Int_t getIndexParent(void)
{return indexPar;}
void getIndexRegChilds(Int_t& first, Int_t& last) const
{first=indCh1; last=indCh2;}
Int_t getNextIndexChild(Int_t ind) const
using: ind=-1;ind=getNextIndexChild(ind)
Short_t getNMergClust(void)
{return nMergedClus;}
Float_t A(void)
{return parA;}
Float_t B(void)
{return parB;}
Float_t C(void)
{return 1.;}
Float_t D(void)
{return parD;}
Float_t getZOnPrPlane(Float_t x, Float_t y) const
{return parD-parA*x-parB*y;}
Float_t getYOnPrPlane(Float_t x, Float_t z) const
Short_t getClusSizeM1(void)
{return clusSizeM1;}
Short_t getNDrTimesM1(void)
{return nDrTimesM1;}
Short_t getNMergClustM1(void)
{return nMergClusM1;}
void getShapeM1(Float_t& s1, Float_t& s2, Float_t& al) const
{return clFnLevelM1;}
Float_t getAlphaM1(void)
{return alphaM1;}
Float_t getSigma1M1(void)
{return sigma1M1;}
Float_t getSigma2M1(void)
{return sigma2M1;}
Float_t getRatioM1(void)
UChar_t getClFnLevelM2(void)
{return clFnLevelM2;}
Short_t getClusSizeM2(void)
{return clusSizeM2;}
Short_t getNDrTimesM2(void)
{return nDrTimesM2;}
Short_t getNMergClustM2(void)
{return nMergClusM2;}
void getShapeM2(Float_t& s1, Float_t& s2, Float_t& al) const
{return alphaM2;}
Float_t getSigma1M2(void)
{return sigma1M2;}
Float_t getSigma2M2(void)
{return sigma2M2;}
Float_t getRatioM2(void)
Int_t getSegIndex(void)
{return segIndex;}
UChar_t getFakeFlag(void)
{return fakeFlag;}
void setStatus(Short_t st)
{status=st;}
Short_t getStatus(void)
{return status;}
Float_t getBParKickPl(void)
Bool_t isFixedLevel(void)
{return (typeClFinder&128)==0;}
Bool_t isSegmentAmpCut(void)
{return (typeClFinder&256)!=0;}

Last change: Sat May 22 13:01:00 2010
Last generated: 2010-05-22 13:01

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.