ROOT logo
AliRoot » RAW » AliCaloRawStream

class AliCaloRawStream: public AliAltroRawStream


 This class provides access to PHOS/EMCAL digits in raw data.

 It loops over all PHOS/EMCAL digits in the raw data given by the AliRawReader.
 The Next method goes to the next digit. If there are no digits left
 it returns kFALSE.
 Several getters provide information about the current digit.
 usage:
 root > AliRawReaderFile rawReader ;
 root > AliCaloRawStream input(&rawReader) ;
 root > while (input.Next()) .....

Modification: Class exported from PHOS to be used by EMCAL and PHOS
November 2006 Gustavo Conesa Balbastre

Function Members (Methods)

public:
AliCaloRawStream(AliRawReader* rawReader, TString calo, AliAltroMapping** mapping = NULL)
virtual~AliCaloRawStream()
voidTObject::AbstractMethod(const char* method) const
voidAliAltroRawStream::AddMappingErrorLog(const char* message = NULL)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
UShort_tAliAltroRawStream::GetActiveFECsA() const
UShort_tAliAltroRawStream::GetActiveFECsB() const
Int_tAliAltroRawStream::GetAltro() const
UInt_tAliAltroRawStream::GetAltroCFG1() const
UInt_tAliAltroRawStream::GetAltroCFG2() const
UChar_tAliAltroRawStream::GetBaselineCorr() const
Int_tAliAltroRawStream::GetBranch() const
Int_tGetCaloFlag() const
TStringGetCalorimeter() const
Int_tAliAltroRawStream::GetChannel() const
Int_tAliAltroRawStream::GetChannelPayloadSize() const
Int_tGetColumn() const
Int_tAliAltroRawStream::GetDDLNumber() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
UShort_tAliAltroRawStream::GetERRREG2() const
Int_tAliAltroRawStream::GetFEC() const
UInt_tAliAltroRawStream::GetFECERRA() const
UInt_tAliAltroRawStream::GetFECERRB() const
Int_tGetFilter() const
UChar_tAliAltroRawStream::GetGlitchFilter() const
Int_tAliAltroRawStream::GetHWAddress() const
virtual const char*TObject::GetIconName() const
Double_tAliAltroRawStream::GetL1Phase() const
Int_tGetModule() const
Bool_tAliAltroRawStream::GetNAltroBuffers() const
virtual const char*TObject::GetName() const
UShort_tAliAltroRawStream::GetNChAddrMismatch() const
UShort_tAliAltroRawStream::GetNChLengthMismatch() const
UChar_tAliAltroRawStream::GetNNonZSPostsamples() const
UChar_tAliAltroRawStream::GetNNonZSPresamples() const
UChar_tAliAltroRawStream::GetNPostsamples() const
UChar_tAliAltroRawStream::GetNPresamples() const
UChar_tAliAltroRawStream::GetNPretriggerSamples() const
Int_tGetNRCU() const
UShort_tAliAltroRawStream::GetNSamplesPerCh() const
Int_tGetNSides() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Bool_tAliAltroRawStream::GetPolarity() const
Int_tGetPrevColumn() const
Int_tAliAltroRawStream::GetPrevDDLNumber() const
Int_tAliAltroRawStream::GetPrevHWAddress() const
Int_tGetPrevModule() const
Int_tAliAltroRawStream::GetPrevRCUId() const
Int_tGetPrevRow() const
Int_tAliAltroRawStream::GetPrevTime() const
Int_tAliAltroRawStream::GetRCUId() const
Int_tAliAltroRawStream::GetRCUPayloadSizeInSOD() const
Bool_tAliAltroRawStream::GetRCUTrailerData(UChar_t*& data) const
Int_tAliAltroRawStream::GetRCUTrailerSize() const
Int_tGetRow() const
Bool_tAliAltroRawStream::GetSecondBaselineCorr() const
Int_tAliAltroRawStream::GetSignal() const
Bool_tAliAltroRawStream::GetSparseRO() const
Int_tAliAltroRawStream::GetTime() const
Int_tAliAltroRawStream::GetTimeLength() const
virtual const char*TObject::GetTitle() const
Double_tAliAltroRawStream::GetTSample() const
virtual UInt_tTObject::GetUniqueID() const
Bool_tAliAltroRawStream::GetZeroSupp() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tIsHighGain() const
Bool_tIsLEDMonData() const
Bool_tIsLowGain() const
Bool_tIsNewColumn() const
Bool_tAliAltroRawStream::IsNewDDLNumber() const
Bool_tAliAltroRawStream::IsNewHWAddress() const
Bool_tIsNewModule() const
Bool_tAliAltroRawStream::IsNewRCUId() const
Bool_tIsNewRow() const
Bool_tAliAltroRawStream::IsNewTime() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tIsTRUData() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tNext()
virtual Bool_tAliAltroRawStream::NextBunch(UShort_t* bunchData, Int_t& bunchLength, Int_t& startTimeBin)
virtual Bool_tAliAltroRawStream::NextChannel()
virtual Bool_tAliAltroRawStream::NextDDL(UChar_t* data = NULL)
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
voidAliAltroRawStream::PrintDebug() const
voidAliAltroRawStream::PrintRCUTrailer() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidReset()
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidAliAltroRawStream::SelectRawData(Int_t detId)
voidAliAltroRawStream::SelectRawData(const char* detName)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidAliAltroRawStream::SetShortDataHeader(Bool_t flag)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
voidSkipData(AliCaloRawStream::EAliCaloFlag caloFlag = kLEDMonData)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
AliCaloRawStream(const AliCaloRawStream& stream)
virtual voidApplyAltroMapping()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
AliCaloRawStream&operator=(const AliCaloRawStream& stream)

Data Members

public:
enum EAliCaloFlag { kLowGain
kHighGain
kTRUData
kLEDMonData
};
enum AliAltroRawStream::EAltroRawStreamError { kRCUTrailerSizeErr
kAltroTrailerErr
kBunchLengthReadErr
kTimeBinReadErr
kAmplitudeReadErr
k32bitWordReadErr
kBadAltroMapping
kRCUTrailerErr
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TStringfCaloCalorimeter name
Int_tfCaloFlaglow (0) or (1) high gain; see enum EAliCaloFlag above
Int_tfColumnindex of current column
Bool_tfExternalMappinguse external mapping or create a default one
Int_tfFilterdefault 0 = let everything through
Bool_tAliAltroRawStream::fIsShortDataHeaderflag used to select between normal and short CDH format
AliAltroMapping*fMapping[4]pointers to ALTRO mapping
Int_tfModuleindex of current module
Int_tfNRCUnumber of RCU per (super)module
Int_tfNSidesDivision of EMCal in "A" "C" sides
Int_tfPrevColumnindex of previous column
Int_tfPrevModuleindex of previous module
Int_tfPrevRowindex of previous row
Int_tfRowindex of current row

Class Charts

Inheritance Chart:
TObject
AliAltroRawStream
AliCaloRawStream

Function documentation

AliCaloRawStream(AliRawReader* rawReader, TString calo, AliAltroMapping** mapping = NULL)
 create an object to read PHOS/EMCAL raw digits
AliCaloRawStream(const AliCaloRawStream& stream)
~AliCaloRawStream()
 destructor
void Reset()
 reset phos/emcal raw stream params
Bool_t Next()
 Read next PHOS/EMCAL signal
 Apply the PHOS/EMCAL altro mapping to get
 the module,row and column indeces
void ApplyAltroMapping()
 Take the DDL index, load
 the corresponding altro mapping
 object and fill the sector,row and pad indeces
Int_t GetModule() const
{return fModule;}
Int_t GetRow() const
{return fRow;}
Int_t GetColumn() const
{return fColumn;}
Int_t GetPrevModule() const
{return fPrevModule;}
Int_t GetPrevRow() const
{return fPrevRow;}
Int_t GetPrevColumn() const
{return fPrevColumn;}
Bool_t IsNewModule() const
{return GetModule() != GetPrevModule();}
Bool_t IsNewRow() const
{return (GetRow() != GetPrevRow()) || IsNewModule();}
Bool_t IsNewColumn() const
{return (GetColumn() != GetPrevColumn()) || IsNewRow();}
Int_t GetNRCU() const
{return fNRCU;}
Int_t GetNSides() const
{return fNSides;}
TString GetCalorimeter() const
{return fCalo;}
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(AliCaloRawStream::EAliCaloFlag caloFlag = kLEDMonData)
{ fFilter |= (1<<caloFlag); }