]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALITOFDDLRAWDATA_H | |
2 | #define ALITOFDDLRAWDATA_H | |
3 | ||
4 | /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //////////////////////////////////////////////////////////////////////////// | |
8 | // // | |
9 | // Class used for generating the files containing raw data, // | |
10 | // required for Data Challenge // | |
11 | // // | |
12 | //////////////////////////////////////////////////////////////////////////// | |
13 | ||
14 | #include "TObject.h" | |
15 | //#include "AliTOFCableLengthMap.h" | |
16 | ||
17 | class TBranch; | |
18 | class TClonesArray; | |
19 | ||
20 | class AliTOFDigitMap; | |
21 | //class AliTOFRawStream; | |
22 | ||
23 | class AliTOFDDLRawData:public TObject { | |
24 | ||
25 | public: | |
26 | ||
27 | AliTOFDDLRawData(); // default constructor | |
28 | virtual ~AliTOFDDLRawData(); // destructor | |
29 | AliTOFDDLRawData(const AliTOFDDLRawData &source); // copy constructor | |
30 | AliTOFDDLRawData& operator=(const AliTOFDDLRawData &source); // ass. op. | |
31 | void SetVerbose(Int_t Verbose){fVerbose=Verbose;} // To set the verbose level | |
32 | ||
33 | Int_t RawDataTOF(TBranch* branch); | |
34 | ||
35 | void SetPackedAcquisitionMode(Bool_t mode) {fPackedAcquisition=mode;}; | |
36 | void SetFakeOrphaneProduction(Bool_t flag) {fFakeOrphaneProduction=flag;}; | |
37 | void SetMatchingWindow(Int_t matWin) {fMatchingWindow=matWin;}; // setter for fMatchingWindow [bin number] | |
38 | Bool_t GetPackedAcquisitionMode() const {return fPackedAcquisition;}; | |
39 | Bool_t GetFakeOrphaneProduction() const {return fFakeOrphaneProduction;}; | |
40 | Int_t GetMatchingWindow() const {return fMatchingWindow;}; // getter for fMatchingWindow [bin number] | |
41 | ||
42 | private: | |
43 | ||
44 | void GetDigits(); | |
45 | ||
46 | void ReverseArray(UInt_t a[], Int_t n) const; | |
47 | ||
48 | void MakeDRMheader(Int_t nDDL, UInt_t *buf); | |
49 | void MakeDRMtrailer(UInt_t *buf); | |
50 | void MakeLTMheader(UInt_t *buf); | |
51 | void MakeLTMdata(UInt_t *buf); | |
52 | void MakeLTMtrailer(UInt_t *buf); | |
53 | void MakeTRMheader(Int_t nTRM, UInt_t *buf); | |
54 | void MakeTRMtrailer(UInt_t *buf); | |
55 | void MakeTRMfiller(UInt_t *buf, UInt_t nWordsPerTRM); | |
56 | void MakeTRMchainHeader(Int_t iChain, Int_t nTRM, UInt_t *buf); | |
57 | void MakeTRMchainTrailer(Int_t iChain, UInt_t *buf); | |
58 | void MakeTDCdigits(Int_t nDDL, Int_t nTRM, Int_t iChain, UInt_t *buf, UInt_t &nWordsPerTRM); | |
59 | ||
60 | UInt_t MakeFiller() const; | |
61 | ||
62 | Bool_t HeadOrTail() const; | |
63 | ||
64 | Int_t fVerbose; //Verbose level (0:no msg, 1:msg, | |
65 | //2:digits in txt files) | |
66 | Int_t fIndex; //number of 32-bit words to be | |
67 | //stored into the output file | |
68 | Bool_t fPackedAcquisition; //flag for packed/no packed acquisition | |
69 | Bool_t fFakeOrphaneProduction; //flag to insert fake orphane | |
70 | //(leading or trailing) time | |
71 | //measurements | |
72 | Int_t fMatchingWindow; //time window [bin number] where to | |
73 | //search time-of-flight measurements | |
74 | //for the current event | |
75 | ||
76 | AliTOFDigitMap *fTOFdigitMap; //Pointer to the channel-TOF map | |
77 | ||
78 | TClonesArray *fTOFdigitArray; //Pointer to the TOF digits | |
79 | ||
80 | //AliTOFRawStream *fTOFrawStream; //Pointer to the AliTOFRawStream class | |
81 | ||
82 | //AliTOFCableLengthMap *fTOFCableLengthMap; // Pointer to the map of Amphenol cable length | |
83 | ||
84 | ClassDef(AliTOFDDLRawData,3) | |
85 | ||
86 | }; | |
87 | ||
88 | #endif // ALITOFDDLRAWDATA_H |