1 #ifndef ALIFITRAWDATA_H
2 #define ALIFITRAWDATA_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ///////////////////////////////////////////////////////////////////////////////
10 // Converts FIT digits into a raw data stream //
12 ///////////////////////////////////////////////////////////////////////////////
21 class AliRawDataHeaderSim;
22 class AliFITRawData : public TObject {
26 AliFITRawData(); // default constructor
27 AliFITRawData(const AliFITRawData &r); // copy constructor
28 virtual ~AliFITRawData(); // destructor
29 AliFITRawData &operator=(const AliFITRawData &r); // ass. op.
31 Int_t RawDataFIT (TBranch* branch);
32 // This method generates the files with the FIT detector data
33 void SetVerbose(Int_t Verbose){fVerbose=Verbose;}
34 // To set the verbose level
36 //This method formats and stores in buf all the digits of FIT module
38 void WriteDataHeader(Bool_t dummy, Bool_t compressed);
39 void WriteDRMDataHeader();
40 void WriteTRMDataHeader(UInt_t slotID, Int_t nWords, Int_t positionOfTRMHeader);
41 //this method is used to write the data header
42 void WriteTrailer(UInt_t slot, Int_t word1, UInt_t word2, UInt_t word3);
43 void WriteChainDataHeader(UInt_t chainNumber,UInt_t slotID);
44 void WriteChainDataTrailer(UInt_t chainNumber);
45 void FillTime(Int_t ch, Int_t iTDC, Int_t time);
51 TClonesArray *fFITdigitArray; //Pointer to the FIT digits
52 Int_t fVerbose; //Verbose level (0:no msg, 1:msg, 2:digits in txt files)
53 UInt_t fBuffer[512]; // buffer for writing rawdata
54 Int_t fIndex; //number of 32 words to be stored into the output file
55 Int_t fEventNumber; // current event number
58 AliFstream* fFile; //logical name of the I/O file
60 ClassDef(AliFITRawData,1) // FIT raw data class