#include "hpidtrackfiller.h"

HPidTrackFiller


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

class HPidTrackFiller : public HReconstructor

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

    protected:
void assignMetaCorrelations(HPidTrackCand* pCand) void assignRingCorrelations(HPidTrackCand* pCand) HCategory* buildOutputCategory() Bool_t checkChi2(HMetaMatch* pMatch) Bool_t checkForLepton(HMetaMatch* pMatch) Bool_t checkTofinoMult(HMetaMatch* pMatch) Float_t correctRingShift(HPidTrackCand* pCand) Float_t getAngularDistance(HMetaMatch* pMetaMatch, HPidTrackCand* pCand) HPidTrackCand* getNextSlot() virtual HPidTrackCand* getNextSlot(HMetaMatch* pMatch) void getPolynomialCoefficients(Float_t* coefficients, Int_t sector) void setDefault() public:
HPidTrackFiller(Option_t* pOpt) HPidTrackFiller(Text_t* name, Text_t* title, Option_t* pOpt) ~HPidTrackFiller() static TClass* Class() virtual Int_t execute() virtual Bool_t finalize() Bool_t getChi2Selection(Int_t nSeg) const Bool_t getSkipNoLepton() const Bool_t getSkipTofinoMult() const virtual Bool_t init() virtual TClass* IsA() const virtual void Print(Option_t* o) const void print() const virtual Bool_t reinit() void setChi2Selection(Int_t nSeg, Bool_t b = kTRUE) void setMatchingConditions(Option_t* pParams) void setSkipNoLepton(Bool_t b = kTRUE) void setSkipTofinoMult(Bool_t b = kTRUE) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
HCategory* pCatMatch HMetaMatch category HCategory* pCatTrkCand HMdcTrkCand category HCategory* pCatMdcSeg HdcSeg category HCategory* pCatTof HTofHit category HCategory* pCatShower HShowerTofinoHit category HCategory* pCatCand output category HLocation lTrack location used in execute for HBaseTrack HIterator* pitCand iterator: output category HIterator* pitMatch iterator: input category HPidTrackFillerPar* pTrackFillerParam Bool_t bInitOk set kTRUE if last init was ok Bool_t bSkipNoLepton skip event if no lepton candidate (ring+segment) was found Bool_t bSkipTofinoMult skip track if tofino mult. > 1 Bool_t bMakeSimCategory create HPidTrackCandSIim category instead of HPidTrackCand Bool_t bNoChi2Selection[2] if kTRUE, do not remove track with chi^2<0, nSeg=0 inner,nSeg=1 outer segment Int_t nAccTrack Number of accepted tracks Int_t nRejTrack Number of rejected tracks Int_t nTotalTrack Total number of analyzed tracks Float_t meanDevChange Mean change in deviation of ring and track Int_t nShifts Number of rings shifted

Class Description


 HPidTrackFiller

 A simple track filler of HPidTrackCand category.
 The data from HKickTrack are used and matching with RICH is done.
 For the matched ring correlated HMdcSegs are found for the close pair
 rejection. For all not HMdcSegs not matched in any HKickTrack the searching
 for corresponding rings is done as well.

 The options set in the constructor may modify this behaviour: see
 setParameters() description.



HPidTrackFiller(Option_t par[]) : HReconstructor("PidTrackFiller", "PID track candidate filler")
 Default constructor.
 For options see setMatchingConditions() description.

HPidTrackFiller(Text_t name[], Text_t title[],Option_t par[]) : HReconstructor(name, title)
 Default constructor.
 For options see setMatchingConditions() description.

~HPidTrackFiller(void)

void setMatchingConditions(Option_t par[])
 Set parameters by names. Options (may be separated by comma or blank chars):
 MAKESIMCATEGPRY - build HPidTrackCandSim instead of the REAL data category
 SKIPNOLEPTON - skip the event when there is no matchig RICH with track
 SKIPTOFINOMULT - skip the track when tofino mult. > 1
 NOCHI2SEG0 -  do not remove track with chi^2<0 from seg0
 NOCHI2SEG1 -  do not remove track with chi^2<0 from seg1

Bool_t reinit(void)

Bool_t init(void)
 get/build all used categories and iterators

HCategory* buildOutputCategory(void)

Int_t execute(void)
cout << "execute" << endl;
No leptons yet in this event - if this is still 0 at the end we skip the complete event!

Float_t getAngularDistance(HMetaMatch* pMatch, HPidTrackCand* pCand)
Temporary vector objects for scalar product computation

Float_t correctRingShift(HPidTrackCand* pCand)

void getPolynomialCoefficients(Float_t* coefficients,Int_t sector)
Determine Vertex information from event data

void assignRingCorrelations(HPidTrackCand* pCand)

void assignMetaCorrelations(HPidTrackCand* pCand)

Bool_t checkForLepton(HMetaMatch* pMatch)
Matching between TrkCand and RICH - this could be a lepton!

Bool_t finalize(void)

void setDefault(void)
 set default values inside the construtors

HPidTrackCand* getNextSlot(void)

HPidTrackCand* getNextSlot(HMetaMatch *pMatch)
cout <<"trying to get next slot:" << endl;

Bool_t checkTofinoMult(HMetaMatch *pMatch)

Bool_t checkChi2(HMetaMatch *pMatch)

void print(void) const
 Print info about the recontructor params



Inline Functions


               void setSkipNoLepton(Bool_t b = kTRUE)
             Bool_t getSkipNoLepton() const
               void setSkipTofinoMult(Bool_t b = kTRUE)
             Bool_t getSkipTofinoMult() const
               void setChi2Selection(Int_t nSeg, Bool_t b = kTRUE)
             Bool_t getChi2Selection(Int_t nSeg) const
               void Print(Option_t* o) const
            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:23: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.