ROOT logo
#ifndef ALITOFDECODERSUMMARYDATA_H
#define ALITOFDECODERSUMMARYDATA_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

///////////////////////////////////////////////////////////////
//                                                           //
//   This class provides a summary for decoder data.         //
//                                                           //
///////////////////////////////////////////////////////////////

#include "TObject.h"
#include "AliTOFDRMSummaryData.h"

//decoder summary data
class AliTOFDecoderSummaryData : public TObject
{
 public:
  AliTOFDecoderSummaryData(); //default contructor
  AliTOFDecoderSummaryData(const AliTOFDecoderSummaryData &source); //copy contructor
  AliTOFDecoderSummaryData &operator = (const AliTOFDecoderSummaryData &source); //operator =
  virtual ~AliTOFDecoderSummaryData(); //destructor
  /* getters */
  UInt_t   GetRunNumber() const {return fRunNumber;}; //get run number
  UInt_t   GetEventNumber() const {return fEventNumber;}; //get event number
  UInt_t   GetEquipmentID() const {return fEquipmentID;}; //get equipment ID
  UInt_t   GetInputWords() const {return fInputWords;}; //get input words
  UInt_t   GetDecodedWords() const {return fDecodedWords;}; //get decoded words
  UShort_t GetDecoderStatus() const {return fDecoderStatus;}; //get decoder status
  Bool_t   GetErrorDetected() const {return fErrorDetected;}; //get error detected
  UShort_t GetErrorSlotID() const {return fErrorSlotID;}; // get error slot id
  UShort_t GetCurrentDRMID() const {return fCurrentDRMID;}; //get current DRM ID
  UShort_t GetCurrentSlotID() const {return fCurrentSlotID;}; //get current slot ID
  UShort_t GetCurrentChain() const {return fCurrentChain;}; //get current chain
  Bool_t   GetV2718Patch() const {return fV2718Patch;}; //get V2718 patch
  Bool_t   GetRecoverError() const {return fRecoverError;}; //get recover error
  Bool_t   GetRecoveringError() const {return fRecoveringError;}; //get recovering error
  Bool_t   GetSpider() const {return fSpider;}; //get spider flag
  AliTOFDRMSummaryData *GetDRMSummaryData() const {return fDRMSummaryData;}; //get DRM summary data
  /* setters */
  void SetRunNumber(UInt_t RunNumber) {fRunNumber = RunNumber;}; //set run number
  void SetEventNumber(UInt_t EventNumber) {fEventNumber = EventNumber;}; //set event number
  void SetEquipmentID(UInt_t EquipmentID) {fEquipmentID = EquipmentID;}; //set equipment ID
  void SetInputWords(UInt_t InputWords) {fInputWords = InputWords;}; //set input words
  void SetDecodedWords(UInt_t DecodedWords) {fDecodedWords = DecodedWords;}; //set decoded words
  void SetDecoderStatus(UShort_t DecoderStatus) {fDecoderStatus = DecoderStatus;}; //set decoder status
  void SetErrorDetected(Bool_t ErrorDetected) {fErrorDetected = ErrorDetected;}; //set error detected
  void SetErrorSlotID(UShort_t value) {fErrorSlotID |= 1<< value;}; // set error slot id
  void SetCurrentDRMID(UShort_t CurrentDRMID) {fCurrentDRMID = CurrentDRMID;}; //set current DRM ID
  void SetCurrentSlotID(UShort_t CurrentSlotID) {fCurrentSlotID = CurrentSlotID;}; //set current slot ID
  void SetCurrentChain(UShort_t CurrentChain) {fCurrentChain = CurrentChain;}; //set current chain
  void SetV2718Patch(Bool_t V2718Patch) {fV2718Patch = V2718Patch;}; //set V2718 patch
  void SetRecoverError(Bool_t RecoverError) {fRecoverError = RecoverError;}; //set recover error
  void SetRecoveringError(Bool_t RecoveringError) {fRecoveringError = RecoveringError;}; //set recovering error
  void SetSpider(Bool_t Spider) {fSpider = Spider;}; //set spider flag
  /* methods */
  void Reset(); //reset
 private:
  UInt_t   fRunNumber; //run number
  UInt_t   fEventNumber; //event number
  UInt_t   fEquipmentID; //equipment ID
  UInt_t   fInputWords; //input words
  UInt_t   fDecodedWords; //decoded words
  UShort_t fDecoderStatus; //decoder status
  Bool_t   fErrorDetected; //error detected
  UShort_t   fErrorSlotID; //error slot ID
  UShort_t fCurrentDRMID; //current DRM ID
  UShort_t fCurrentSlotID; //current slot ID
  UShort_t fCurrentChain; //current chain
  Bool_t   fV2718Patch; //V2718 patch
  Bool_t   fRecoverError; //recover error
  Bool_t   fRecoveringError; //recoverisng error
  Bool_t   fSpider; //spider flag
  AliTOFDRMSummaryData *fDRMSummaryData; //DRM summary data

  ClassDef(AliTOFDecoderSummaryData, 1);
};

#endif /* ALITOFDECODERSUMMARYDATA */
 AliTOFDecoderSummaryData.h:1
 AliTOFDecoderSummaryData.h:2
 AliTOFDecoderSummaryData.h:3
 AliTOFDecoderSummaryData.h:4
 AliTOFDecoderSummaryData.h:5
 AliTOFDecoderSummaryData.h:6
 AliTOFDecoderSummaryData.h:7
 AliTOFDecoderSummaryData.h:8
 AliTOFDecoderSummaryData.h:9
 AliTOFDecoderSummaryData.h:10
 AliTOFDecoderSummaryData.h:11
 AliTOFDecoderSummaryData.h:12
 AliTOFDecoderSummaryData.h:13
 AliTOFDecoderSummaryData.h:14
 AliTOFDecoderSummaryData.h:15
 AliTOFDecoderSummaryData.h:16
 AliTOFDecoderSummaryData.h:17
 AliTOFDecoderSummaryData.h:18
 AliTOFDecoderSummaryData.h:19
 AliTOFDecoderSummaryData.h:20
 AliTOFDecoderSummaryData.h:21
 AliTOFDecoderSummaryData.h:22
 AliTOFDecoderSummaryData.h:23
 AliTOFDecoderSummaryData.h:24
 AliTOFDecoderSummaryData.h:25
 AliTOFDecoderSummaryData.h:26
 AliTOFDecoderSummaryData.h:27
 AliTOFDecoderSummaryData.h:28
 AliTOFDecoderSummaryData.h:29
 AliTOFDecoderSummaryData.h:30
 AliTOFDecoderSummaryData.h:31
 AliTOFDecoderSummaryData.h:32
 AliTOFDecoderSummaryData.h:33
 AliTOFDecoderSummaryData.h:34
 AliTOFDecoderSummaryData.h:35
 AliTOFDecoderSummaryData.h:36
 AliTOFDecoderSummaryData.h:37
 AliTOFDecoderSummaryData.h:38
 AliTOFDecoderSummaryData.h:39
 AliTOFDecoderSummaryData.h:40
 AliTOFDecoderSummaryData.h:41
 AliTOFDecoderSummaryData.h:42
 AliTOFDecoderSummaryData.h:43
 AliTOFDecoderSummaryData.h:44
 AliTOFDecoderSummaryData.h:45
 AliTOFDecoderSummaryData.h:46
 AliTOFDecoderSummaryData.h:47
 AliTOFDecoderSummaryData.h:48
 AliTOFDecoderSummaryData.h:49
 AliTOFDecoderSummaryData.h:50
 AliTOFDecoderSummaryData.h:51
 AliTOFDecoderSummaryData.h:52
 AliTOFDecoderSummaryData.h:53
 AliTOFDecoderSummaryData.h:54
 AliTOFDecoderSummaryData.h:55
 AliTOFDecoderSummaryData.h:56
 AliTOFDecoderSummaryData.h:57
 AliTOFDecoderSummaryData.h:58
 AliTOFDecoderSummaryData.h:59
 AliTOFDecoderSummaryData.h:60
 AliTOFDecoderSummaryData.h:61
 AliTOFDecoderSummaryData.h:62
 AliTOFDecoderSummaryData.h:63
 AliTOFDecoderSummaryData.h:64
 AliTOFDecoderSummaryData.h:65
 AliTOFDecoderSummaryData.h:66
 AliTOFDecoderSummaryData.h:67
 AliTOFDecoderSummaryData.h:68
 AliTOFDecoderSummaryData.h:69
 AliTOFDecoderSummaryData.h:70
 AliTOFDecoderSummaryData.h:71
 AliTOFDecoderSummaryData.h:72
 AliTOFDecoderSummaryData.h:73
 AliTOFDecoderSummaryData.h:74
 AliTOFDecoderSummaryData.h:75
 AliTOFDecoderSummaryData.h:76
 AliTOFDecoderSummaryData.h:77
 AliTOFDecoderSummaryData.h:78
 AliTOFDecoderSummaryData.h:79
 AliTOFDecoderSummaryData.h:80