HPairCutPar
class description - source file - inheritance tree (.pdf)
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*)
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 !
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.