]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONGlobalTriggerBoard.h
fixing small memory leak
[u/mrichter/AliRoot.git] / MUON / AliMUONGlobalTriggerBoard.h
... / ...
CommitLineData
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
8/// \ingroup trigger
9/// \class AliMUONGlobalTriggerBoard
10/// \brief Global trigger board
11///
12// Author: Rachid Guernane (LPCCFd)
13
14#include "AliMUONTriggerBoard.h"
15
16class AliMUONGlobalTriggerBoard : public AliMUONTriggerBoard
17{
18 public:
19
20 AliMUONGlobalTriggerBoard();
21 AliMUONGlobalTriggerBoard(const char *name, Int_t a);
22 virtual ~AliMUONGlobalTriggerBoard();
23
24 /// Set regional board responses
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
29 /// response of the algorithm
30 virtual UShort_t Algo(UShort_t i, UShort_t j, const char *thres);
31
32 /// Reset regional board responses
33 virtual void Reset() {for (Int_t i=0; i<16; i++) fRegionalResponse[i] = 0;}
34
35 /// scan response of regional boards
36 virtual void Scan(Option_t *option) const;
37
38 /// Dummy implementation
39 virtual void Resp(Option_t*) const {}
40
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();
46 /// Apply masks to global input
47 void MaskGlobalInput();
48 /// Global input 4 words (32bits) from regional responses
49 UInt_t* GetGlobalInput() { return fGlobalInput; }
50
51 void RecomputeRegional(UInt_t globalInput[4]);
52
53 private:
54
55 UShort_t InvertPairBits(Int_t iReg);
56
57 UShort_t fRegionalResponse[16]; ///< Regional board responses
58 UInt_t fGlobalInput[4]; ///< Global input
59 UInt_t fMask[4]; ///< Mask for the global input
60
61 ClassDef(AliMUONGlobalTriggerBoard,2) //Global trigger board
62};
63#endif