Moved from AliTransbit to AliL3Transbit.
[u/mrichter/AliRoot.git] / HLT / misc / AliL3TransBit.h
CommitLineData
9010b535 1#ifndef ALIL3TRANSBIT_H
2#define ALIL3TRANSBIT_H
1a3c8f6e 3
4#include "AliL3RootTypes.h"
5
9010b535 6class AliL3TransBit {
7 public:
8 AliL3TransBit();
9 virtual ~AliL3TransBit();
1a3c8f6e 10 inline Int_t Get0to1(Int_t val0);
11 inline Int_t Get1to0(Int_t val1);
12 Int_t GetBit0() {return fBit0;}
13 Int_t GetBit1() {return fBit1;}
14 Double_t GetX0() {return fX0;}
15 void SetBits(Int_t bit0, Int_t bit1) {fBit0=bit0;fBit1=bit1;}
16 void SetX0(Double_t x0) {fX0=x0;}
17 virtual void Update()=0;
18 virtual Double_t FindOptimumX0()=0;
9010b535 19 protected:
1a3c8f6e 20 Int_t * fTable0; //! table
21 Int_t * fTable1; //! table
22 Int_t fBit0;
23 Int_t fBit1;
24 Double_t fX0;
1a3c8f6e 25
9010b535 26 ClassDef(AliL3TransBit,1)
27};
1a3c8f6e 28
9010b535 29class AliL3TransBit_v1 : public AliL3TransBit {
30 public:
1a3c8f6e 31 virtual void Update();
32 virtual Double_t FindOptimumX0();
9010b535 33 protected:
34
35 ClassDef(AliL3TransBit_v1,1)
1a3c8f6e 36};
37
9010b535 38class AliL3TransBit_v2 : public AliL3TransBit {
39 public:
1a3c8f6e 40 virtual void Update();
41 virtual Double_t FindOptimumX0();
9010b535 42 protected:
1a3c8f6e 43
9010b535 44 ClassDef(AliL3TransBit_v2,1)
45};
1a3c8f6e 46
9010b535 47Int_t AliL3TransBit::Get0to1(Int_t val0)
1a3c8f6e 48{
1a3c8f6e 49 //return compressed bit values
50 return fTable0[val0];
51}
52
9010b535 53Int_t AliL3TransBit::Get1to0(Int_t val1)
1a3c8f6e 54{
55 //return uncompressed bit value
56 return fTable1[val1];
57}
58
9010b535 59#endif
1a3c8f6e 60