#include "hpaircutpar.h"

HPairCutPar


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

class HPairCutPar : public HParCond

Inheritance Chart:
TObject
<-
TNamed
<-
HParSet
<-
HParCond
<-
HPairCutPar

    protected:
Bool_t compareParticleIndicesWithList(HPair*, Int_t*, Int_t) public:
HPairCutPar(const char* name = "PairCutParameters", const char* title = "Pair Analysis Parameters", const char* context = "PairDefault") HPairCutPar(const HPairCutPar&) virtual ~HPairCutPar() Bool_t check(HPair*) Bool_t checkCommonDetectorHit(HPair*) Bool_t checkOpeningAngle(HPair*) Bool_t checkPairDist(HPair*) Bool_t checkPairVertex(HPair*) Bool_t checkRecursive(HIterator*) Bool_t checkRecursive(TObjArray*) static TClass* Class() virtual void clear() void finalizeInit() TString* getActiveCutList() Int_t getBitFieldFlags() Int_t getBitFieldPassedFlags() Int_t getBitFieldRecursiveFlags() Bool_t getInitFlag() Int_t getNbActiveCuts() virtual Bool_t getParams(HParamList*) virtual Bool_t init(HParIo*, Int_t*) virtual TClass* IsA() const HPairCutPar& operator=(const HPairCutPar&) void printParam() virtual void putParams(HParamList*) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual Int_t write(HParIo*)

Data Members


    protected:
Float_t fPairOpeningAngle Float_t fPairDist Float_t fZRichExit Float_t fZRichBulb Float_t fZTargetShift Float_t fRFlanch Float_t fXBeamCenter Float_t fYBeamCenter Float_t fBeamRadius Int_t nPairOpeningAngleFlag Int_t nDoubleDetectorHitFlag Int_t nPairDistFlag Int_t nPairVertexFlag Int_t nPairOpeningAngleRecFlag Int_t nDoubleDetectorHitRecFlag Int_t nBitFieldFlags ! Int_t nBitFieldPassedCuts ! Int_t nBitFieldRecursiveFlags ! static const UInt_t NOCUT ! static const UInt_t DIRECTCUT ! static const UInt_t OPANG ! static const UInt_t DOUBLEHIT ! static const UInt_t DIST ! static const UInt_t VERTEX ! static const UInt_t OPANGDOUBLEHIT ! Bool_t kIsInit ! TString* pActiveCutNames ! TObjArray* pArrCutPairs !

Class Description


 HPairCutPar

 Container class for Pair analysis parameters

 A cut in the context of this container always means that a pair object
 is set inactive via a flag. No objects are deleted from their category.
 For each cut there is a value which serves as a threshold and a flag
 which states whether the cut is active or not. Different value and flag
 combinations should be set via contexts.
 A cut can be requested as recursive. This means that all pairs containing
 a particle from a cut away pair will also be cut. Useful for an
 identified and unwanted pair type (close pair or conversion pair e.g.).
 A list with indices for particles cut by a recursive cut is kept. All
 recursive cuts contribute to this list. Only new indices are added. At
 the end of the event loop all pairs are checked again, those having a
 matching particle are set inactive. Requesting a cut as recursive
 inevitably means two passes over all objects in the event.
 The check(HPair*) function evaluates the active cuts and returns a boolean
 decision on the tested object. A bit field with a fixed order for the
 represented cuts is initialized once when retrieving params from the
 param source. Activated cuts are then evaluated and a second bit field
 is filled with the cut results. This result bit field is created for
 each checked object and can be retrieved from the param container.



HPairCutPar(const char* name,const char* title, const char* context) : HParCond(name,title,context)

Bool_t init(HParIo* inp,Int_t* set)
 initializes the container from an input using the DEFAULT interface class

Int_t write(HParIo* output)
 writes the container to an output using the DEFAULT interface class

~HPairCutPar()

void clear()

void printParam()

void putParams(HParamList* l)

Bool_t getParams(HParamList* l)

void finalizeInit(void)

Bool_t check(HPair* p)

Bool_t checkOpeningAngle(HPair* p)

Bool_t checkPairDist(HPair* p)

Bool_t checkPairVertex(HPair* p)

Bool_t checkCommonDetectorHit(HPair* p)
 if the pair has common hit return kTRUE

Int_t getNbActiveCuts()

Bool_t checkRecursive(HIterator* pIter)
 This function is executed at the end of the execute function of the
 filter. The array pArrCutPairs is filled with bad pairs
 The array nParts is filled here with those
 particle indices from bad pairs for this event

Bool_t checkRecursive(TObjArray* pArrAllPairs)
 This function is executed at the end of the execute function of the
 filter. The array pArrCutPairs is filled with bad pairs
 The array nParts is filled here with those
 particle indices from bad pairs for this event

Bool_t compareParticleIndicesWithList(HPair* p,Int_t* list,Int_t size)



Inline Functions


               Int_t getBitFieldPassedFlags()
               Int_t getBitFieldFlags()
               Int_t getBitFieldRecursiveFlags()
            TString* getActiveCutList()
              Bool_t getInitFlag()
             TClass* Class()
             TClass* IsA() const
                void ShowMembers(TMemberInspector& insp, char* parent)
                void Streamer(TBuffer& b)
                void StreamerNVirtual(TBuffer& b)
         HPairCutPar HPairCutPar(const HPairCutPar&)
        HPairCutPar& operator=(const HPairCutPar&)


Last update: Fri Jan 26 12:20:08 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.