#include "htofrec.h"

HTofRec


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

class HTofRec : public HReconstructor

Inheritance Chart:
TObject
<-
TNamed
<-
HTask
<-
HReconstructor
<-
HTofRec

    protected:
Bool_t isRichCorr(HMdcSeg* mdc) void track_recalc(Float_t* start, Int_t* rec_ind, Int_t* flag) public:
HTofRec() HTofRec(Text_t* name, Text_t* title, const char* select, const char* track) ~HTofRec() static TClass* Class() virtual Int_t execute() virtual Bool_t finalize() virtual Bool_t init() virtual TClass* IsA() const void setDebug(Bool_t d) void setFillNTuple(Bool_t fill) void setKickHiSec(Int_t* kick123_sec) void setKickLowSec(Int_t* kick_sec) void setMinusMode(Bool_t m) void setOutputDir(char* fdir) void setOutputFile(char* ffile) void setPlusMode(Bool_t p) void setQualityRichParams(Float_t RingPatMat, Float_t RingPadNr, Float_t Centroid, Float_t RingAmplitude) void setRichMode(Bool_t r) void setRichParams(Float_t theta0, Float_t dtheta, Float_t phi0, Float_t dphi, Float_t lambda2) void setRKSec(Int_t* rk_sec) void setSplineField(Float_t* spline_sec) void setSplineSec(Int_t* spline_sec) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
Bool_t fRichMode flag for RICH mode (lepton ID) Bool_t fPlusMode flag for PLUS mode (not used) Bool_t fMinusMode flag for MINUS mode (pi- ID) Bool_t fDebugMode flag for debug mode Bool_t fillNTuple flag to fill debuf ntuples Bool_t fKickHires KickHires mode on Bool_t fKickLowres KickLowres mode on (not used) Bool_t fKickLowresB KickLowresB mode on Bool_t fSpline Spline mode on Bool_t fRK RungeKutta mode on Bool_t bChiCutInner Chi2> -1 cut for inner MDC segment Bool_t bChiCutOuter Chi2> -1 cut for outer MDC segment Bool_t fSkip Skip event if start is not reconstructed Bool_t isSimulation Simulation mode ON Bool_t isCommon Common mode ON (time reconstructed from spline) Bool_t bIsFirst Is first event HCategory* fSplineCat Spline category HCategory* fKickLowCat Kick lowres category HCategory* fKickLowBCat kick LowresB category HCategory* fKickHiCat Kick hires category HCategory* fRichCat Rich category HCategory* fTofCat Tof category HCategory* fTofinoCat Tofino category HCategory* fMetaMatchCat MetaMatch category HCategory* fMdcSegCat HMdcSeg category HCategory* fMdcTrkCandCat HMdcTrkCand category HCategory* fRKCat RungeKutta category HIterator* iterMetaMatch iterator on HMetaMatch HIterator* iterRich iterator on HRichHit Double_t C light speed Float_t rich_params[5] Rich correlation parameters (theta0, dtheta, phi0, dphi, lambda2) Float_t rich_qparams[4] Rich quality parameters (RingPatMat, RingPadNr, Centroid, RingAmplitude) Int_t spline_sec_on[6] Spline sectors used for tof reconstruction Float_t spline_sec_field[6] Spline sectors used for tof reconstruction Int_t kick123_sec_on[6] Hires kicktrack sectors used for tof reconstruction Int_t kick_sec_on[6] Lowres kicktrack sectors used for tof reconstruction Int_t rk_sec_on[6] Runge Kutta kicktrack sectors used for tof reconstruction Int_t mdc_sec[6] Numbers of MDC modules for each sectors; Int_t common_flag flag for common reconstruction TNtuple* before TNtuple* after TNtuple* richcorr Ntuple for rich correlation TString sDir Ntuple output directory TString sFile Ntuple output file

Class Description

 HTofRec
 In case of experiments where there exists no start hit and the TOF of the
 particles has to be recalculated, the tof variable(getTof()) of all classes derived from
 HBaseTrack and HKickTrack will be overwritten by a this class which recalculates the tof.
 To mark those objects as changed one can ask with getFlag(). The result should be
 1 or 2 depending on the method which has been used and 0 if it has not been changed.
 Anyhow the original tof can be retrieved direct from the HTofHit referenced by
 tofindex (getTofHitInd()). The flag itself is decoded in the tofindex, but will be
 hidden from the user by the getTofHitInd() function.

 To setup the constructor  call HTofRec(Text_t *name,Text_t *title, const char *select, const char *track),
 where select contains the key words for configuration (just "," separated list)
    nospline   : switch of spline
    nohires    : switch of high resolution kickplane
    nolowres   : switch of low  resolution kickplane
    nolowresB  : switch of low  resolution kickplaneB
    nork       : switch of Runge Kutta tracking
    norich     : switch of rich mode
    debug      : switch on debug mode
    ntuple     : switch on create,fill and write ntuple for debugging
    chiin      : switch on the chi2>-1 cut for inner MDC segments
    chiout     : switch on the chi2>-1 cut for outer MDC segments
    common     : use spline as reconstructor for all the trackings
    skip       : skip event in DST if start is not reconstructed
    simulation : swith on simulation mode

 if common mode is switched one, "track" is the chosen tracking algorythm for globat tof reconstruction:
    spline     : spline
    lowres     : low resolution kickplaneB
    hires      : high resolution kickplane
    rk         : Runge Kutta tracking

 defaults (empty string) are:
   spline on
   low  resolution kickplane   ON
   low  resolution kickplaneB  ON
   high resolution kickplane   ON
   RungeKutta                  ON
   fRichMode                   ON
   field correction            1.0
   debug mode                  OFF
   ntuple                      OFF
   chi2 inner cut              OFF
   chi2 outer cut              OFF
   simulation mode             OFF
   skip event                  OFF
   common                      OFF

 Usage:

   TofRec *tofrec = new HTofRec("tofreconstructor","tofreconstructor",option,track);
   tofrec->setRichParams(0.674189,2.04904,0.,1.82966,5.);
   tofrec->setQualityRichParams(200.,4.,2.8,5);
   HTaskSet * tofrectask = new HTaskSet("","");
   tofrectask->connect(tofrec);
   masterTaskSet->add(tofrec);


 ***************************************************************************

HTofRec()
 Default constructor

HTofRec(Text_t *name,Text_t *title, const char *select, const char *track) : HReconstructor(name,title)
 Constructor

~HTofRec(void)
 Destructor.

Bool_t init(void)

Int_t execute(void)

Bool_t finalize(void)

void track_recalc(Float_t *start, Int_t *rec_ind, Int_t *flag)
 Tof recalculator
 0 - spline
 1 - kickplane lowresB
 2 - kickplane hires
 3 - RungeKutta

Bool_t isRichCorr(HMdcSeg* mdc)
 function which check if a HMdcSeg is correlated to RICH



Inline Functions


               void setRichMode(Bool_t r)
               void setMinusMode(Bool_t m)
               void setPlusMode(Bool_t p)
               void setDebug(Bool_t d)
               void setFillNTuple(Bool_t fill)
               void setRichParams(Float_t theta0, Float_t dtheta, Float_t phi0, Float_t dphi, Float_t lambda2)
               void setQualityRichParams(Float_t RingPatMat, Float_t RingPadNr, Float_t Centroid, Float_t RingAmplitude)
               void setSplineSec(Int_t* spline_sec)
               void setSplineField(Float_t* spline_sec)
               void setKickHiSec(Int_t* kick123_sec)
               void setKickLowSec(Int_t* kick_sec)
               void setRKSec(Int_t* rk_sec)
               void setOutputDir(char* fdir)
               void setOutputFile(char* ffile)
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)


Author: Stefano Spataro (spataro#lns.infn.it)
Last update: 10-DEC-2004 by Stefano Spataro (RungeKutta tracking included, added common mode)


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.