#ifndef ALICALORAWSTREAMV3_H #define ALICALORAWSTREAMV3_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ /* $Id: $ */ /////////////////////////////////////////////////////////////////////////////// /// /// This class provides access to Calo digits in raw data. /// /// Yuri Kharlov. 23 June 2009 /// /////////////////////////////////////////////////////////////////////////////// // --- ROOT system --- #include "TString.h" // --- AliRoot header files --- #include "AliAltroRawStreamV3.h" class AliRawReader; class AliAltroMapping; class AliCaloRawStreamV3: public AliAltroRawStreamV3 { public : AliCaloRawStreamV3(AliRawReader* rawReader, TString calo, AliAltroMapping **mapping = NULL); virtual ~AliCaloRawStreamV3(); virtual void Reset(); virtual Bool_t NextChannel(); Int_t GetModule() const {return fModule;} Int_t GetRow() const {return fRow ;} // EMCAL notation Int_t GetColumn() const {return fColumn;} // EMCAL notation Int_t GetCellX() const {return fRow ;} // PHOS notation Int_t GetCellZ() const {return fColumn;} // PHOS notation Int_t GetNRCU() const {return fNRCU ;} Int_t GetNSides() const {return fNSides;} TString GetCalorimeter() const {return fCalo ;} enum EAliCaloFlag { kLowGain=0, kHighGain=1, kTRUData=2, kLEDMonData=3 }; Bool_t IsLowGain() const {return (fCaloFlag == kLowGain) ;} Bool_t IsHighGain() const {return (fCaloFlag == kHighGain) ;} Bool_t IsTRUData() const {return (fCaloFlag == kTRUData) ;} Bool_t IsLEDMonData() const {return (fCaloFlag == kLEDMonData);} Int_t GetCaloFlag() const { return fCaloFlag; } Int_t GetFilter() const { return fFilter; } void SkipData(EAliCaloFlag caloFlag=kLEDMonData) { fFilter |= (1<