#include "hparticlefiller.h" |
HParticleFiller
class description - source file - inheritance tree (.pdf)
public:
HParticleFiller()
HParticleFiller(Text_t* name, Text_t* title, Bool_t skip = kFALSE)
~HParticleFiller()
static TClass* Class()
virtual Int_t execute()
void fillMomenta(HKickTrack* track, HParticle* part)
void fillVertex(HKickTrack* track, HParticle* part)
virtual Bool_t finalize()
HCutHadronId* getCutHadronPid()
HCutLeptonId* getCutLeptonPid()
HCutTrack* getCutTrack()
virtual Bool_t init()
virtual TClass* IsA() const
void makeLepton(HRichHit* ring, HParticle* part)
void setCutHadronId(HCutHadronId* cutHadron)
void setCutLeptonId(HCutLeptonId* cutLepton)
void setCutTrack(HCutTrack* cutTrack)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
protected:
HCategory* fPartCat ! Pointer to Particle data category
HCategory* fKickTrackCat ! Pointer to KickTrack data category
HCategory* fRichHitCat ! Pointer to KickTrack data category
HCutTrack* trackCuts Cuts applied to tracks
HCutLeptonId* leptonCuts Cuts applied to leptons
HCutHadronId* hadronIdCuts Cuts applied to hadrons
HIterator* iterTracks ! Iterator over KickTrack category
HIterator* iterRings ! Iterator over KickTrack category
HSpecGeomPar* fSpecGeometry ! Geometry needed for rotation of kick track data
Bool_t kSkip ! Option to skip events without certain requirements
HParticleFiller - Identifies particles using HCut classes
This task fills the HParticle container by iterating over HKickTrack
and HRichHit and identifying leptons with an angular correlation. This
class is still evolving... further pid and matching tools (showers,
p.c. analysis, etc.) are being added.
An HParticle is assigned its four-momentum compoments and other
characteristics from HKickTrack (and rotated into cave coordinate
system). If an HParticle has an angular correlation with an HRichHit,
the particle is assigned to be an electron (positron) if the track's
charge in HKickTrack was -1 (+1). 2-d cuts are then applied to assign
pid to hadrons.
By calling the task with skip='kTRUE', events without an HParticle
are skipped. Currently, tracks from HKickTrack which do not have a
valid pid are kept and assigned pid=0 (as in HKickTrack).
For more information, see the PhyAna documentation.
HParticleFiller(void)
Default constructor
HParticleFiller(Text_t *name,Text_t *title,Bool_t skip) :
HReconstructor(name,title)
Consructor: Name, title, Skip event
Bool_t init(void)
Creates/gets the KickTrack, RichHit and Particle categories in
the current event
Int_t execute(void)
Fills the Particle container using input from HKickTrack and HRichHit.
void fillMomenta(HKickTrack *track, HParticle *part)
Fill components of 4-vector by rotating track into cave and
calculating the coordinates. If the particle has a PID, mass is
calculated using particle mass from look-up table. Otherwise,
mass from HKickTrack is used.
void fillVertex(HKickTrack *track, HParticle *part)
For now, this function simply fills HParticle's r and z directly
from HKickTrack. Eventually a vertex class could be implemented.
void makeLepton(HRichHit *ring, HParticle *part)
Make a lepton out of an HParticle by reassigning mass and
recalculating energy
Inline Functions
void ~HParticleFiller()
void setCutTrack(HCutTrack* cutTrack)
HCutTrack* getCutTrack()
void setCutLeptonId(HCutLeptonId* cutLepton)
HCutLeptonId* getCutLeptonPid()
void setCutHadronId(HCutHadronId* cutHadron)
HCutHadronId* getCutHadronPid()
Bool_t finalize()
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:55 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.