#101318: Patch for various problems in AliROOT
[u/mrichter/AliRoot.git] / TOF / AliTOFTRMSummaryData.h
1 #ifndef ALITOFTRMSUMMARYDATA_H
2 #define ALITOFTRMSUMMARYDATA_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /*
8   author: Roberto Preghenella (R+), preghenella@bo.infn.it
9 */
10
11 ///////////////////////////////////////////////////////////////
12 //                                                           //
13 //   This class provides a summary for TRM data.             //
14 //                                                           //
15 ///////////////////////////////////////////////////////////////
16
17 #include "TObject.h"
18 #include "AliTOFChainSummaryData.h"
19
20 #define N_CHAIN 2
21 class AliTOFTRMSummaryData : public TObject
22 {
23  public:
24   AliTOFTRMSummaryData(); //default contructor
25   AliTOFTRMSummaryData(const AliTOFTRMSummaryData &source); //copy contructor
26   AliTOFTRMSummaryData &operator = (const AliTOFTRMSummaryData &source); //operator =
27   virtual ~AliTOFTRMSummaryData(); //destructor
28   /* getters */
29   Bool_t   GetHeader() const {return fHeader;}; //get header
30   Bool_t   GetTrailer() const {return fTrailer;}; //get trailer
31   UShort_t GetSlotID() const {return fSlotID;}; //get slot ID
32   UShort_t GetEventWords() const {return fEventWords;}; //get event words
33   UShort_t GetACQBits() const {return fACQBits;}; //get ACQ bits
34   UShort_t GetLBit() const {return fLBit;}; //get L bit
35   UShort_t GetEBit() const {return fEBit;}; //get E bit
36   UShort_t GetEventCRC() const {return fEventCRC;}; //get event CRC
37   UShort_t GetEventCounter() const {return fEventCounter;}; //get event counter 
38   UShort_t GetDecoderCRC() const {return fDecoderCRC;}; //get decoder CRC
39   AliTOFChainSummaryData *GetChainSummaryData(Int_t Chain) const {return Chain < N_CHAIN ? fChainSummaryData[Chain] : 0x0;}; //get chain summary data
40   /* setters */
41   void SetHeader(Bool_t Header) {fHeader = Header;}; //set header
42   void SetTrailer(Bool_t Trailer) {fTrailer = Trailer;}; //set trailer
43   void SetSlotID(UShort_t SlotID) {fSlotID = SlotID;}; //set slot ID
44   void SetEventWords(UShort_t EventWords) {fEventWords = EventWords;}; //set event words
45   void SetACQBits(UShort_t ACQBits) {fACQBits = ACQBits;}; //set ACQ bits
46   void SetLBit(UShort_t LBit) {fLBit = LBit;}; //set L bit
47   void SetEBit(UShort_t EBit) {fEBit = EBit;}; //set E bit
48   void SetEventCRC(UShort_t EventCRC) {fEventCRC = EventCRC;}; //set event CRC
49   void SetEventCounter(UShort_t EventCounter) {fEventCounter = EventCounter;}; //set event counter
50   void SetDecoderCRC(UShort_t DecoderCRC) {fDecoderCRC = DecoderCRC;}; //set decoder CRC
51   /* methods */
52   void Reset(); //reset
53  private:
54   Bool_t   fHeader; //header detected
55   Bool_t   fTrailer; //trailer detected
56   UShort_t fSlotID; //slot ID [3-12]
57   UShort_t fEventWords; //number of TRM words
58   UShort_t fACQBits; //HPTDC aquisition mode [0-3]
59   UShort_t fLBit; //SEU detected inside LUT tables
60   UShort_t fEBit; //empty event inserted while fixing SEU 
61   UShort_t fEventCRC; //TRM computed CRC
62   UShort_t fEventCounter; //event counter
63   UShort_t fDecoderCRC; //decoder computed CRC
64   AliTOFChainSummaryData *fChainSummaryData[N_CHAIN]; //chain summary data
65
66   ClassDef(AliTOFTRMSummaryData, 1);
67 };
68
69 #endif /* ALITOFTRMSUMMARYDATA_H */