ROOT logo
AliRoot » RAW » AliRawReaderFile

class AliRawReaderFile: public AliRawReader


 This is a class for reading raw data files.

 The files of one event are expected to be in one directory. The name
 of the directory is "raw" + the event number. Each file contains
 the raw data (with data header) of one DDL. The convention for the
 file names is "DET_#DDL.ddl". "DET" is the name of the detector and
 "#DDL" is the unique equipment ID.

 The constructor of AliRawReaderFile takes the event number or the
 directory name as argument.


Function Members (Methods)

public:
AliRawReaderFile(Int_t eventNumber = -1)
AliRawReaderFile(const char* dirName, Int_t eventNumber = -1)
virtual~AliRawReaderFile()
voidTObject::AbstractMethod(const char* method) const
voidAliRawReader::AddErrorLog(AliRawDataErrorLog::ERawDataErrorLevel level, Int_t code, const char* message = NULL)
voidAliRawReader::AddFatalErrorLog(Int_t code, const char* message = NULL)
voidAliRawReader::AddMajorErrorLog(Int_t code, const char* message = NULL)
voidAliRawReader::AddMinorErrorLog(Int_t code, const char* message = NULL)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual Int_tAliRawReader::CheckData() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual AliRawReader*AliRawReader::CloneSingleEvent() const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
static AliRawReader*AliRawReader::Create(const char* uri)
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
voidAliRawReader::DumpData(Int_t limit = -1)
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
const TClonesArray&AliRawReader::GetAllErrorLogs() const
virtual const UInt_t*GetAttributes() const
UShort_tAliRawReader::GetBCID() const
UChar_tAliRawReader::GetBlockAttributes() const
virtual TChain*AliRawReader::GetChain() const
ULong64_tAliRawReader::GetClassMask() const
const AliRawDataHeader*AliRawReader::GetDataHeader() const
const AliRawDataHeaderV3*AliRawReader::GetDataHeaderV3() const
Int_tAliRawReader::GetDataSize() const
Int_tAliRawReader::GetDDLID() const
Int_tAliRawReader::GetDetectorID() const
virtual const UInt_t*GetDetectorPattern() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const UInt_t*GetEquipmentAttributes() const
virtual Int_tGetEquipmentElementSize() const
virtual Int_tGetEquipmentHeaderSize() const
virtual Int_tGetEquipmentId() const
virtual Int_tGetEquipmentSize() const
virtual Int_tGetEquipmentType() const
Int_tAliRawReader::GetErrorCode() const
AliRawDataErrorLog*AliRawReader::GetErrorLog(Int_t i) const
virtual const AliRawVEvent*AliRawReader::GetEvent() const
virtual const AliRawEventHeaderBase*AliRawReader::GetEventHeader() const
virtual const UInt_t*GetEventId() const
ULong64_tAliRawReader::GetEventIdAsLong() const
virtual Int_tAliRawReader::GetEventIndex() const
virtual UInt_tGetGDCId() const
virtual const char*TObject::GetIconName() const
virtual UInt_tGetLDCId() const
Int_tAliRawReader::GetMappedEquipmentId() const
virtual const char*TObject::GetName() const
Int_tAliRawReader::GetNumberOfErrorLogs() const
virtual Int_tAliRawReader::GetNumberOfEvents() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
UInt_tAliRawReader::GetOrbitID() const
UInt_tAliRawReader::GetPeriod() const
virtual UInt_tGetRunNumber() const
UInt_tAliRawReader::GetStatusBits() const
virtual const UInt_t*GetSubEventAttributes() const
virtual UInt_tGetTimestamp() const
virtual const char*TObject::GetTitle() const
virtual const UInt_t*GetTriggerPattern() const
virtual UInt_tGetType() const
virtual UInt_tTObject::GetUniqueID() const
Int_tAliRawReader::GetVersion() const
virtual Bool_tAliRawReader::GotoEvent(Int_t event)
virtual Bool_tAliRawReader::GotoEventWithID(Int_t event, UInt_t period, UInt_t orbitID, UShort_t bcID)
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
Bool_tAliRawReader::IsCompressed() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
Bool_tAliRawReader::IsRawReaderValid() const
virtual Bool_tTObject::IsSortable() const
Bool_tAliRawReader::IsValid() const
Bool_tTObject::IsZombie() const
Bool_tAliRawReader::LoadEquipmentIdsMap(const char* fileName)
voidAliRawReader::LoadTriggerAlias(const THashList* lst)
voidAliRawReader::LoadTriggerClass(const char* name, Int_t index)
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tNextEvent()
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
virtual Int_tTObject::Read(const char* name)
virtual Bool_tReadHeader()
virtual Bool_tReadNext(UChar_t* data, Int_t size)
virtual Bool_tAliRawReader::ReadNextChar(UChar_t& data)
virtual Bool_tReadNextData(UChar_t*& data)
virtual Bool_tAliRawReader::ReadNextInt(UInt_t& data)
virtual Bool_tAliRawReader::ReadNextShort(UShort_t& data)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidRequireHeader(Bool_t required)
virtual Bool_tReset()
voidTObject::ResetBit(UInt_t f)
virtual Bool_tRewindEvents()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidAliRawReader::Select(Int_t detectorID, Int_t minDDLID = -1, Int_t maxDDLID = -1)
virtual voidAliRawReader::Select(const char* detectorName, Int_t minDDLID = -1, Int_t maxDDLID = -1)
virtual voidAliRawReader::SelectEquipment(Int_t equipmentType, Int_t minEquipmentId = -1, Int_t maxEquipmentId = -1)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetDetectorPattern(UInt_t pattern)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEventType(UInt_t type)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetRunNb(UInt_t run)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidAliRawReader::SkipInvalid(Bool_t skip = kTRUE)
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
Bool_tAliRawReader::TestBlockAttribute(Int_t index) const
virtual Bool_tAliRawReader::UseAutoSaveESD() 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:
Bool_tCreateFileIndex()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
TStringGetDirName() const
Bool_tAliRawReader::IsEventSelected() const
Bool_tAliRawReader::IsSelected() const
voidTObject::MakeZombie()
void*OpenDirectory()
Bool_tOpenNextFile()
virtual voidAliRawReader::SelectEvents(Int_t type, ULong64_t triggerMask = 0, const char* triggerExpr = NULL)
UShort_tAliRawReader::SwapShort(UShort_t x) const
UInt_tAliRawReader::SwapWord(UInt_t x) const
private:
AliRawReaderFile(const AliRawReaderFile& rawReader)
AliRawReaderFile&operator=(const AliRawReaderFile& rawReader)

Data Members

protected:
UChar_t*fBufferbuffer for payload
Int_tfBufferSizesize of fBuffer in bytes
Int_tAliRawReader::fCountcounter of bytes to be read for current DDL
Int_tfDDLCurrent! the index of DDL files
TArrayC*fDDLIndex! the index of DDL files
UInt_tfDetectorPatternthe detector pattern (no idea from where to read it)
TStringfDirNamename of the input directory
void*fDirectorypointer to the input directory
Int_tfEquipmentIdequipment ID from file name
TArrayI*AliRawReader::fEquipmentIdsInarray of equipment Ids to be mapped
TArrayI*AliRawReader::fEquipmentIdsOutarray of mapped equipment Ids
Int_tfEquipmentSizeequipment size from raw-data payload
Int_tAliRawReader::fErrorCodecode of last error
TClonesArrayAliRawReader::fErrorLogsraw data decoding errors
Int_tfEventIndexindex of the event
Int_tAliRawReader::fEventNumbercurrent event number
AliRawDataHeader*AliRawReader::fHeadercurrent data header
AliRawDataHeader*AliRawReader::fHeaderSwappedtemporary buffer for swapping header on PowerPC
AliRawDataHeaderV3*AliRawReader::fHeaderSwappedV3temporary buffer for swapping header on PowerPC
AliRawDataHeaderV3*AliRawReader::fHeaderV3current data header
UInt_tfId[2]id field (read from the first CDH found, period is not filled)
Bool_tAliRawReader::fIsTriggerClassLoadedflags the call to LoadTriggerClass
Bool_tAliRawReader::fIsValidis raw-reader created successfully
Bool_tAliRawReader::fRequireHeaderif false, data without header is accepted
UInt_tfRunNbrun number (no idea from where to get it - put 0)
Int_tAliRawReader::fSelectEquipmentTypetype of selected equipment (<0 = no selection)
Int_tAliRawReader::fSelectEventTypetype of selected events (<0 = no selection)
Int_tAliRawReader::fSelectMaxEquipmentIdmaximal index of selected equipment (<0 = no selection)
Int_tAliRawReader::fSelectMinEquipmentIdminimal index of selected equipment (<0 = no selection)
TStringAliRawReader::fSelectTriggerExprtrigger expression for selecting events (empty = no selection)
ULong64_tAliRawReader::fSelectTriggerMasktrigger mask for selecting events (0 = no selection)
Bool_tAliRawReader::fSkipInvalidskip invalid data
fstream*fStreamstream of raw digits
UInt_tfTimestampevent timestamp (read from the DDL file creation time)
UInt_tfTriggerPattern[4]the trigger class pattern (read from the first CDH found)
UInt_tfTypeevent type (no idea from where to get it - put physics_event)

Class Charts

Inheritance Chart:
TObject
AliRawReader
AliRawReaderFile

Function documentation

AliRawReaderFile(Int_t eventNumber = -1)
 create an object to read digits from the given event
 in the current directory
AliRawReaderFile(const char* dirName, Int_t eventNumber = -1)
 create an object to read digits from the given directory
~AliRawReaderFile()
 close the input file
void RequireHeader(Bool_t required)
 Reading of raw data in case of missing
 raw data header is not implemented for
 this class
TString GetDirName() const
 return the current directory name
void* OpenDirectory()
 open and return the directory
Bool_t CreateFileIndex()
 scan the files of the directory and create index of all DDL files
 returns kFALSE if no DDL files available
Bool_t OpenNextFile()
 open the next file
 returns kFALSE if the current file is the last one
Bool_t ReadHeader()
 read a data header at the current stream position
 returns kFALSE if the mini header could not be read
Bool_t ReadNextData(UChar_t*& data)
 reads the next payload at the current stream position
 returns kFALSE if the data could not be read
Bool_t ReadNext(UChar_t* data, Int_t size)
 reads the next block of data at the current stream position
 returns kFALSE if the data could not be read
Bool_t Reset()
 reset the current stream position to the first DDL file of the curevent
Bool_t NextEvent()
 go to the next event directory
Bool_t RewindEvents()
 reset the event counter
AliRawReaderFile(Int_t eventNumber = -1)
UInt_t GetType() const
{return fType;}
UInt_t GetRunNumber() const
{return fRunNb;}
const UInt_t* GetEventId() const
{return fId;}
const UInt_t* GetTriggerPattern() const
{return fTriggerPattern;}
const UInt_t* GetDetectorPattern() const
{return &fDetectorPattern;}
const UInt_t* GetAttributes() const
{return 0;}
const UInt_t* GetSubEventAttributes() const
{return 0;}
UInt_t GetLDCId() const
{return 0;}
UInt_t GetGDCId() const
{return 0;}
UInt_t GetTimestamp() const
{return fTimestamp;}
Int_t GetEquipmentSize() const
{return fEquipmentSize;}
Int_t GetEquipmentType() const
{return 0;}
Int_t GetEquipmentId() const
{return fEquipmentId;}
const UInt_t* GetEquipmentAttributes() const
{return NULL;}
Int_t GetEquipmentElementSize() const
{return 0;}
Int_t GetEquipmentHeaderSize() const
{return 0;}
void SetEventType(UInt_t type)
{ fType = type; }
void SetRunNb(UInt_t run)
{ fRunNb = run; }
void SetDetectorPattern(UInt_t pattern)
{ fDetectorPattern = pattern; }