// $Id: hrichcorrelatorsim.h,v 1.11 2009-07-23 14:52:20 halo Exp $
// Last update by Thomas Eberl: 02/10/11 19:06:03
//
#ifndef HRICHCORRELATORSIM_H
#define HRICHCORRELATORSIM_H

#define MAXPARIDS 100
#include "hrichcorrelator.h"
#include "htrackinfo.h"

class HGeantKine;
class HCategory;
class HIterator;
class HRichHitSim;
class HHitMatchSim;
class HHitMatchHeaderSim;

class HRichCorrelatorSim : public HRichCorrelator {
public:

	HRichCorrelatorSim();
        HRichCorrelatorSim(const Text_t *name,const Text_t *title);
        HRichCorrelatorSim(const Text_t *name,const Text_t *title,const Char_t* filename,Bool_t style=kFALSE);
	~HRichCorrelatorSim();

        Bool_t init();
        Bool_t reinit();
        Bool_t finalize();
        Int_t execute();
    //        void fillHitMatchHeaderSim();
        void diag(HHitMatchSim*);
        HCategory* getGeantKineCat(){return fGeantKineCat;};
        HCategory* getGeantRichMirrorCat(){return fGeantRichMirrorCat;};
        void setGeometryPar(HParSet* pPar){pGeoPar = pPar;};
        HParSet* getGeometryPar(){return pGeoPar;};
        void assignRichTracks(Int_t);
        void assignMdcTracks(Int_t);
        void assignShowerTrack(Int_t);
        void assignTofTracks(Int_t);
        void cleanTracks();
        void matchTracks(HHitMatchSim*);
        void corrTracksRT_S(HHitMatchSim*);
        void corrTracksMT_S(HHitMatchSim*);
        void corrTracksRM(HHitMatchSim*);
        void setGeantTrackInfoRM(Int_t,Int_t,HTrackInfo*);
        void setGeantTrackInfoMT_S(Int_t,HTrackInfo*);
        void setGeantTrackInfoRT_S(Int_t,HTrackInfo*);
        Float_t calcRichWeight(Int_t);
        Float_t calcMdcWeight(Int_t);
        void evalBiCorrs(HHitMatchSim*);
        Int_t isPi0Dalitz(Int_t);
        Int_t isConvLep(Int_t);
        Int_t isLepOnMirror(HHitMatchSim*);
        Int_t isLepOnMDC(HHitMatchSim*,Int_t);
        Int_t isGRing(HHitMatchSim*);
        Int_t isGCorrRing(HTrackInfo*);
        Int_t matchRingMirrtracks(HRichHitSim *pH,Int_t trackMirr,Int_t idMirr);
        virtual void iniCounters(void);
        void diagOut(HHitMatchSim*,HTrackInfo*);
        
protected:
    HParSet  * pGeoPar;//!
    HCategory *fGeantKineCat; //!
    HIterator *iter_kine; //!
    HCategory *fGeantRichMirrorCat; //!
    HIterator *iter_mirror; //!
    HCategory *fGeantMdcCat; //!
    HIterator *iter_mdcgeant; //!
    //    HCategory *fGeantRichCat; //!
    //HIterator *iter_geantrichraw; //!
    HCategory *fShowerTrack; //!
    HIterator *iter_showertrack;//!
    Int_t richTracks[3]; //!
    Int_t richWeights[3]; //!
    Int_t mdcTracks[5]; //!
    Int_t mdcWeights[5]; //!
    Int_t tofTracks[2]; //!
    Int_t showerTracks[5]; //!
    Int_t   sumWeightsRich,   sumWeightsMdc;
    //COUNTERS
    Int_t ng_Part, ngGNb_RM, ngGNb_RT_S, ngGNb_MT_S, ngGNb_RMT_S;
    Int_t ngGNbRMonly,ngGNbRTSonly,ngGNbMTSonly,ngGNbRMTSonly;
    Int_t ngNb_RW,ngNb_MW;
    Float_t fg_RW,fg_MW;
    Int_t ngNb_Fakes;
    Int_t ngNb_ConfTracklet;
    Int_t ng_ParId[MAXPARIDS];
    //CONTROL HISTOS
    //TObjArray *histArray;
    ClassDef(HRichCorrelatorSim,1)
};

#endif //HRICHCORRELATORSIM_H




Last change: Sat May 22 13:08:29 2010
Last generated: 2010-05-22 13:08

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.