Additional protection
[u/mrichter/AliRoot.git] / VZERO / AliVZEROBuffer.h
1 #ifndef AliVZEROBUFFER_H
2 #define AliVZEROBUFFER_H
3 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /////////////////////////////////////////////////////////////////////
7 // Class used for storing VZERO digits according to the DDLs format//
8 /////////////////////////////////////////////////////////////////////
9
10 #ifdef __CINT__
11 class fstream;
12 #else
13 #include "Riostream.h"
14 #endif
15
16 #include "AliFstream.h"
17
18 class AliVZEROBuffer:public TObject{
19
20 public:
21   AliVZEROBuffer();
22   AliVZEROBuffer(const char* fileName); //constructor
23   virtual ~AliVZEROBuffer(); //destructor
24   void    WriteTriggerInfo(UInt_t trigger);
25   void    WriteTriggerScalers();
26   void    WriteBunchNumbers();  
27   void    WriteChannel(Int_t channel, Short_t *adc, Bool_t integrator);
28   void    WriteBeamFlags(Bool_t *bbFlag, Bool_t *bgFlag);
29   void    WriteMBInfo();
30   void    WriteMBFlags();  
31   void    WriteBeamScalers();
32   void    WriteTiming(Float_t time, Float_t width);
33
34 private:
35   AliVZEROBuffer(const AliVZEROBuffer &source); // copy constructor
36   AliVZEROBuffer& operator=(const AliVZEROBuffer &source); // ass. op.
37
38   UInt_t      fRemainingWord; // Remaining data word between even and odd channel's data
39   AliFstream* f;      //The IO file name
40   ClassDef(AliVZEROBuffer,2)
41 };
42
43 #endif