class HMdcFunc1: public TObject

Function Members (Methods)

public:
HMdcFunc1()
HMdcFunc1(const HMdcFunc1&)
virtual~HMdcFunc1()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Int_tcalculateBin(Float_t mdc_angle, Int_t option)
Int_tcalculateLevelBin(Int_t level)
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
Int_tcorect_cls(Int_t cls, Int_t the_bin, Int_t phi, Int_t level)
Int_tcorect_nwires(Int_t nwires, Int_t the_bin, Int_t phi, Int_t level)
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
HCategory*getClusInfCat()
HMdcClusInf*getClusInfObj(Int_t clsindex)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Int_tgetGeantCommonTrack(HPidParticleSim* part)
HCategory*getGeantKineCat()
HCategory*getGeantMdcCat()
HCategory*getGeantRichMirrorCat()
HCategory*getGeantShowCat()
HCategory*getGeantTofCat()
virtual const char*TObject::GetIconName() const
Int_tgetIntCharge(HPidParticle* part)
HGeantKine*getKineObj(Int_t pTrack)
Int_tgetMdcClsSize(HMdcHit* hit)
Int_tgetMdcClsSize(HPidParticle* part, Int_t module)
Int_tgetMdcClsSize(HMdcSeg* seg, Int_t module)
HMdcHit*getMdcHit(HMdcSeg* seg, Int_t module)
HCategory*getMdcHitCat()
Int_tgetMdcLevelCls(HMdcHit* hit)
Int_tgetMdcLevelCls(HPidParticle* part, Int_t module)
Int_tgetMdcLevelCls(HMdcSeg* seg, Int_t module)
Int_tgetMdcNWires(HMdcHit* hit)
Int_tgetMdcNWires(HPidParticle* part, Int_t module)
Int_tgetMdcNWires(HMdcSeg* seg, Int_t module)
HCategory*getMdcSegCat()
HMdcSeg*getMdcSegFromPidTrackCand(HPidTrackCand* cand)
virtual const char*TObject::GetName() const
Float_tgetNormalMdcPhi(Int_t iSector, Float_t fPhiMdc)
Float_tgetNormalMdcTheta(Float_t fThetaMdc)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Float_tgetPairInvMass(HGeantKine* kine1, HGeantKine* kine2)
Float_tgetPairOpenAngle(HGeantKine* kine1, HGeantKine* kine2)
Int_tgetPairTrack(Int_t track1)
HGeantKine*getPairTrack(HGeantKine* kine1)
HPidTrackCand*getPidTrackCand(HPidParticle* part)
HCategory*getRichHitCat()
HRichHit*getRichHitFromPidTrackCand(HPidTrackCand* cand)
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
Bool_tinitCategoryPointers()
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tisCompt(HGeantKine* kine)
Bool_tisConv(HGeantKine* kine)
Bool_tisDouble(HMdcSegSim* seg, Int_t conv_mode = 0)
Bool_tisDouble(HMdcHitSim* hit, Int_t conv_mode = 0)
virtual Bool_tTObject::IsEqual(const TObject* obj) const
Bool_tisEtaDalitz(HGeantKine* kine)
virtual Bool_tTObject::IsFolder() const
Bool_tisHadesAccepted(Int_t tr)
Bool_tisInArray(Int_t cls, TArrayI* arr)
Bool_tisInGeantMdc(Int_t tr)
Bool_tisInGeantRichMirror(Int_t tr)
Bool_tisInGeantShower(Int_t tr)
Bool_tisInGeantTof(Int_t tr)
Bool_tisLepton(HGeantKine* kine)
Bool_tisMdcSegInGeant(HMdcSegSim* seg, Int_t track)
Bool_tTObject::IsOnHeap() const
Bool_tisPi0Conv(HGeantKine* kine)
Bool_tisPi0Dalitz(HGeantKine* kine)
Bool_tisSingle(HMdcSegSim* seg)
Bool_tisSingle(HMdcHitSim* hit)
Int_tisSingleDouble(HMdcSegSim* seg, Int_t track, Int_t conv_mode = 0)
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)
HMdcFunc1&operator=(const HMdcFunc1&)
virtual voidTObject::Paint(Option_t* option = "")
Bool_tpassCprPdfCuts(HPidDilepton* pDil, Float_t prob, const Char_t* name_of_pdf_file, Int_t mode_rs = 0, Option_t* rej_condition = "OR")
Bool_tpassCprPdfCuts(HPidParticle* pPart, Float_t prob, const Char_t* name_of_pdf_file, Int_t mode_rs = 0, Option_t* rej_condition = "OR")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
voidputInArray(Int_t cls, TArrayI* arr, Int_t index)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidresetArray(TArrayI* arr)
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)
voidsetClusInfCat(HCategory* cat)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidsetGeantKineCat(HCategory* cat)
voidsetGeantMdcCat(HCategory* cat)
voidsetGeantRichMirrorCat(HCategory* cat)
voidsetGeantShowCat(HCategory* cat)
voidsetGeantTofCat(HCategory* cat)
voidsetMdcHitCat(HCategory* cat)
voidsetMdcSegCat(HCategory* cat)
static voidTObject::SetObjectStat(Bool_t stat)
voidsetRichHitCat(HCategory* cat)
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
Int_twhatCommonHits(HPidDilepton* dil)
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
};
private:
HCategory*fClusInf
HCategory*fGeantKineCat
HCategory*fGeantMdcCat
HCategory*fGeantRichMirrorCat
HCategory*fGeantShowCat
HCategory*fGeantTofCat
HCategory*fMdcHitCat
HCategory*fMdcSegCat
HCategory*fRichHitCat

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

Bool_t initCategoryPointers()
HMdcSeg* getMdcSegFromPidTrackCand(HPidTrackCand* cand)
 Retrieve the Pointer of the inner segment corresponding
 to the HPidTrackCand object. Return NULL if something wrong
HRichHit* getRichHitFromPidTrackCand(HPidTrackCand* cand)
 Retrieve the Pointer of the RichHit corresponding
 to the HPidTrackCand object. Return NULL if something wrong
Int_t getMdcClsSize(HPidParticle* part,Int_t module)
 return the clustersize from HMdcClusInf for the
 inner segment of a HPidParticle.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
Int_t getMdcNWires(HPidParticle* part,Int_t module)
 return the number of wires from HMdcClusInf for the
 inner segment of a HPidParticle.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
Int_t getMdcLevelCls(HPidParticle* part,Int_t module)
 return the level of cluster finding from HMdcClusInf for the
 inner segment of a HPidParticle.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
Int_t getIntCharge(HPidParticle* part)
 return the integrated charge from HRichHit for the
 of a HPidParticle.
 return 0 if something wrong
Int_t getMdcClsSize(HMdcSeg* seg,Int_t module)
 return the clustersize from HMdcClusInf for the
 segment.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
Int_t getMdcNWires(HMdcSeg* seg,Int_t module)
 return the number of wires from HMdcClusInf for the
 segment.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
Int_t getMdcLevelCls(HMdcSeg* seg,Int_t module)
 return the level of cluster finding from HMdcClusInf for the
 segment.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
HPidTrackCand* getPidTrackCand(HPidParticle* part)
 return HPidTrackCand form an HPidParticle
 using the indices HPidParticel->HPidCandidate->HPidTrackCand
 return 0 if something wrong
HMdcHit* getMdcHit(HMdcSeg* seg, Int_t module)
 return the HMfdcHit for the
 segment.
 module == 0 -> first module in segment
 module == 1 -> second module in segment
 return 0 if something wrong
Int_t getMdcClsSize(HMdcHit* hit)
 return the clustersize from HMdcClusInf for the
 HMdcHit.
 return -1 if something wrong
Int_t getMdcNWires(HMdcHit* hit)
 return the number of wires from HMdcClusInf for the
 HMdcHit.
 return -1 if something wrong
Int_t getMdcLevelCls(HMdcHit* hit)
 return the level of cluster finding from HMdcClusInf for the
 HMdcHit.
 return -1 if something wrong
HMdcClusInf* getClusInfObj(Int_t clsindex)
get ClusInfObj from category using index
Int_t calculateLevelBin(Int_t level)
 calculates the bin of the the level parameter
 access the corrections
Int_t calculateBin(Float_t mdc_angle, Int_t option)
 calculate the the bin of the angle (option=0 ... theta; =1 ... phi)
Float_t getNormalMdcPhi(Int_t iSector, Float_t fPhiMdc)
 Convert MDC's phi angle to the coordinate system used
 in other detectors.  input mdc phi in rad and sector
 coordinate system => output in deg and hades coordinate system
Float_t getNormalMdcTheta(Float_t fThetaMdc)
 Convert MDC's theta angle to the coordinate system
 used in other detectors
HGeantKine* getKineObj(Int_t pTrack)
 return the HGenatKine object pointer
 for a given track number. returns NULL
 if something wrong
Int_t getGeantCommonTrack(HPidParticleSim* part)
this calculated CommonGeantTrack in a way I consider it is correct
return positive value for  e+ e- common track and:
      -2 ring-pi
      -3 ring-p
      -5 ring-another lepton
      -4 ring-mdc corr ele-meta not
      -1 ring-non sence in meta
      -10 richhit is null pointer
Bool_t isCompt(HGeantKine* kine)
 returns kTRUE if kine is a lepton
 originating from gama->e- gama
Bool_t isPi0Conv(HGeantKine* kine)
 returns kTRUE if kine is a lepton
 originating from pi0 ->gama->e+e-
Bool_t isConv(HGeantKine* kine)
 returns kTRUE if kine is a lepton
 originating from gama->e+e-
Bool_t isPi0Dalitz(HGeantKine* kine)
 returns kTRUE if kine is a lepton
 originating from pi0
Bool_t isEtaDalitz(HGeantKine* kine)
 returns kTRUE if kine is a lepton
 originating from eta dalitz
Bool_t isLepton(HGeantKine* kine)
 returns kTRUE if kine is a lepton
Bool_t isSingle(HMdcSegSim* seg)
 The method operates only on simulation data.
 Using the geant track numbers of the tracks
 in mdcseg (5 tracks stored) decide whether
 it is a single tracks from lepton or not
 Check also whether it is inner segment. If not
 returns false.
 look only at inner segments :very important
Bool_t isSingle(HMdcHitSim* hit)
 returns kTRUE if hit has only one track
 conribution and is a lepton
Int_t isSingleDouble(HMdcSegSim* seg, Int_t track, Int_t conv_mode = 0)
this method have following return values
 0 ... normal single
 1 ... normal double
 2 ... double => because possition of pair
                 lepton to track in MdcGeant too
                 close to MdcHit possition
-1 ... nothing of previous
 return value 2 was introduced because the lack of
 complete propagation  of all contributing track numbers
 from contributing wires to segment for fitted one.
 This is in version v6_11
Bool_t isDouble(HMdcSegSim* seg,Int_t conv_mode)
 The method operates only on simulated data.
 Using the geant track numbers of the tracks in
 mdcseg (5 tracks stored) decide whether
 it is a double tracks from lepton or not
 conv_more =0 seg is DOUBLE if there are
            2 different leptons contributing to it
 conv_more =1 seg is DOUBLE if there are 2 different
            leptons contributing to it and leptons
 are conversion pair
Bool_t isDouble(HMdcHitSim* hit,Int_t conv_mode)
 The method operates only on simulated data.
 Using the geant track numbers of the tracks in mdcseg
 (5 tracks stored) decide whether it is a double tracks
 from lepton or not conv_more =0 seg is DOUBLE if there
 are 2 different leptons contributing to it and they are pair
 conv_more =1 seg is DOUBLE if there are 2 different leptons
 contributing to it and leptons are conversion pair. Update
 from v6_12 for complete list of track num related to hit
 one has to look at MdcClusInf
Bool_t isMdcSegInGeant(HMdcSegSim* seg, Int_t track)
 this method look if mdcseg that corresponds to
 geant tracknumber track if found at the same place in GeantMdc
Int_t getPairTrack(Int_t track1)
this method finds a pair lepton to lepton with track1
I use the fact that it is either track1+1 or track1+1
HGeantKine* getPairTrack(HGeantKine* kine1)
this method finds a pair lepton to lepton with track1
I use the fact that it is either track1+1 or track1+1
Float_t getPairOpenAngle(HGeantKine* kine1, HGeantKine* kine2)
input 2 kine objects
output opening angle of trajectories
Float_t getPairInvMass(HGeantKine* kine1, HGeantKine* kine2)
copy from HPidFL
void putInArray(Int_t cls, TArrayI* arr, Int_t index)
filling the array arr
Bool_t isInArray(Int_t cls, TArrayI* arr)
checking if number cls is already in arr
void resetArray(TArrayI* arr)
put all entries to -1
Bool_t isInGeantMdc(Int_t tr)
check whether track tr is in GeantMdc inner modules
Bool_t isInGeantRichMirror(Int_t tr)
check whether track tr is in GeantMdc inner modules
Bool_t isInGeantTof(Int_t tr)
check whether track tr is in GeantTof
Bool_t isInGeantShower(Int_t tr)
check whether track tr is in GeantShower
Bool_t isHadesAccepted(Int_t tr)
look whether this track is seen in rich-mdc tof||show
Bool_t passCprPdfCuts(HPidDilepton* pDil,Float_t prob,const Char_t* name_of_pdf_file,Int_t mode_rs,const Option_t* rej_condition)
checking wheather both PidParticles fullfill CPR propabilities to be single
Bool_t passCprPdfCuts(HPidParticle* pPart,Float_t prob,const Char_t* name_of_pdf_file,Int_t mode_rs,const Option_t* rej_condition)
 checking wheather HPidParticle pass a probability to be a single
 mode_rs =0 for simulation data
 mode_rs =1 for real data
Int_t corect_cls(Int_t cls, Int_t the_bin, Int_t phi, Int_t level)
corect cls to keep sim/real correspondance
function the,phi,level
for the moment only the
Int_t corect_nwires(Int_t nwires, Int_t the_bin, Int_t phi, Int_t level)
corect nwires to keep sim/real correspondance
function the,phi,level
for the moment only the
Int_t whatCommonHits(HPidDilepton* dil)
this check common hits of leptons in pairs
return values:
0 : no common hits
1 : R-  common RICH hit
2 : M-  common MDC hit
3 : RM- common RICH and MDC hits
4 : Me- common META hit
5 : RMe-common RICH and META hits
6 : MMe-common MDC and META hits
7 : should not happend
-1: default return
HMdcFunc1(const HMdcFunc1& )
~HMdcFunc1(void)
{;}
HCategory* getRichHitCat()
{return fRichHitCat;}
HCategory* getMdcSegCat()
{return fMdcSegCat;}
HCategory* getMdcHitCat()
{return fMdcHitCat;}
HCategory* getClusInfCat()
{return fClusInf;}
HCategory* getGeantKineCat()
{return fGeantKineCat;}
HCategory* getGeantMdcCat()
{return fGeantMdcCat;}
HCategory* getGeantRichMirrorCat()
{return fGeantRichMirrorCat;}
HCategory* getGeantTofCat()
{return fGeantTofCat;}
HCategory* getGeantShowCat()
{return fGeantShowCat;}
void setRichHitCat(HCategory* cat)
{fRichHitCat=cat;}
void setMdcSegCat(HCategory* cat)
{fMdcSegCat=cat;}
void setMdcHitCat(HCategory* cat)
{fMdcHitCat=cat;}
void setClusInfCat(HCategory* cat)
{fClusInf=cat;}
void setGeantKineCat(HCategory* cat)
{fGeantKineCat=cat;}
void setGeantMdcCat(HCategory* cat)
{fGeantMdcCat=cat;}
void setGeantRichMirrorCat(HCategory* cat)
{fGeantRichMirrorCat=cat;}
void setGeantTofCat(HCategory* cat)
{fGeantTofCat=cat;}
void setGeantShowCat(HCategory* cat)
{fGeantShowCat=cat;}

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