]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFDDLRawData.h
Reduction of DPs from DCS - only HV kept
[u/mrichter/AliRoot.git] / TOF / AliTOFDDLRawData.h
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
16 class TBranch;
17 class TClonesArray;
18
19 class AliTOFDigitMap;
20 class AliTOFRawStream;
21
22 class AliTOFDDLRawData:public TObject {
23
24  public:
25
26   AliTOFDDLRawData();                               // default constructor
27   virtual ~AliTOFDDLRawData();                              // destructor
28   AliTOFDDLRawData(const AliTOFDDLRawData &source); // copy constructor
29   AliTOFDDLRawData& operator=(const AliTOFDDLRawData &source); // ass. op.
30   void SetVerbose(Int_t Verbose){fVerbose=Verbose;} // To set the verbose level
31
32   Int_t RawDataTOF(TBranch* branch); 
33
34   void SetPackedAcquisitionMode(Bool_t mode) {fPackedAcquisition=mode;};
35   void SetFakeOrphaneProduction(Bool_t flag) {fFakeOrphaneProduction=flag;};
36   void SetMatchingWindow(Int_t matWin) {fMatchingWindow=matWin;}; // setter for fMatchingWindow [bin number]
37   Bool_t GetPackedAcquisitionMode() const {return fPackedAcquisition;};
38   Bool_t GetFakeOrphaneProduction() const {return fFakeOrphaneProduction;};
39   Int_t  GetMatchingWindow() const {return fMatchingWindow;}; // getter for fMatchingWindow [bin number]
40
41  private:
42
43   void  GetDigits();
44
45   void  ReverseArray(UInt_t a[], Int_t n) const;
46
47   void  MakeDRMheader(Int_t nDDL, UInt_t *buf);
48   void  MakeDRMtrailer(UInt_t *buf);
49   void  MakeLTMheader(UInt_t *buf);
50   void  MakeLTMdata(UInt_t *buf);
51   void  MakeLTMtrailer(UInt_t *buf);
52   void  MakeTRMheader(Int_t nTRM, UInt_t *buf);
53   void  MakeTRMtrailer(UInt_t *buf);
54   void  MakeTRMfiller(UInt_t *buf, UInt_t nWordsPerTRM);
55   void  MakeTRMchainHeader(Int_t iChain, Int_t nTRM, UInt_t *buf);
56   void  MakeTRMchainTrailer(Int_t iChain, UInt_t *buf);
57   void  MakeTDCdigits(Int_t nDDL, Int_t nTRM, Int_t iChain, UInt_t *buf, UInt_t &nWordsPerTRM);
58
59   UInt_t MakeFiller();
60
61   Bool_t HeadOrTail() const;
62
63   Int_t fVerbose;                 //Verbose level (0:no msg, 1:msg,
64                                   //2:digits in txt files)
65   Int_t fIndex;                   //number of 32-bit words to be
66                                   //stored into the output file
67   Bool_t fPackedAcquisition;      //flag for packed/no packed acquisition
68   Bool_t fFakeOrphaneProduction;  //flag to insert fake orphane
69                                   //(leading or trailing) time
70                                   //measurements
71   Int_t fMatchingWindow;          //time window [bin number] where to
72                                   //search time-of-flight measurements
73                                   //for the current event
74
75   AliTOFDigitMap *fTOFdigitMap;   //Pointer to the channel-TOF map
76
77   TClonesArray *fTOFdigitArray;   //Pointer to the TOF digits
78
79   AliTOFRawStream *fTOFrawStream; //Pointer to the AliTOFRawStream class
80
81   ClassDef(AliTOFDDLRawData,2)
82
83 };
84     
85 #endif