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