ROOT logo
AliRoot » MUON » AliMUONRawWriter

class AliMUONRawWriter: public TObject

 \class AliMUONRawWriter
 MUON Raw Data generaton in ALICE-MUON
 Raw data structure could be found in Alice-note.

 Implemented non-constant buspatch numbers for tracking
 with correct DDL id (first guess)
 (Ch. Finck, dec 2005)

 Digits2Raw:
 Generates raw data for MUON tracker and finally for trigger
 Using real mapping (inverse) for tracker
 For trigger there is no mapping (mapping could be found in AliMUONTriggerCircuit)
 Ch. Finck, July 04
 Use memcpy instead of assignment elt by elt
 Introducing variable DSP numbers, real manu numbers per buspatch for st12
 Implemented scaler event for Trigger
 Ch. Finck, Jan. 06
 Using bus itr in DDL instead of simple incrementation
 treat correctly the DDL & buspatch for station 3.
 Using informations from AliMUONTriggerCrateStore for
 empty slots and non-notified cards in trigger crates.
 Ch. Finck, August 06.
 Using AliMpDDLStore::GetBusPatchId.

 \author Ch. Finck, Feb. 07.

Function Members (Methods)

public:
AliMUONRawWriter()
virtual~AliMUONRawWriter()
voidTObject::AbstractMethod(const char* method) const
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
Int_tDigits2Raw(const AliMUONVDigitStore* digitStore, const AliMUONVTriggerStore* triggerStore)
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
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() 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_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
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 voidTObject::RecursiveRemove(TObject* obj)
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 = "")
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)
voidSetHeader(AliRawDataHeaderSim& header)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetScalersNumbers()
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
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:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
AliMUONRawWriter(const AliMUONRawWriter& rhs)
voidDigits2BusPatchMap(const AliMUONVDigitStore& digitStore, AliMpExMap& busPatchMap)
Int_tGetBusPatch(const AliMUONVDigit& digit) const
static voidLocalWordPacking(UInt_t& word, UInt_t locId, UInt_t locDec, UInt_t trigY, UInt_t posY, UInt_t posX, UInt_t sdevX, UInt_t devX)
AliMUONRawWriter&operator=(const AliMUONRawWriter& rhs)
voidWriteTrackerDDL(AliMpExMap& busPatchMap, Int_t iDDL)
Int_tWriteTriggerDDL(const AliMUONVTriggerStore& triggerStore, AliFstream** file)

Data Members

private:
AliMUONBlockHeader*fBlockHeader!< DDL block header class pointers
Int_t*fBuffer!< internal data buffer
Int_tfBufferSize!< size of internal data buffer
AliMpDDLStore*fDDLStore!< DDL store pointer
AliMUONDarcHeader*fDarcHeader!< DDL darc header class pointers
AliMUONDspHeader*fDspHeader!< DDL Dsp header class pointers
AliRawDataHeaderSim*fHeader/< header of DDL
AliMUONLocalStruct*fLocalStruct!< DDL local structure class pointers
AliMUONRegHeader*fRegHeader!< DDL regional header class pointers
Bool_tfScalerEvent/< flag to generates scaler event

Class Charts

Inheritance Chart:
TObject
AliMUONRawWriter

Function documentation

AliMUONRawWriter()
 Standard Constructor
~AliMUONRawWriter(void)
 Destructor
void LocalWordPacking(UInt_t& word, UInt_t locId, UInt_t locDec, UInt_t trigY, UInt_t posY, UInt_t posX, UInt_t sdevX, UInt_t devX)
 pack local trigger word
Int_t Digits2Raw(const AliMUONVDigitStore* digitStore, const AliMUONVTriggerStore* triggerStore)
 convert digits of the current event to raw data
Digits2BusPatchMap(const AliMUONVDigitStore& digitStore, AliMpExMap& busPatchMap)
 Create bus patch structures corresponding to digits in the store
WriteTrackerDDL(AliMpExMap& busPatchMap, Int_t iDDL)
 Write DDL file for one tracker DDL
Int_t GetBusPatch(const AliMUONVDigit& digit) const
 Determine the BusPatch this digit belongs to.
Int_t WriteTriggerDDL(const AliMUONVTriggerStore& triggerStore, AliFstream** file)
 Write trigger DDL
void SetScalersNumbers()
 set numbers for scaler events for trigger headers
 since this is provided by the experiment
 put dummy numbers to check the monitoring
AliMUONRawWriter()
void SetHeader(AliRawDataHeaderSim& header)
 Set the header of DDL
{fHeader = &header;}
AliMUONRawWriter& operator=(const AliMUONRawWriter& rhs)
 Not implemented assignment operator