#include "hrichcorrcounter.h"

HRichCorrCounter


class description - source file - inheritance tree (.pdf)

class HRichCorrCounter : public HReconstructor

Inheritance Chart:
TObject
<-
TNamed
<-
HTask
<-
HReconstructor
<-
HRichCorrCounter
<-
HRichCorrCounterSim

    public:
HRichCorrCounter() HRichCorrCounter(Text_t* name, Text_t* title) HRichCorrCounter(Text_t* name, Text_t* title, char* filename) ~HRichCorrCounter() void calcOpeningAngleMDC(TObjArray*, TH1F*) void calcOpeningAngleMETA(TObjArray*, TH1F*, TH2F*, TH2F*) void calcOpeningAngleTOF(TObjArray*, TH1F*) Int_t checkCombination(Int_t, Int_t, Int_t*, Int_t*, Int_t) Int_t checkCombinationSameCat(Int_t, Int_t, Int_t*, Int_t*, Int_t) static TClass* Class() Int_t countDiscreteIndexes(Int_t*, Int_t) Int_t countDiscreteIndexesF(Float_t*, Int_t) void dumpCorrelationStatus() virtual Int_t execute() Int_t fillHistos() Int_t fillMdcShowerThetadTheta(HHitMatch*, Int_t, Int_t*, Int_t*) Int_t fillMdcTofThetadTheta(HHitMatch*, Int_t, Int_t*, Int_t*) Int_t fillRichMdcThetadTheta(HHitMatch*, Int_t, Int_t*, Int_t*) Int_t fillUniqueIndex(Int_t, Int_t, Int_t*) virtual Bool_t finalize() HCategory* getHitMatchCat() HCategory* getHitMatchHeaderCat() HKickTrack* getKickTrack(HHitMatch*) void iniCounters() void iniHistos() virtual Bool_t init() virtual TClass* IsA() const Int_t isStored(Int_t, Int_t*, Int_t) Int_t isStoredWithOffset(Int_t, Int_t*, Int_t, Int_t) Int_t selectObj(TObjArray*, HHitMatch*) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
HCategory* pHitMatchCat ! HCategory* pHitMatchHeaderCat ! HIterator* pIterMatchHit ! HIterator* pIterMatchHitHeader ! HCategory* fKickTrackCat ! Pointer to KickTrack data category HIterator* iterTracks ! Iterator over KickTrack category TFile* pFileOut ! TObjArray* pHistArray ! TH2F* pH_MdcTofThetadTheta ! TH2F* pH_MdcShowerThetadTheta ! TH2F* pH_RichMdcThetadTheta ! TH1F* pH_RichMdcdTheta ! TH2F* pH_MdcTofToftofdTheta ! TH2F* pH_MdcShowerTofinotofdTheta ! TH1F* pH_opangleMDC ! TH1F* pH_opangleTOF ! TH1F* pH_opangleMETA ! TH2F* pH_opangleMETAdThetaMDCMETA ! TH2F* pH_opangleMETAdPhiMDCMETA ! TH1F* pH_MdcTofdTheta ! TH1F* pH_MdcShowerdTheta ! TH1F* pH_MdcMETAdTheta ! TH2F* pH_opangleTrksinRing ! TH1D* pH_RichDblPadNr ! TH1D* pH_RichDblAmpl ! TH1D* pH_RichDblPatMat ! TH1D* pH_RichDblHouTra ! TH1D* pH_RichSnglPadNr ! TH1D* pH_RichSnglAmpl ! TH1D* pH_RichSnglPatMat ! TH1D* pH_RichSnglHouTra ! char* pFileName ! Int_t nCounterProcessedNbEvents total nb of processed evts Int_t ngNbCorrObjs ! Int_t ngNb_RM !only Int_t ngNb_RT ! Int_t ngNb_RS ! Int_t ngNb_MT ! Int_t ngNb_MS ! Int_t ngNb_RcMcT !// RM MT Int_t ngNb_RcMcTcR !//RM MT RT Int_t ngNb_RMcTcR !// MT RT Int_t ngNb_RcMTcR !// RM RT Int_t ngNb_RcMcS !// RM MS Int_t ngNb_RcMcScR !//RM MS RS Int_t ngNb_RMcScR !// MS RS Int_t ngNb_RcMScR !// RM RS Int_t ngRTM !//3 indexes in obj Int_t ngRSM ! Int_t ngRichCnt ! Int_t ngMdcSegCnt ! Int_t ngShowerCnt ! Int_t ngTofCnt ! Int_t ngDRind Int_t ngDRichminRMind Int_t ngDRichminRTind Int_t ngDRichminRSind Int_t ngDRichminRMTind Int_t ngDRichminRMSind Int_t ngDRcMcTcRind Int_t ngDRcMcScRind Int_t ngDRcMTcRind Int_t ngDRcMScRind Int_t ngDRcMcTind Int_t ngDRcMcSind Int_t ngDRMcTcRind Int_t ngDRMcScRind Int_t ngDRMind Int_t ngDRTind Int_t ngDRSind Int_t ngDMTind Int_t ngDMSind Int_t ngDMind Int_t ngDTind Int_t ngDSind Int_t mdcmult[10] Int_t tofmult[10] Int_t shomult[10]

Class Description


HRichCorrCounter(Text_t *name,Text_t *title) : HReconstructor(name,title)

HRichCorrCounter()

HRichCorrCounter(Text_t *name,Text_t *title, char* filename) : HReconstructor(name,title)

~HRichCorrCounter(void)

Bool_t init()

void iniCounters()

Int_t execute()

Bool_t finalize()

void iniHistos()

Int_t fillHistos()

Int_t selectObj(TObjArray* pRTM,HHitMatch* pHM)

void calcOpeningAngleMDC(TObjArray *pArr,TH1F* hist)
 make all combinations of correlated objs and call
 calcopeningangles from hrichutilfunc

void calcOpeningAngleTOF(TObjArray *pArr,TH1F* hist)
 make all combinations of correlated objs and call
 calcopeningangles from hrichutilfunc

void calcOpeningAngleMETA(TObjArray *pArr,TH1F* hist,TH2F* hist2, TH2F* hist3)
 find all hits in TOF and SHOWER from the selected tracklets
 store the angles in META of all different hits
 calc the opening angle for all possible combinations

Int_t checkCombination(Int_t i,Int_t j,Int_t *iarr,Int_t *jarr,Int_t evtsize)
 this function returns 0 if the index pair i,j was used before in this evt

Int_t checkCombinationSameCat(Int_t i,Int_t j,Int_t *iarr,Int_t *jarr,Int_t evtsize)

Int_t isStored(Int_t i, Int_t *iarr, Int_t max)

Int_t isStoredWithOffset(Int_t i, Int_t *iarr, Int_t max, Int_t offset)

Int_t fillRichMdcThetadTheta(HHitMatch* h,Int_t evtsize,Int_t* m,Int_t* r)

Int_t fillMdcShowerThetadTheta(HHitMatch* h,Int_t evtsize,Int_t* m,Int_t* s)

Int_t fillMdcTofThetadTheta(HHitMatch* h,Int_t evtsize,Int_t* m,Int_t* t)

Int_t fillUniqueIndex(Int_t i,Int_t max,Int_t* iarr)
 check if value i is already stored in iarr
 if not then store it
 iarr is initialized to -2
 if already stored returns index
 if newly stored returns index of new slot

Int_t countDiscreteIndexes(Int_t *iarr,Int_t max)
count arr slots that are different from -2 (ini value)

Int_t countDiscreteIndexesF(Float_t *iarr,Int_t max)
count arr slots that are different from -2 (ini value)

void dumpCorrelationStatus()

HKickTrack* getKickTrack(HHitMatch* h)
identify the track given by HKickTrack
which corresponds to my tracklet
check on theta, phi and tof(ino) ?



Inline Functions


         HCategory* getHitMatchCat()
         HCategory* getHitMatchHeaderCat()
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)


Last update: Fri Jan 26 12:25:27 2007


ROOT page - Class index - Class Hierarchy - Top of the page

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.