X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;ds=sidebyside;f=MUON%2FAliMUONGlobalTriggerBoard.h;h=a1b14301ad611b07613ee6824407a9c348ad4a98;hb=6265ad5557e30302fab3e1a3e35bf51bda1ac0e2;hp=28ba145ba7a4a54a0a517479f1eb7f805785e08d;hpb=c05673c991f1897ec6e0dc86c16cdf097cab2177;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONGlobalTriggerBoard.h b/MUON/AliMUONGlobalTriggerBoard.h index 28ba145ba7a..a1b14301ad6 100644 --- a/MUON/AliMUONGlobalTriggerBoard.h +++ b/MUON/AliMUONGlobalTriggerBoard.h @@ -27,7 +27,7 @@ class AliMUONGlobalTriggerBoard : public AliMUONTriggerBoard virtual void Response(); /// response of the algorithm - virtual UShort_t Algo(UShort_t i, UShort_t j, char *thres); + virtual UShort_t Algo(UShort_t i, UShort_t j, const char *thres); /// Reset regional board responses virtual void Reset() {for (Int_t i=0; i<16; i++) fRegionalResponse[i] = 0;} @@ -35,17 +35,29 @@ class AliMUONGlobalTriggerBoard : public AliMUONTriggerBoard /// scan response of regional boards virtual void Scan(Option_t *option) const; - /// \todo add comment + /// Dummy implementation virtual void Resp(Option_t*) const {} - /// Set mask (disable) for regional boards - void Mask(Int_t index, UShort_t mask); + /// Set mask for global input (from regional boards) + void Mask(Int_t index, UInt_t mask); + + /// Build the 4 words (32bits) global input + void BuildGlobalInput(); + /// Apply masks to global input + void MaskGlobalInput(); + /// Global input 4 words (32bits) from regional responses + UInt_t* GetGlobalInput() { return fGlobalInput; } + + void RecomputeRegional(UInt_t globalInput[4]); private: + UShort_t InvertPairBits(Int_t iReg); + UShort_t fRegionalResponse[16]; ///< Regional board responses - UShort_t fMask[2]; ///< Mask + UInt_t fGlobalInput[4]; ///< Global input + UInt_t fMask[4]; ///< Mask for the global input - ClassDef(AliMUONGlobalTriggerBoard,1) //Global trigger board + ClassDef(AliMUONGlobalTriggerBoard,2) //Global trigger board }; #endif