Updates to AddTask macro from Chris
[u/mrichter/AliRoot.git] / MUON / AliMUONGlobalTriggerBoard.h
CommitLineData
d15ca731 1#ifndef ALIMUONGLOBALTRIGGERBOARD_H
2#define ALIMUONGLOBALTRIGGERBOARD_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
c1975ba7 8/// \ingroup trigger
edd00c2d 9/// \class AliMUONGlobalTriggerBoard
71a2d3aa 10/// \brief Global trigger board
edd00c2d 11///
c4ee792d 12// Author: Rachid Guernane (LPCCFd)
d15ca731 13
14#include "AliMUONTriggerBoard.h"
15
16class AliMUONGlobalTriggerBoard : public AliMUONTriggerBoard
17{
18 public:
19
20 AliMUONGlobalTriggerBoard();
21 AliMUONGlobalTriggerBoard(const char *name, Int_t a);
71a2d3aa 22 virtual ~AliMUONGlobalTriggerBoard();
23
24 /// Set regional board responses
d15ca731 25 virtual void SetRegionalResponse(UShort_t resp[16]) {for (Int_t i=0; i<16; i++) fRegionalResponse[i] = resp[i];}
26
27 virtual void Response();
28
c05673c9 29 /// response of the algorithm
a6e0ebfe 30 virtual UShort_t Algo(UShort_t i, UShort_t j, const char *thres);
71a2d3aa 31
32 /// Reset regional board responses
d15ca731 33 virtual void Reset() {for (Int_t i=0; i<16; i++) fRegionalResponse[i] = 0;}
34
c05673c9 35 /// scan response of regional boards
edd00c2d 36 virtual void Scan(Option_t *option) const;
d15ca731 37
03af98cb 38 /// Dummy implementation
edd00c2d 39 virtual void Resp(Option_t*) const {}
d15ca731 40
41a38dec 41 /// Set mask for global input (from regional boards)
42 void Mask(Int_t index, UInt_t mask);
43
44 /// Build the 4 words (32bits) global input
45 void BuildGlobalInput();
f4e2cda2 46 /// Apply masks to global input
47 void MaskGlobalInput();
41a38dec 48 /// Global input 4 words (32bits) from regional responses
49 UInt_t* GetGlobalInput() { return fGlobalInput; }
a026ce9e 50
51 void RecomputeRegional(UInt_t globalInput[4]);
41922e78 52
d15ca731 53 private:
54
a026ce9e 55 UShort_t InvertPairBits(Int_t iReg);
56
c05673c9 57 UShort_t fRegionalResponse[16]; ///< Regional board responses
41a38dec 58 UInt_t fGlobalInput[4]; ///< Global input
59 UInt_t fMask[4]; ///< Mask for the global input
d15ca731 60
41a38dec 61 ClassDef(AliMUONGlobalTriggerBoard,2) //Global trigger board
d15ca731 62};
63#endif