class HMdcClusSim: public HMdcClus

_HADES_CLASS_DESCRIPTION

 HMdcClusSim

 Data object for Mdc cluster.

  Int_t getTrackIndex(Int_t tr) - return geant track "tr" index
      in listTr[5] array or -1 if there no track "tr" in the array.

 Int_t getNTracks() - num. of tracks which have hits in cluster
      (5 tracks maximum) (noise don't increase tracks counter)

 Int_t getTrack(Int_t indx) - return track number.
      indx= 0, ..., (getNTracks()-1).
      List of tracks is sorted: first track (indx=0)
      have most number of hits, ...
      Track_number==-9 - wires produced due to geant bug
      Track_number==gHades->getEmbeddingRealTrackId() -
          real track embeded in simulation.

 Int_t getNoiseIndex(void) - return index of noise wires inf.
      if index < 0 - no noise in cluster.
      Track number for noise wires =-99
      Example:
      Int_t ind = clus->getNoiseIndex();
      if(ind>0) {
        clus->getTrack(ind);         // will return -99
        clus->getNTimesInTrack(ind); // number of noise wires

      }

 Short_t getNTimesInTrack(Int_t indx) - num. of hits
      in cluster from track getTrack(indx)

 Int_t getNLayersInTrack(Int_t indx, Int_t m=-1) num. layers
      with hits from track getTrack(indx):
      m=0 - in first module of segment,
      m=1 - in second module of segment,
      m!=0 && m!=1 - in segment

 Number of noise wires is kept in nTimes[4]:
      if listTracks[4]=-99 then nTimes[4] - number of noised wires


 Meaning of trackStatus[tr] bits:

  Bit 8: =0 - GEANT bug was found in this track
  Bit 7: =0 - track don't reach META
  Bit 6: =0 - not reconstructable track. It can be if
              track not present in mdc,
              track cross more then one sector,
              numder of segments <1 or >2,
              upstream direction of at list one segment,
              track doesn't cross inner or outer segment,
              num. of segments with digi.wires <1 or >2,
              num.digi.wires in track < 5*num.segments,
              at list one seg. has <3 layers or <5 wires
  Bit 5: =0 - segment has <3 layers or <5 digi.wires
  Bit 4: =0 - at list one mdc in segment has
              <3 fired layers or <5 wires
  Bit 3: =0 - segment can't be found due to high level
              of cluster finder
  Bit 2: =0 - fake contribution in cluster
  Bit 1: =0 - fake inner-outer segments matching
              (for outer segment only!)


Function Members (Methods)

public:
HMdcClusSim()
HMdcClusSim(HMdcList12GroupCells& lcells)
HMdcClusSim(const HMdcClusSim&)
virtual~HMdcClusSim()
Float_tHMdcClus::A() const
voidTObject::AbstractMethod(const char* method) const
Int_tHMdcList12GroupCells::add(HMdcList12GroupCells* lst)
Int_taddTrack(Int_t tr, Short_t nTm, UChar_t lM1, UChar_t lM2)
virtual voidTObject::AppendPad(Option_t* option = "")
Float_tHMdcClus::B() const
virtual voidTObject::Browse(TBrowser* b)
Float_tHMdcClus::C() const
voidHMdcClus::calcIntersection(const HGeomVector& r, const HGeomVector& dir, HGeomVector& out) const
voidHMdcClus::calcIntersection(const HGeomVector& p, Float_t& x, Float_t& y) const
voidHMdcClus::calcIntersection(const HGeomVector& p1, const HGeomVector& p2, Float_t& x, Float_t& y) const
voidcalcTrList()
voidcalcTrListMod(HMdcList12GroupCells& list, Int_t m)
static TClass*Class()
virtual const char*TObject::ClassName() const
voidcleanRest()
voidclear()
virtual voidTObject::Clear(Option_t* = "")
voidHMdcClus::clearMod1Par()
voidHMdcClus::clearMod2Par()
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_tHMdcClus::D() 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
Float_tdX(Int_t i) const
Float_tdY(Int_t i) const
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
voidHMdcClus::fillErrMatClus(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_tHMdcClus::getAlphaM1() const
Float_tHMdcClus::getAlphaM2() const
const UChar_t*HMdcList12GroupCells::getArr() const
Int_tgetArrsSize() const
Float_tHMdcClus::getBParKickPl()
Int_tHMdcList12GroupCells::getCell(Int_t lay, Int_t idx) const
UChar_tHMdcClus::getClFnLevelM1() const
UChar_tHMdcClus::getClFnLevelM2() const
Short_tHMdcClus::getClusSizeM1() const
Short_tHMdcClus::getClusSizeM2() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Float_tHMdcClus::getErrX() const
Float_tHMdcClus::getErrXTarg() const
Float_tHMdcClus::getErrY() const
Float_tHMdcClus::getErrYTarg() const
Float_tHMdcClus::getErrZTarg() const
UChar_tHMdcClus::getFakeFlag() const
const Int_t*HMdcList12GroupCells::getFirstCell() const
Int_tHMdcList12GroupCells::getFirstCell(Int_t lay) const
virtual const char*TObject::GetIconName() const
Int_tHMdcClus::getIndexParent() const
voidHMdcClus::getIndexRegChilds(Int_t& first, Int_t& last) const
UChar_tHMdcClus::getIOSeg() const
Char_tgetIOSegMatchingStatus() const
Int_tHMdcList12GroupCells::getLastCell(Int_t lay) const
UChar_tgetLayListForMod(Int_t indx, Int_t mi) const
UChar_tHMdcList12GroupCells::getListLayers(Int_t imod = -1) const
const Int_t*getListTrM(Int_t m) const
Int_tHMdcList12GroupCells::getMaxNCellsPerLay() const
Int_tHMdcClus::getMinCl() const
UChar_tHMdcClus::getMinCl(Int_t mod) const
Short_tHMdcClus::getMod() const
virtual const char*TObject::GetName() const
Int_tHMdcClus::getNBins() const
Int_tHMdcList12GroupCells::getNCells() const
Int_tHMdcList12GroupCells::getNCells(Int_t lay, Int_t layEnd = -1) const
UChar_tgetNDigiTimesInTrack(Int_t indx) const
Int_tHMdcList12GroupCells::getNDrTimes() const
Int_tHMdcList12GroupCells::getNDrTimes(Int_t lay) const
Int_tHMdcList12GroupCells::getNDrTimes(Int_t lay1, Int_t lay2) const
Short_tHMdcClus::getNDrTimesM1() const
Short_tHMdcClus::getNDrTimesM2() 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_tHMdcClus::getNextIndexChild(Int_t ind) const
Bool_tHMdcClus::getNextWire(HLocation& loc) const
Bool_tHMdcClus::getNextWire(Int_t& mod, Int_t& lay, Int_t& cell) const
Int_tHMdcList12GroupCells::getNLayers() const
Int_tHMdcList12GroupCells::getNLayers(Int_t imod) const
Int_tgetNLayersInTrack(Int_t indx, Int_t m = -1) const
Int_tHMdcList12GroupCells::getNLayersMod(Int_t mod) const
UChar_tgetNLayOrientation(Int_t indx, Int_t mi = -1) const
Int_tgetNMatchedTracks() const
Short_tHMdcClus::getNMergClust() const
Short_tHMdcClus::getNMergClustM1() const
Short_tHMdcClus::getNMergClustM2() const
Int_tgetNNotFakeTracks() const
Int_tgetNoiseIndex() const
Short_tgetNTimesInMod(Int_t m, Int_t indx) const
Short_tgetNTimesInTrack(Int_t indx) const
const Short_t*getNTimesM(Int_t m) const
Int_tgetNTracks() const
Int_tgetNTracksMod(Int_t m) const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Short_tHMdcClus::getOwnIndex() const
Float_tHMdcClus::getPhi() const
voidHMdcClus::getPoint(HGeomVector& v) const
Float_tHMdcClus::getRatioM1() const
Float_tHMdcClus::getRatioM2() const
UChar_tHMdcClus::getRealLevel() const
UChar_tHMdcClus::getSec() const
Int_tHMdcClus::getSegIndex() const
voidHMdcClus::getShapeM1(Float_t& s1, Float_t& s2, Float_t& al) const
voidHMdcClus::getShapeM2(Float_t& s1, Float_t& s2, Float_t& al) const
Float_tHMdcClus::getSigma1M1() const
Float_tHMdcClus::getSigma1M2() const
Float_tHMdcClus::getSigma2M1() const
Float_tHMdcClus::getSigma2M2() const
Short_tHMdcClus::getStatus() const
Float_tHMdcClus::getSumWt() const
voidHMdcClus::getTarg(HGeomVector& v) const
Float_tHMdcClus::getTheta() const
UChar_tHMdcList12GroupCells::getTime(Int_t lay, Int_t cell) const
virtual const char*TObject::GetTitle() const
Int_tgetTrack(Int_t indx) const
Int_tgetTrackIndex(Int_t tr) const
Int_tgetTrackMod(Int_t m, Int_t indx) const
UChar_tgetTrackStatus(Int_t ind) const
Int_tHMdcClus::getTypeClFinder() const
virtual UInt_tTObject::GetUniqueID() const
Float_tHMdcClus::getX() const
Float_tgetXGeant(Int_t i) const
Float_tHMdcClus::getXTarg() const
Bool_tgetXYGeant(Int_t i, Float_t& xg, Float_t& yg) const
Float_tHMdcClus::getY() const
Float_tgetYGeant(Int_t i) const
Float_tHMdcClus::getYOnPrPlane(Float_t x, Float_t z) const
Float_tHMdcClus::getYTarg() const
Float_tHMdcClus::getZ() const
Float_tHMdcClus::getZOnPrPlane(Float_t x, Float_t y) const
Float_tHMdcClus::getZTarg() 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)
Bool_tis1or2HitsNotRec(Int_t i) const
Bool_tis40degCross(Int_t indx, Int_t mi = -1) const
virtual TClass*IsA() const
Bool_tisClFnLevelTooHigh(Int_t i) const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
Bool_tisFakeContribution(Int_t i) const
Bool_tHMdcClus::isFixedLevel() const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tisGeant() const
Bool_tisGEANTBug(Int_t i) const
Bool_tisGntTrackOk(Int_t i) const
Bool_tHMdcList12GroupCells::isIncluded(const HMdcList12GroupCells& lst, Int_t l1 = 0, Int_t l2 = 11) const
Bool_tisIOSegMatch(Int_t i) const
Bool_tisNoMeta(Int_t i) const
Bool_tTObject::IsOnHeap() const
Bool_tHMdcClus::isSegmentAmpCut() const
Bool_tisSegNotRec(Int_t i) const
virtual Bool_tTObject::IsSortable() const
Bool_tisTrackNotRec(Int_t i) 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
Bool_tnoIOSegMatch(Int_t i) 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)
HMdcClusSim&operator=(const HMdcClusSim&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
Int_tHMdcList12GroupCells::previous(Int_t lay, Int_t prCell) const
voidHMdcClus::print(Bool_t fl = kTRUE) const
virtual voidTObject::Print(Option_t* option = "") const
virtual voidprintCont(Bool_t fl = kTRUE) const
voidHMdcClus::printPos() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
Bool_tresetTrack(Int_t ind, Int_t tr, Short_t nTm, UChar_t lM1, UChar_t lM2)
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)
voidHMdcClus::setClFnLevelM1(UChar_t lv)
voidHMdcClus::setClFnLevelM2(UChar_t lv)
voidHMdcClus::setClusSizeM1(Short_t clSz)
voidHMdcClus::setClusSizeM2(Short_t clSz)
voidsetDef()
voidHMdcClus::setDefValues()
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidHMdcClus::setErrTarg(const HGeomVector& v)
voidHMdcClus::setFakeFlag(UChar_t fl)
voidHMdcClus::setIndexChilds(Int_t l1, Int_t l2)
voidHMdcClus::setIndexParent(Int_t lp)
voidHMdcClus::setIOSeg(Int_t sg)
voidHMdcClus::setMinCl(Int_t m1or3, Int_t m2or4)
voidHMdcClus::setMod(Int_t m)
voidHMdcClus::setNBins(Int_t nBn)
voidsetNDigiTimes(Int_t ind, Int_t nt)
voidHMdcClus::setNDrTimesM1(Short_t nDrTm)
voidHMdcClus::setNDrTimesM2(Short_t nDrTm)
voidHMdcClus::setNMergClust(Short_t nmrc)
voidHMdcClus::setNMergClustM1(Short_t nmrc)
voidHMdcClus::setNMergClustM2(Short_t nmrc)
voidsetNTracks(Int_t nTrs)
voidsetNTracksM(Int_t modi, Int_t nTrs)
static voidTObject::SetObjectStat(Bool_t stat)
voidHMdcClus::setOwnIndex(Int_t ind)
voidHMdcClus::setPrPlane(Float_t a, Float_t b, Float_t d)
voidHMdcClus::setRealLevel(UChar_t rl)
voidHMdcClus::setSec(Int_t sc)
voidHMdcClus::setSecSegInd(Int_t sc, Int_t sg, Int_t ind)
voidHMdcClus::setSegIndex(Int_t si)
voidHMdcClus::setShapeM1(Float_t s1, Float_t s2, Float_t al)
voidHMdcClus::setShapeM2(Float_t s1, Float_t s2, Float_t al)
voidHMdcClus::setStatus(Short_t st)
voidHMdcClus::setSumWt(Float_t swt)
voidHMdcClus::setTarg(const HGeomVector& v)
voidHMdcClus::setTarg(Float_t xl, Float_t yl, Float_t zl)
voidHMdcClus::setTarget(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)
voidsetTrackM(Int_t modi, Int_t ind, Int_t tr, Short_t nTm)
voidsetTrackStatus(Int_t ind, UChar_t status)
voidHMdcClus::setTypeClFinder(Int_t type)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidHMdcClus::setXTarg(Float_t xl, Float_t err)
voidHMdcClus::setXY(Float_t xl, Float_t errx, Float_t yl, Float_t erry)
voidsetXYGeant(Int_t ind, Float_t xg, Float_t yg)
voidHMdcClus::setYTarg(Float_t yl, Float_t err)
voidHMdcClus::setZTarg(Float_t zl, Float_t err)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
voidsortTrListByContr()
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()
private:
voidexchangeTrPos(Int_t t1, Int_t t2)
Bool_tindOk(Int_t i) const
voidsetDefForOldVer(Int_t ind)
Bool_ttestBit(Int_t i, UChar_t b) const
UChar_ttrackBits(Int_t i) const

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_tHMdcClus::alphaM1angle (deg.) of long axis and X axis
Float_tHMdcClus::alphaM2angle (deg.) of long axis and X axis
UChar_tHMdcClus::clFnLevelM1level of cluster finder in mod.1
UChar_tHMdcClus::clFnLevelM2level of cluster finder in mod.2
Short_tHMdcClus::clusSizeM1number of bins in mod.1 cluster
Short_tHMdcClus::clusSizeM2Num. of bins in mod.2 cluster
Float_tHMdcClus::errXError of x-coordinate of cluster
Float_tHMdcClus::errXTargError of xTarg(Mdc1-2) or point on kickplane (Mdc3-4)
Float_tHMdcClus::errYError of y-coordinate of cluster
Float_tHMdcClus::errYTargError of yTarg(Mdc1-2) or point on kickplane (Mdc3-4)
Float_tHMdcClus::errZTargError of zTarg(Mdc1-2) or point on kickplane (Mdc3-4)
UChar_tHMdcClus::fakeFlagFlag of fake suppression code
Int_tHMdcClus::indCh1indexes region of childs in catMdcClus (def.: = -1)
Int_tHMdcClus::indCh2(def.: = -2)
Int_tHMdcClus::index>=0 - OWN index in clus.cat
Int_tHMdcClus::indexParindex of parent cluster in catMdcClus (def.: =-1)
Char_tioSMatchStatus> 0 - num. of not fake tracks with IOseg matching
Int_tlistTr[5]list of tracks
Int_tlistTrM[2][5]! list of tracks
UChar_tHMdcClus::minCl1minCl1 mdc 1or3, minCl2 mdc 2or4 (depending on seg.)
UChar_tHMdcClus::minCl2clusters with bin content >= maxCl were searched
Short_tHMdcClus::mod=-1 if typeClFinder=0
Int_tHMdcClus::nBinsNum. of bins in cluster
UChar_tnDigiTimes[5]num. of digitized dr.times in segment (or module)
Short_tHMdcClus::nDrTimesM1number of drift times in cluster
Short_tHMdcClus::nDrTimesM2number of drift times in cluster
UChar_tnLayers[5][2]list of layers with hits from track (bits array)
Short_tHMdcClus::nMergClusM1number of merged clusters
Short_tHMdcClus::nMergClusM2number of merged clusters
Short_tHMdcClus::nMergedClusNumber of merged clusters
Char_tnNotFakeTracksNumber of tracks with non fake contribution
Short_tnTimes[5]num. of hits in cluster from track
Short_tnTimesM[2][5]! num. of hits in cluster from track
Int_tnTracksnum. of GEANT tracks in cluster
Int_tnTracksM[2]! [mod] num. of GEANT tracks in cluster
Float_tHMdcClus::parAProject plane: parA*x+parB*y+z=parD
Float_tHMdcClus::parB
Float_tHMdcClus::parD
UChar_tHMdcClus::realLevelreal level of cluster finder for this cluster
UChar_tHMdcClus::sec
UChar_tHMdcClus::seg
Int_tHMdcClus::segIndexindex of HMdcSeg object
Float_tHMdcClus::sigma1M1cluster shape mod.1:
Float_tHMdcClus::sigma1M2cluster shape mod.2:
Float_tHMdcClus::sigma2M1sigma1 - long axis, sigma2 - short axis
Float_tHMdcClus::sigma2M2sigma1 - long axis, sigma2 - short axis
Short_tHMdcClus::statususer var.
Float_tHMdcClus::sumWtSum. of bins' weights in cluster
UChar_ttrackStatus[5]
Int_tHMdcClus::typeClFinder=0 - finding in all mdc in sec.
Float_tHMdcClus::xx-coordinate of cluster
Float_txGeant[5]GEANT hit position on the proj.plane
Float_tHMdcClus::xTargx-target(Mdc1-2) or point on kick plane (Mdc3-4)
Float_tHMdcClus::yy-coordinate of cluster
Float_tyGeant[5]GEANT hit position on the proj.plane
Float_tHMdcClus::yTargy-target(Mdc1-2) or point on kick plane (Mdc3-4)
Float_tHMdcClus::zTargz-target(Mdc1-2) or point on kick plane (Mdc3-4)

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void setDef(void)
void cleanRest(void)
Bool_t resetTrack(Int_t ind, Int_t tr, Short_t nTm, UChar_t lM1, UChar_t lM2)
 reset geant track;
Int_t addTrack(Int_t tr, Short_t nTm, UChar_t lM1, UChar_t lM2)
 add geant track. Return index of track in array
void setNDigiTimes(Int_t ind, Int_t nt)
void setXYGeant(Int_t ind, Float_t xg, Float_t yg)
void setTrackStatus(Int_t ind, UChar_t status)
UChar_t getTrackStatus(Int_t ind) const
void setNTracksM(Int_t modi, Int_t nTrs)
void setTrackM(Int_t modi, Int_t ind, Int_t tr, Short_t nTm)
Int_t getNoiseIndex(void)
Int_t getTrackIndex(Int_t tr) const
Int_t getTrackMod(Int_t m, Int_t indx) const
Short_t getNTimesInMod(Int_t m, Int_t indx) const
Int_t getTrack(Int_t indx) const
Short_t getNTimesInTrack(Int_t indx) const
void calcTrList(void)
void calcTrListMod(HMdcList12GroupCells& list, Int_t m)
Int_t getNLayersInTrack(Int_t indx, Int_t m = -1) const
UChar_t getLayListForMod(Int_t indx, Int_t mi) const
UChar_t getNLayOrientation(Int_t indx, Int_t mi = -1) const
Bool_t is40degCross(Int_t indx, Int_t mi = -1) const
 return kTRUE if exist at list one wire pair with
 40deg. or more angle between.
UChar_t getNDigiTimesInTrack(Int_t indx) const
Bool_t getXYGeant(Int_t i, Float_t& xg, Float_t& yg) const
void sortTrListByContr(void)
 Sorting track list "listTr" by "FakeContribution" flag.
 After sorting tracks with not FakeContribution status
 will be placed at the begining of arrais.
Int_t getNMatchedTracks(void)
 Can be used after sortTrListByContr() only!
void exchangeTrPos(Int_t t1, Int_t t2)
void printCont(Bool_t fl = kTRUE) const
void Streamer(TBuffer& b)
 Stream an object of class HMdcClusSim.
void setDefForOldVer(Int_t ind)
HMdcClusSim(void)
{setDef();}
HMdcClusSim(HMdcList12GroupCells& lcells)
{setDef();}
~HMdcClusSim()
{}
void setNTracks(Int_t nTrs)
{nTracks = nTrs; cleanRest();}
void clear(void)
{setDef(); HMdcClus::clear();}
Bool_t isGeant(void)
{return kTRUE;}
Int_t getArrsSize(void)
{return 5;}
Int_t getNTracks(void)
{return nTracks;}
Int_t getNNotFakeTracks(void)
{return nNotFakeTracks;}
Int_t getNTracksMod(Int_t m) const
{return nTracksM[m&1];}
const Int_t* getListTrM(Int_t m) const
{return listTrM[m&1];}
const Short_t* getNTimesM(Int_t m) const
{return nTimesM[m&1];}
Float_t getXGeant(Int_t i) const
Float_t getYGeant(Int_t i) const
Float_t dX(Int_t i) const
Float_t dY(Int_t i) const
Bool_t isGntTrackOk(Int_t i) const
{return testBit(i,255);}
Bool_t isIOSegMatch(Int_t i) const
{return testBit(i,1);}
Bool_t noIOSegMatch(Int_t i) const
{return !testBit(i,1);}
Bool_t isFakeContribution(Int_t i) const
{return !testBit(i,2);}
Bool_t isClFnLevelTooHigh(Int_t i) const
{return !testBit(i,4);}
Bool_t is1or2HitsNotRec(Int_t i) const
{return !testBit(i,8);}
Bool_t isSegNotRec(Int_t i) const
{return !testBit(i,16);}
Bool_t isTrackNotRec(Int_t i) const
{return !testBit(i,32);}
Bool_t isNoMeta(Int_t i) const
{return !testBit(i,64);}
Bool_t isGEANTBug(Int_t i) const
{return !testBit(i,128);}
Char_t getIOSegMatchingStatus(void)
{return ioSMatchStatus;}
Bool_t indOk(Int_t i) const
{return i>=0 && i<nTracks;}
UChar_t trackBits(Int_t i) const
{return indOk(i) ? trackStatus[i]:0;}
Bool_t testBit(Int_t i, UChar_t b) const
{return (trackBits(i)&b) == b;}

Last change: Sat May 22 13:01:07 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.