#include "hpairevtmixer.h"

HPairEvtMixer


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

class HPairEvtMixer : public HReconstructor

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

    protected:
Bool_t checkMixedPair(HPairExt*) Bool_t checkMixedPair(HPairSimExt*) Bool_t checkParticle(HPidParticle*) void deleteStoredEvents() TObjArray* doEventMixingAllTracks() HCategory* getPairCat() HCategory* getPidParticleCat() Int_t makeMixedPairs() void shrinkEventBuffer() Int_t storeEvent() Int_t storeEventWithoutPairAnalysis() Int_t storeEventWithPairAnalysis() public:
HPairEvtMixer() HPairEvtMixer(Text_t* name, Text_t* title, Int_t nBufferSize = 100, Int_t nBufferMethod = 1, Int_t nPairAna = 1, Int_t nShrinkPoolByThisNumberOfEvents = 1, Int_t rndnr = 0, Int_t nMinNbLepsPerEvt = 0, Int_t nUnlikeSignOnly = 0) ~HPairEvtMixer() static TClass* Class() virtual Int_t execute() virtual Bool_t finalize() TString& getQAFileName() virtual Bool_t init() virtual TClass* IsA() const void setQAFileName(const Char_t* c) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) void useUnlikesignOnly(Bool_t k)

Data Members


    protected:
Int_t nCounterProcessedNbEvents HCategory* pCatPidParticle ! HIterator* pIterPidParticle ! HCategory* pCatPair ! HIterator* pIterPair ! HPairCutPar* pCuts ! Bool_t kIsReal ! Bool_t kFirstMixing ! Bool_t kOnlyUnlikeSign ! Int_t evtrange ! number of evts to store for mixing Int_t evtsStoredInRange ! counter for nb of evts within evtrange Int_t nrMixObjs ! number of rand. chosen objs per evt for mixing Int_t nCntMixedEvts ! number of event pairs Int_t nBufferFillingMethod ! 0: discrete (default); 1: ring Int_t nShrinkPool ! number of events to shift ring buffer Int_t nPairAnalysis ! switch : 0 (default) no pair analysis Int_t nMinParticlesPerEvent ! min number of particles needed per event Int_t nStoredEvts ! counter of stored events TObjArray* evtset ! event pool holding 1 array with particles per event TString cQAFileName ! HPairQA* pQA !

Class Description


 HPairEvtMixer




HPairEvtMixer(Text_t *name,Text_t *title, Int_t nBufferSize, Int_t nBufferMethod, Int_t nPairAna, Int_t nShrinkPoolByThisNumberOfEvents, Int_t rndnr, Int_t nMinNbLepsPerEvt, Int_t nUnlikeSignOnly) : HReconstructor(name,title)
 set ctor arguments to class data

HPairEvtMixer()

~HPairEvtMixer(void)

Bool_t init()

Bool_t finalize()

Int_t execute()

Int_t storeEvent()

Int_t storeEventWithoutPairAnalysis()
 store particles for event mixing without pair analysis

Int_t storeEventWithPairAnalysis()
 store particles for mixing with the help of a pair property analysis

void deleteStoredEvents()
 loop over event pool "evtset"

TObjArray* doEventMixingAllTracks()
 create event pairs from the event pool and
 create particle pairs (HPairExt) from all particles in both events
 store these pairs in a TObjArray and return it

void shrinkEventBuffer()

Bool_t checkParticle(HPidParticle* p)
 This function checks a particle and decides if it is stored
 for mixing or not.

Bool_t checkMixedPair(HPairSimExt* p)

Bool_t checkMixedPair(HPairExt* p)
 This function checks a pair and decides if it is stored
 FIXME: Do this via the cut object used in std pairs analysis !

Int_t makeMixedPairs()
 call the event mixing routine and fill the pair ntuple



Inline Functions


               void setQAFileName(const Char_t* c)
           TString& getQAFileName()
               void useUnlikesignOnly(Bool_t k)
         HCategory* getPidParticleCat()
         HCategory* getPairCat()
            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:20:21 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.