]>
Commit | Line | Data |
---|---|---|
2e9f335b | 1 | /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
979b5a5f | 4 | ///////////////////////////////////////////////////////////////////////////// |
5 | // Class used for generating the files containing raw data, // | |
6 | // required for Data Challenge // | |
7 | ///////////////////////////////////////////////////////////////////////////// | |
8 | ||
9 | /* $Id$ */ | |
2e9f335b | 10 | |
11 | #ifndef AliITSDDLRAWDATA_H | |
12 | #define AliITSDDLRAWDATA_H | |
13 | ||
2e9f335b | 14 | class TTree; |
979b5a5f | 15 | class AliITSDDLModuleMapSDD; |
ad7f2bfa | 16 | class AliITSFOSignalsSPD; |
2e9f335b | 17 | |
18 | class AliITSDDLRawData:public TObject{ | |
19 | public: | |
20 | AliITSDDLRawData();//default constructor | |
21 | virtual ~AliITSDDLRawData(){;}//destructor | |
22 | AliITSDDLRawData(const AliITSDDLRawData &source); // copy constructor | |
23 | AliITSDDLRawData& operator=(const AliITSDDLRawData &source); // ass. op. | |
ad7f2bfa | 24 | Int_t RawDataSPD(TBranch* branch, AliITSFOSignalsSPD* foSignals = NULL); |
2e9f335b | 25 | // This method generates the files with the Silicon pixel detector data |
979b5a5f | 26 | Int_t RawDataSDD(TBranch* branch, AliITSDDLModuleMapSDD* ddlsdd); |
2e9f335b | 27 | // This method generates the files with the Silicon drift detector data |
0421c3d1 | 28 | Int_t RawDataSSD(TBranch* branch); |
a79660fb | 29 | // This method generates the files with the Silicon pixel detector data |
9f992f70 | 30 | void SetVerbose(Int_t Verbose){fVerbose=Verbose;} |
31 | // To set the verbose level | |
d9ed1779 | 32 | void SetSDDRawFormat(Char_t val=7){ |
33 | fSDDRawFormat=val; | |
ad1b4ad1 | 34 | } |
2e9f335b | 35 | private: |
ad7f2bfa | 36 | void GetDigitsSPD(TClonesArray *ITSdigits, Int_t mod,Int_t ddl,UInt_t *buf, AliITSFOSignalsSPD* foSignals = NULL); |
a79660fb | 37 | //This method formats and stores in buf all the digits of a SPD module |
ad1b4ad1 | 38 | void GetDigitsSDDCompressed(TClonesArray *ITSdigits, Int_t mod,UInt_t *buf); |
0b3c7dfc | 39 | void GetDigitsSDD(TClonesArray *ITSdigits, Int_t mod,Int_t modR,Int_t ddl,UInt_t *buf); |
a79660fb | 40 | //This method formats and stores in buf all the digits of a SDD module |
0b3c7dfc | 41 | void GetDigitsSSD(TClonesArray *ITSdigits, Int_t mod,Int_t modR,Int_t ddl,UInt_t *buf); |
a79660fb | 42 | //This method formats and stores in buf all the digits of a SSD module |
a643f6be | 43 | void WriteChipHeader(Int_t ChipAddr,Int_t halfStave,UInt_t &BaseWord); |
ad7f2bfa | 44 | void WriteChipTrailer(UInt_t *buf, Int_t ChipHitCount, Bool_t foBit, UInt_t &BaseWord); |
0b3c7dfc | 45 | void WriteHit(UInt_t *buf,Int_t RowAddr,Int_t HitAddr,UInt_t &BaseWord); |
a79660fb | 46 | //The three previous methods are used to store the data according to the |
47 | //Silicon pixel detector data format | |
9f992f70 | 48 | Int_t fVerbose; //Verbose level (0:no msg, 1:msg, 2:digits in txt files) |
0b3c7dfc | 49 | Int_t fIndex; //number of 32 words to be stored into the output file |
a79660fb | 50 | Int_t fHalfStaveModule; //first or second half of an Half Stave module |
d9ed1779 | 51 | Char_t fSDDRawFormat; // index for SDD raw format |
ad1b4ad1 | 52 | |
d9ed1779 | 53 | ClassDef(AliITSDDLRawData,3) |
2e9f335b | 54 | }; |
55 | ||
56 | #endif |