#include "muEmulation.h"

HMUEmulation


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

class HMUEmulation : public HReconstructor

Inheritance Chart:
TObject
<-
TNamed
<-
HTask
<-
HReconstructor
<-
HMUEmulation
<-
HMUEmulationExp
HMUEmulationSim
    private:
Bool_t initParContainer(HSpectrometer* spec, HRuntimeDb* rtdb) virtual void prepareInput() Int_t roundAngle(Float_t fAngle, Int_t iRange, Float_t round = 0.5) protected:
virtual Int_t matching() void reset() virtual void updateEmuLeptons() public:
HMUEmulation() HMUEmulation(Text_t* name, Text_t* title) virtual ~HMUEmulation() static TClass* Class() virtual Int_t execute() virtual Bool_t finalize() virtual Bool_t init() virtual TClass* IsA() const virtual Bool_t reinit() virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
HCategory* pRich ! Pointer to RICH hit category HCategory* pTof ! Pointer to Tof hit category HCategory* pShower ! Pionter to SHOWER hit category HCategory* pLeptons ! Pointer to MU lepton category HTriggerParMuLep* fTrigPar ! Pointer to MU lepton parameter container HTriggerParMomMap* fTrigParMom ! Pointer to MU momentum map parameter container HTriggerSetup* fTriggerSetup ! Pointer to trigger setup parameters Int_t muDileptons ! Minimum number of dileptons for positiv LVL2 trigger Int_t muLeptons ! Minimum number of leptons for positiv LVL2 trigger Int_t muMaxLeptons ! Number of leptons resulting in positiv LVL2 trigger Int_t muRichHits ! Minimum number of RICH hits for positiv LVL2 trigger Int_t muRichTotalHits ! Number of rings in RICH giving a positiv LVL2 trigger Int_t muMetaHits ! Minimum number of META hits for positiv LVL2 trigger TArrayF* thetaRich[6] Theta of RICH hit from the MU TArrayF* phiRich[6] Phi of RICH hit from MU TArrayF* thetaShower[6] Theta of SHOWER hit from MU TArrayF* phiShower[6] Phi of SHOWER hit from MU TArrayF* thetaTof[6] Theta of TOF hit from MU TArrayF* phiTof[6] PHI of TOF hit from MU TArrayI* flagTof[6] Pid of TOF hit from MU Int_t nRichHits[6] Number of RICH hits per sector Int_t nTofHits[6] Number of TOF hits per sector Int_t nShowerHits[6] Number of SHOWER hits per sector UInt_t nMetaHits ! Total number of hits in META UInt_t nRichTotal ! Total n umber of hits in RICH UInt_t triggerDecision ! Trigger decision, result of matching HIterator* iterRich ! Iterator over RICH hit category HIterator* iterTof ! Iterator over TOF hit category HIterator* iterShower ! Iterator over SHOWER hit category TObjArray* pEmuLeptons ! Pointer to array for storing lepons Int_t nEmuLeptons ! Number of found leptons per event HLocation loc ! Address used to store leptons in output category HEventHeader* pEventHeader ! Pointer to event header

Class Description


Bool_t initParContainer(HSpectrometer *spec, HRuntimeDb *rtdb)
 Adds to the runtime database "rtdb" the containers needed by the MU Emulation

 Input parameters:
   HSpectrometer *spec
       To get information of the spectrometer setup.
   HRuntimeDb *rtdb
      Poineter to runtime database

 Output parameters:
   none

 Return code:
   kTRUE if all parameter containers exist in runtime database,
   kFALSE otherwise.

HMUEmulation(void)
 Default constructor

 Input parameters:
   none

 Output parameters:
   none

 Return code:
   none

HMUEmulation(Text_t *name,Text_t *title) : HReconstructor(name, title)
 Default constructor

 Input parameters:
   Text_t *name
      name of the object
   Text_t *title
      title of the object

 Output parameters:
   none

 Return code:
   none

~HMUEmulation(void)
 Destructor, deletes all internaly created objects.

 Input parameters:
   none

 Output parameters:
   none

 Return code:
    none

void reset(void)
 Reset all datamembers that are used on a per event basis.

 Input parameters:
   none

 Output parameters:
   none

 Return code
   none

Bool_t init(void)
 Initialize the task. Create all parameter containers and categories.

 Input parameters:
   none

 Output parameters:
   none

 Return code:
   none

Bool_t reinit(void)
   muDileptons = fTriggerSetup->getMuDileptons();
   muLeptons = fTriggerSetup->getMuLeptons();
   muMaxLeptons = fTriggerSetup->getMuMaxLeptons();
   muRichHits = fTriggerSetup->getMuRichHits();
   muRichTotalHits = fTriggerSetup->getRichTotalHits();
   muMetaHits = fTriggerSetup->getMuMetaHits();

Int_t roundAngle(Float_t fAngle, Int_t iRange, Float_t round)
 The Matching Unit uses an internal mapping made of integers in the range (0,255),
 so the calculated angle has to be rounded to this mapping.

 Input parameters:
   Float_t fAngle
     Value of angle to be rounded
   Int_t iRange
     Range to which the value will be rounded.
   Float_t round
     Rounding factor, default 0.5

 Output parameters:
   none

 Return code:
   Rounded value.

Int_t execute(void)
 Execute the task.
 Read the RICH, TOF and SHOWER hit information. If more than 5 rings in RICH
 found, the trigger decission is made positiv, and no leptons are searched!
 If there are more than 1 hit in META, the search for leptons is done.
 After lepton search, a check is done with a cut on the lepton  number to
 be more than 7. If so, then the trigger decision is set to 2.

 Input parameters:
   none

 Output parameters:
   none

 Return code:
  Allways 0!

Int_t matching(void)
 Match the infomation from RICH TOF and SHOWER, to emulate the matching unit.

 Input Parameters:
   none

 Output parameters:
   none

 Return code:
   Returns number of found leptons.

void updateEmuLeptons(void)
 Store the found leptons in the category.

 Input parameters:
   none

 Output parameters:
   none

 Return code:
   none

void prepareInput(void)
 Retrieve information from categories, and store them in internal variables.

 Input parameters:
   none

 Output parameters:
   none

 Return code:
   none

Bool_t finalize(void)
 Finalize the job of the taskset, nothing to be done here!

 Input parameters:
   none

 Output parameters:
   none

 Return code:
   Allways kTRUE!



Inline Functions


            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:00:09 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.