]> git.uio.no Git - u/mrichter/AliRoot.git/blob - START/AliSTARTRawData.h
22699ee2cf2e2a2d35839ea4d05972f39532c468
[u/mrichter/AliRoot.git] / START / AliSTARTRawData.h
1 #ifndef ALISTARTRAWDATA_H
2 #define ALISTARTRAWDATA_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 ///////////////////////////////////////////////////////////////////////////////
9 //                                                                           //
10 //  Converts START digits into a raw data stream                               //
11 //                                                                           //
12 ///////////////////////////////////////////////////////////////////////////////
13
14 #include "TObject.h"
15 class AliSTART;
16 class AliSTARTdigit;
17 //class TTRee;
18 //class TBranch;
19 //class AliRawDataHeader;
20 class AliSTARTRawData : public TObject {
21
22  public:
23
24   AliSTARTRawData();                                         // default constructor
25   AliSTARTRawData(const AliSTARTRawData &r);                 // copy constructor
26   virtual ~AliSTARTRawData();                                // destructor
27   AliSTARTRawData &operator=(const AliSTARTRawData &r);      // ass. op.
28
29    Int_t RawDataSTART (AliSTARTdigit *fDigits); 
30   // This method generates the files with the TOF detector data
31   void SetVerbose(Int_t Verbose){fVerbose=Verbose;}
32   // To set the verbose level
33   void  GetDigits(AliSTARTdigit *fDigits, UInt_t *buf);
34   //This method formats and stores in buf all the digits of a TOF module
35
36   void  PackWord(UInt_t &BaseWord, UInt_t Word, Int_t StartBit, Int_t StopBit);
37   //This method stores the value of the variable Word of StopBit-StartBit+1 bits 
38   //in BaseWord, starting from the bit StartBit
39
40
41  //START digits arrays
42
43
44   TArrayI *TimeTDC() {return fTimeTDC;}
45   TArrayI *ADC() {return fADC;}
46   TArrayI *TimeTDCAmp() {return fTimeTDCAmp;}
47   TArrayI *ADCAmp() {return fADCAmp;}
48   TArrayI *SumMult() {return fSumMult;}
49
50  
51   
52  protected:
53
54   Int_t fVerbose;            //Verbose level (0:no msg, 1:msg, 2:digits in txt files)
55   Int_t fIndex;              //number of 32 words to be stored into the output file
56
57   Int_t fTimeDiff     ; //time difference 
58   Int_t fMeanTime      ; // average time - ALICE start signal 
59   Int_t fBestTimeLeft;   //first particle on the left
60   Int_t fBestTimeRight;  //first particle on the right
61   TArrayI * fTimeTDC;        //TDC on the each PMT
62   TArrayI *  fADC;           //QTC (ADC) on the each PMT
63   TArrayI * fTimeTDCAmp;    // TDC with amplified signal
64   TArrayI *  fADCAmp;        //QTC amplified
65   TArrayI *  fSumMult;       //multiplicity: left, right, left&right + all amplified
66   AliSTARTdigit *fDigits;  //! The START digits manager
67
68   ClassDef(AliSTARTRawData,1)             //  START raw data class
69
70 };
71 #endif