X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONTriggerDecision.h;h=dff6d6b6a103a82ea69a701e78ed86a14dd44453;hb=b97c26da4b2d527d08a1b07186508293b98604c3;hp=e39abc2323455d6b2826a196e0dbb413705d8f44;hpb=8210cb40e5182b4f30492ccf9925808fb42dbb12;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONTriggerDecision.h b/MUON/AliMUONTriggerDecision.h index e39abc23234..dff6d6b6a10 100644 --- a/MUON/AliMUONTriggerDecision.h +++ b/MUON/AliMUONTriggerDecision.h @@ -7,13 +7,17 @@ #ifndef ALIMUONTRIGGERDECISION_H #define ALIMUONTRIGGERDECISION_H -//////////////////////////////////////////////// -// MUON Trigger Decision Class // -//////////////////////////////////////////////// +/// \ingroup sim +/// \class AliMUONTriggerDecision +/// \brief MUON trigger decision class +/// +/// \author Philippe Crochet (LPCCFd) + #include +#include "AliMUONLocalTrigger.h" -//class TClonesArray; +class TClonesArray; class AliLoader; class AliMUONData; @@ -49,13 +53,13 @@ class AliMUONTriggerDecision : public TObject void Digits2Trigger(); // main function for digitizer - void Trigger2Trigger();// main function for reconstructor - - void Trigger2Trigger(AliRawReader* rawReader); // for raw data reader purpose - void ClearDigits(); TClonesArray* Digits(Int_t DetectionPlane); - void AddDigit(Int_t id, Int_t* tracks, Int_t* charges, Int_t* digits); + + void AddDigit( + Int_t id, Int_t* tracks, Int_t* charges, Int_t* digits, + Int_t digitindex + ); // print-debug void PrintBitPatXInput(Int_t icirc); @@ -72,61 +76,68 @@ class AliMUONTriggerDecision : public TObject void GetGlobalTrigger(Int_t singlePlus[3], Int_t singleMinus[3], Int_t singleUndef[3], Int_t pairUnlike[3], Int_t pairLike[3]) const; - - +protected: - ClassDef(AliMUONTriggerDecision,1) // Trigger Decision class - - protected: AliMUONTriggerDecision(const AliMUONTriggerDecision& rhs); AliMUONTriggerDecision& operator=(const AliMUONTriggerDecision& rhs); - Int_t fDebug; // print option + void ClearDigitNumbers(); + + void DigitFiredCircuit( + Int_t circuit, Int_t cathode, + Int_t chamber, Int_t digit + ); + + + Int_t fDebug; ///< print option // Global Trigger information [0] : Low pt, [1] : High pt, [2] : All pt - Int_t fGlobalSinglePlus[3]; // tot num of single plus - Int_t fGlobalSingleMinus[3]; // tot num of single minus - Int_t fGlobalSingleUndef[3]; // tot num of single undefined - Int_t fGlobalPairUnlike[3]; // tot num of unlike-sign pairs - Int_t fGlobalPairLike[3]; // tot num of like-sign pairs + Int_t fGlobalSinglePlus[3]; ///< tot num of single plus + Int_t fGlobalSingleMinus[3]; ///< tot num of single minus + Int_t fGlobalSingleUndef[3]; ///< tot num of single undefined + Int_t fGlobalPairUnlike[3]; ///< tot num of unlike-sign pairs + Int_t fGlobalPairLike[3]; ///< tot num of like-sign pairs // Local Trigger information - Int_t fTrigger[234]; // fTrigger = 0 : no trigger, 1 : trigger - Int_t fStripX11[234]; // X strip in MC11 which triggers - Int_t fDev[234]; // deviation which triggers - Int_t fStripY11[234]; // Y strip in MC11 which triggers - Int_t fLutLpt[234][2]; // Local Trigger info Low pt - Int_t fLutHpt[234][2]; // Local Trigger info High pt - Int_t fLutApt[234][2]; // Local Trigger info All pt + Int_t fTrigger[234]; ///< fTrigger = 0 : no trigger, 1 : trigger + Int_t fStripX11[234]; ///< X strip in MC11 which triggers + Int_t fDev[234]; ///< deviation which triggers + Int_t fStripY11[234]; ///< Y strip in MC11 which triggers + Int_t fLutLpt[234][2]; ///< Local Trigger info Low pt + Int_t fLutHpt[234][2]; ///< Local Trigger info High pt + Int_t fLutApt[234][2]; ///< Local Trigger info All pt // bit pattern - Int_t fXbit11[234][16]; // bit pattern XM11 - Int_t fXbit12[234][16]; // bit pattern XM12 - Int_t fXbit21[234][32]; // bit pattern XM21 - Int_t fXbit22[234][32]; // bit pattern XM22 - Int_t fYbit11[234][16]; // bit pattern YM11 - Int_t fYbit12[234][16]; // bit pattern YM12 - Int_t fYbit21[234][16]; // bit pattern YM21 - Int_t fYbit22[234][16]; // bit pattern YM22 - - Int_t fYbit21U[234][16]; // bit pattern YM21 Up - Int_t fYbit22U[234][16]; // bit pattern YM22 Up - Int_t fYbit21D[234][16]; // bit pattern YM21 Down - Int_t fYbit22D[234][16]; // bit pattern YM22 Down - + Int_t fXbit11[234][16]; ///< bit pattern XM11 + Int_t fXbit12[234][16]; ///< bit pattern XM12 + Int_t fXbit21[234][32]; ///< bit pattern XM21 + Int_t fXbit22[234][32]; ///< bit pattern XM22 + Int_t fYbit11[234][16]; ///< bit pattern YM11 + Int_t fYbit12[234][16]; ///< bit pattern YM12 + Int_t fYbit21[234][16]; ///< bit pattern YM21 + Int_t fYbit22[234][16]; ///< bit pattern YM22 + + Int_t fYbit21U[234][16]; ///< bit pattern YM21 Up + Int_t fYbit22U[234][16]; ///< bit pattern YM22 Up + Int_t fYbit21D[234][16]; ///< bit pattern YM21 Down + Int_t fYbit22D[234][16]; ///< bit pattern YM22 Down + + TArrayI fDigitNumbers[234]; //!< The digit number that fired a circuit. - AliLoader* fLoader; //! alice loader - TObjArray* fTriggerCircuit; //! List of Trigger Circuit - TObjArray* fDigits; // temp array for digits (both cathodes !) for trigger + AliLoader* fLoader; //!< alice loader + TObjArray* fTriggerCircuit; //!< List of Trigger Circuit + TObjArray* fDigits; ///< temp array for digits (both cathodes !) for trigger + TArrayI* fDigitIndices; //!< Array of digit index numbers, one for each entry in fDigits. - AliMUONData* fMUONData; //! Data container for MUON subsystem - AliMUON* fMUON; //! pointer to MUON + AliMUONData* fMUONData; //!< Data container for MUON subsystem + AliMUON* fMUON; //!< pointer to MUON // ??? - // TClonesArray* fLocalTriggers; // Local Triggers - // Int_t fNLocalTriggers; // Number of Local Triggers + // TClonesArray* fLocalTriggers; ///< Local Triggers + // Int_t fNLocalTriggers; ///< Number of Local Triggers + ClassDef(AliMUONTriggerDecision,1) // Trigger Decision class }; #endif