]> git.uio.no Git - u/mrichter/AliRoot.git/blame - T0/AliT0RawData.h
Moving non-implemented copy constructor and assignment operator to the private sectio...
[u/mrichter/AliRoot.git] / T0 / AliT0RawData.h
CommitLineData
dc7ca31d 1#ifndef ALIT0RAWDATA_H
2#define ALIT0RAWDATA_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 T0 digits into a raw data stream //
11// //
12///////////////////////////////////////////////////////////////////////////////
13
14#include "TObject.h"
15
16class AliT0;
17class AliT0digit;
18class AliFstream;
19class TFile;
29d3e0eb 20class TMap;
dc7ca31d 21class AliRawDataHeaderSim;
22class AliT0RawData : public TObject {
23
24 public:
25
26 AliT0RawData(); // default constructor
27 AliT0RawData(const AliT0RawData &r); // copy constructor
28 virtual ~AliT0RawData(); // destructor
29 AliT0RawData &operator=(const AliT0RawData &r); // ass. op.
30
31 Int_t RawDataT0 (AliT0digit *fDigits);
32 // This method generates the files with the TOF detector data
33 void SetVerbose(Int_t Verbose){fVerbose=Verbose;}
34 // To set the verbose level
35 void GetDigits(AliT0digit *fDigits);
36 //This method formats and stores in buf all the digits of a TOF module
37
38 void PackWord(UInt_t &BaseWord, UInt_t Word, Int_t StartBit, Int_t StopBit);
39 //This method stores the value of the variable Word of StopBit-StartBit+1 bits
40 //in BaseWord, starting from the bit StartBit
41
42 void WriteDataHeader(Bool_t dummy, Bool_t compressed);
43 void WriteDRMDataHeader();
44 void WriteTRMDataHeader(UInt_t slotID, Int_t nWords, Int_t positionOfTRMHeader);
45 //this method is used to write the data header
46 void WriteTrailer(UInt_t slot, Int_t word1, UInt_t word2, UInt_t word3);
47 void WriteChainDataHeader(UInt_t chainNumber,UInt_t slotID);
5325480c 48 void WriteChainDataTrailer(UInt_t chainNumber);
dc7ca31d 49 void FillTime(Int_t ch, Int_t iTDC, Int_t time);
50
51 //T0 digits arrays
52
53
54 TArrayI *TimeLED() {return fTimeLED;}
55 TArrayI *ADC1() {return fADC1;}
56 TArrayI *TimeCFD() {return fTimeCFD;}
57 TArrayI *ADC0() {return fADC0;}
58
59
60
61 protected:
62
63 Int_t fVerbose; //Verbose level (0:no msg, 1:msg, 2:digits in txt files)
64 UInt_t fBuffer[512]; // buffer for writing rawdata
65 Int_t fIndex; //number of 32 words to be stored into the output file
66 Int_t fEventNumber; // current event number
dc7ca31d 67 TArrayI * fTimeCFD; //TDC on the each PMT
68 TArrayI * fADC1; //QTC (ADC) on the each PMT
69 TArrayI * fTimeLED; // TDC with amplified signal
70 TArrayI * fADC0; //QTC amplified
71 AliFstream* fFile; //logical name of the I/O file
c41ceaac 72 UInt_t fDataHeaderPos;//Data header position
73 UInt_t fDRMDataHeaderPos;//Data DRM header position
74 UInt_t fTRMDataHeaderPos;//Data TRM header position
dc7ca31d 75 AliT0digit *fDigits; //! The T0 digits manager
29d3e0eb 76 AliT0Parameters *fParam; // pointer to T0parameters
77 TMap fLookUp;
c41ceaac 78
79 ClassDef(AliT0RawData,2) // T0 raw data class
dc7ca31d 80
81};
82
83typedef AliT0RawData AliSTARTRawData; // for backward compatibility
84
85#endif