CalRecon


class description - source file - inheritance tree

class CalRecon : public RecModule

    private:
Int_t GetDetector(TString& name) void GetLarge() void GetSmall() Double_t RanExpDecay(TRandom* pRand, Double_t mean = 1.0) Int_t Smearable(McPart*) SmearVolume* Swim(SmearTraj* pTraj, Bool_t hadron) public:
CalRecon CalRecon(TString& name = Small) CalRecon CalRecon(CalRecon&) virtual void ~CalRecon() TClass* Class() virtual void cleanup() virtual void doit(Event* event) TObjArray* GetSmears() virtual TClass* IsA() virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void spew(FILE* ofile) virtual void Streamer(TBuffer& b)

Data Members

private:
Int_t nPart Total number of MC particles in event TObjArray* MCparticles Private pointer to event particles TObjArray* smears "Clusters" -- actually of class CalSmeared TRandom* pRand Use Root for randoms, gaussian or uniform SmearVolume* pVolumes Array of detector volumes SmearVolume* pInnerVolume Innermost volume about IP Int_t nVolumes Number of detector volumes in array

Class Description

 CalRecon

 CalRecon is the over-all manager for Fast MC calorimetry.  It must
 be instantiated for each detector (or change to smearing parameters)
 but need only be cleared between events belonging to the same
 detector

CalRecon(const TString& name)
 Constructor.   Primary job is to assemble various parameters
 describing detector geometry and resolution.

void cleanup()
 Get rid of allocated memory, obsolete pointers.

void doit(Event* event)
 Process an event.  For each MC particle, check to see whether it's
 "smearable".  If so, propagate, then smear energy and transverse
 position.

void spew(FILE* ofile) const
 Output standard cluster quantities to ascii file.

Int_t Smearable(McPart* pPart)
 Check a) that we have a final-state particle b) particle type.
 Must be electron/positron, photon, or an acceptable hadron.
 c) energy.  Must be non-negligible.

Int_t GetDetector(const TString& name)
 Somehow get access to needed detector parameters.  For now, use the
 name to identify a set of parameters.  Could also use it to identify
 a file, or to just ask (from some parameter server class) for information
 about the "ambient" detector, if any.

 Result of this call is to initialize the following fields in CalRecon:
       nBarrel   pBarrels
       nEndcap   pEndcaps
 so that at the end have a list of pointers to barrels, arranged in
 order of increasing R, and a list of endcap in order of increasing z

SmearVolume* Swim(SmearTraj* pTraj, Bool_t hadron)
 Swim particle with initial conditions described in pTraj through
 the detector.  Return true if particle showers in the detector
 (where the coil counts as part of the detector)



Inline Functions


         TObjArray* GetSmears()
           Double_t RanExpDecay(TRandom* pRand, Double_t mean = 1.0)
               void GetSmall()
               void GetLarge()
            TClass* Class()
            TClass* IsA()
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
           CalRecon CalRecon(CalRecon&)
               void ~CalRecon()


ROOT page - Class index - 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.