Line data Source code
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 8 : void SetVerbose(Int_t Verbose){fVerbose=Verbose;} // To set the verbose level
32 :
33 : Int_t RawDataTOF(TBranch* branch);
34 :
35 0 : void SetPackedAcquisitionMode(Bool_t mode) {fPackedAcquisition=mode;};
36 0 : void SetFakeOrphaneProduction(Bool_t flag) {fFakeOrphaneProduction=flag;};
37 0 : void SetMatchingWindow(Int_t matWin) {fMatchingWindow=matWin;}; // setter for fMatchingWindow [bin number]
38 8 : Bool_t GetPackedAcquisitionMode() const {return fPackedAcquisition;};
39 0 : Bool_t GetFakeOrphaneProduction() const {return fFakeOrphaneProduction;};
40 0 : 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);
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);
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 : Int_t fWordsPerDRM;
81 : Int_t fWordsPerTRM;
82 : Int_t fWordsPerChain;
83 :
84 2516450 : ClassDef(AliTOFDDLRawData,4)
85 :
86 : };
87 :
88 : #endif // ALITOFDDLRAWDATA_H
|