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