]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/MUON/OnlineAnalysis/AliHLTMUONTriggerReconstructor.h
Reimplemented the lookup table. It is now much simpler, smaller and faster to use.
[u/mrichter/AliRoot.git] / HLT / MUON / OnlineAnalysis / AliHLTMUONTriggerReconstructor.h
CommitLineData
6efe69e7 1#ifndef AliHLTMUONTRIGGERRECONSTRUCTOR_H
2#define AliHLTMUONTRIGGERRECONSTRUCTOR_H
b39b98c8 3/* This file is property of and copyright by the ALICE HLT Project *
4 * ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6efe69e7 6
7/* $Id$ */
8
9/**********************************************************************
10 Created on : 16/05/2007
11 Purpose : This class is supposed to read the trigger DDL files and
12 give the output AliHLTMUONTriggerRecordStruct
13 Author : Indranil Das, HEP Division, SINP
14 Email : indra.das@saha.ac.in | indra.ehep@gmail.com
b39b98c8 15
16 Artur Szostak <artursz@iafrica.com>:
17 Completely reimplemented the lookup table to a simplified format.
6efe69e7 18**********************************************************************/
19
227e7192 20#include "AliHLTLogging.h"
6efe69e7 21#include "AliHLTMUONTriggerRecordsBlockStruct.h"
22#include "AliHLTMUONHitReconstructor.h"
960d54ad 23
6efe69e7 24
25class AliHLTMUONTriggerReconstructor : public AliHLTLogging
26{
80590aa1 27public:
28
80590aa1 29 AliHLTMUONTriggerReconstructor();
30 virtual ~AliHLTMUONTriggerReconstructor();
31
80590aa1 32 bool Run(
33 const AliHLTUInt32_t* rawData,
34 AliHLTUInt32_t rawDataSize,
35 AliHLTMUONTriggerRecordStruct* trigRecord,
36 AliHLTUInt32_t& nofTrigRec,
37 bool suppressPartialTrigs = false
38 );
39
b39b98c8 40 void* LookupTableBuffer() { return &fLookupTable; }
41 size_t LookupTableSize() const { return sizeof(fLookupTable); }
80590aa1 42
b39b98c8 43private:
80590aa1 44
45 AliHLTMUONTriggerReconstructor(const AliHLTMUONTriggerReconstructor& rhs); // copy constructor
46 AliHLTMUONTriggerReconstructor& operator=(const AliHLTMUONTriggerReconstructor& rhs); // assignment operator
47
b39b98c8 48 struct LookupTableRow
49 {
50 float fX, fY, fZ;
51 };
6efe69e7 52
b39b98c8 53 AliHLTUInt32_t fMaxRecPointsCount; // max nof reconstructed hit
80590aa1 54 AliHLTInt32_t fTrigRecId; // A running counter for the trigger record ID.
b39b98c8 55
56 // [regional header index][local board ID][chamber][cathode - X/Y][bit set in bit pattern]
57 LookupTableRow fLookupTable[8][16][4][2][16]; // pointer to the array of Lookuptable data
6efe69e7 58};
59
60#endif // AliHLTMUONTRIGGERRECONSTRUCTOR_H