]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIITSCOMPRESSRAWDATASDD_H | |
2 | #define ALIITSCOMPRESSRAWDATASDD_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id$ */ | |
8 | ||
9 | #include<TObject.h> | |
10 | #include<TString.h> | |
11 | ||
12 | /////////////////////////////////////////////////////////////////// | |
13 | // // | |
14 | // Class to decode the SDD Raw Data from the CarlosRX format to // | |
15 | // a compressed format consisting in a word of 32 bit per cell // | |
16 | // Origin: F.Prino, Torino, prino@to.infn.it // | |
17 | // // | |
18 | /////////////////////////////////////////////////////////////////// | |
19 | ||
20 | class AliRawReader; | |
21 | ||
22 | class AliITSCompressRawDataSDD : public TObject { | |
23 | ||
24 | public: | |
25 | AliITSCompressRawDataSDD(); | |
26 | ~AliITSCompressRawDataSDD(); | |
27 | void SetRawReader(AliRawReader* rd){ | |
28 | fRawReader=rd; | |
29 | } | |
30 | void SetPointerToData(UChar_t* pt){ | |
31 | fPointerToData=pt; | |
32 | } | |
33 | void SetSize(UInt_t siz){ | |
34 | fSizeInMemory=siz; | |
35 | } | |
36 | ||
37 | UInt_t CompressEvent(UChar_t* inputPtr); | |
38 | ||
39 | static UInt_t MakeDataWord(Int_t carlos, Int_t side, Int_t anode, Int_t tb, Int_t adc){ | |
40 | UInt_t word= (carlos<<27) + (side<<26) + (anode<<18) + (tb<<10) + adc; | |
41 | return word; | |
42 | } | |
43 | ||
44 | static UInt_t MakeEndOfModuleWord(Int_t carlos){ | |
45 | UInt_t word= (15<<28) + carlos; | |
46 | return word; | |
47 | } | |
48 | ||
49 | static UInt_t MakeJitterWord(Int_t jitter){ | |
50 | UInt_t word= (8<<28) + jitter; | |
51 | return word; | |
52 | } | |
53 | ||
54 | protected: | |
55 | ||
56 | private: | |
57 | AliITSCompressRawDataSDD(const AliITSCompressRawDataSDD& /*c*/); | |
58 | ||
59 | AliITSCompressRawDataSDD& operator=(const AliITSCompressRawDataSDD& /*c*/); | |
60 | ||
61 | ||
62 | AliRawReader* fRawReader; // pointer to raw reader | |
63 | UChar_t* fPointerToData; // pointer to the start of data in memory | |
64 | UInt_t fSizeInMemory; // free space in memory in Bytes | |
65 | ||
66 | ClassDef(AliITSCompressRawDataSDD, 0) | |
67 | }; | |
68 | ||
69 | #endif |