ROOT logo
AliRoot » MUON » AliMUONESDInterface

class AliMUONESDInterface: public TObject

 \class AliMUONESDInterface

 There are 2 way of using thid converter between MUON track/cluster/digit
 and ESDMuon track/cluster/pad:

 1) using the static methods converting the objects one by one

 2) loading a whole ESDEvent and using the finders and/or the iterators
    to access the corresponding MUON objects

 note: You can set the recoParam used to refit the MUON track with ResetTracker(...);
       By default we use Kalman filter + Smoother

 \author Philippe Pillot

Function Members (Methods)

public:
AliMUONESDInterface()
virtual~AliMUONESDInterface()
voidTObject::AbstractMethod(const char* method) const
static voidAdd(const AliESDMuonTrack& esdTrack, AliMUONVTriggerStore& triggerStore)
static AliMUONVCluster*Add(const AliESDMuonCluster& esdCluster, AliMUONVClusterStore& clusterStore)
static AliMUONVDigit*Add(const AliESDMuonPad& esdPad, AliMUONVDigitStore& digitStore)
static AliMUONTrack*Add(const AliESDMuonTrack& esdTrack, AliMUONVTrackStore& trackStore, Bool_t refit = kTRUE)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
TIterator*CreateClusterIterator() const
TIterator*CreateClusterIterator(UInt_t trackId) const
TIterator*CreateDigitIterator() const
TIterator*CreateDigitIterator(UInt_t trackId) const
TIterator*CreateDigitIterator(UInt_t trackId, UInt_t clusterId) const
TIterator*CreateDigitIteratorInCluster(UInt_t clusterId) const
TIterator*CreateLocalTriggerIterator() const
TIterator*CreateTrackIterator() const
virtual voidTObject::Delete(Option_t* option = "")MENU
Bool_tDigitsStored(UInt_t trackId) const
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
static voidESDToMUON(const AliESDMuonTrack& esdTrack, AliMUONLocalTrigger& locTrg)
static voidESDToMUON(const AliESDMuonCluster& esdCluster, AliMUONVCluster& cluster)
static voidESDToMUON(const AliESDMuonPad& esdPad, AliMUONVDigit& digit)
static voidESDToMUON(const AliESDMuonTrack& esdTrack, AliMUONTrack& track, Bool_t refit = kTRUE)
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
AliMUONVCluster*FindCluster(UInt_t clusterId) const
AliMUONVCluster*FindCluster(UInt_t trackId, UInt_t clusterId) const
AliMUONVDigit*FindDigit(UInt_t digitId) const
AliMUONLocalTrigger*FindLocalTrigger(Int_t boardNumber) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
AliMUONTrack*FindTrack(UInt_t trackId) const
AliMUONVDigitStore*GetDigits() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
Int_tGetNClusters() const
Int_tGetNClusters(UInt_t trackId) const
Int_tGetNDigits() const
Int_tGetNDigits(UInt_t trackId) const
Int_tGetNDigits(UInt_t trackId, UInt_t clusterId) const
Int_tGetNDigitsInCluster(UInt_t clusterId) const
Int_tGetNTracks() const
Int_tGetNTriggers() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
static voidGetParamAtDCA(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
static voidGetParamAtFirstCluster(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
static voidGetParamAtVertex(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
static voidGetParamCov(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
virtual const char*TObject::GetTitle() const
static AliMUONVTrackReconstructor*GetTracker()
AliMUONVTrackStore*GetTracks() const
AliMUONVTriggerStore*GetTriggers() 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
voidLoadEvent(AliESDEvent& esdEvent, Bool_t refit = kTRUE)
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
static voidMUONToESD(const AliMUONVDigit& digit, AliESDEvent& esd)
static voidMUONToESD(const AliMUONVDigit& digit, AliESDMuonPad& esdPad)
static voidMUONToESD(const AliMUONVCluster& cluster, AliESDEvent& esd, const AliMUONVDigitStore* digits = 0x0)
static voidMUONToESD(const AliMUONVCluster& cluster, AliESDMuonCluster& esdCluster, Bool_t copyPadsId = kFALSE)
static voidMUONToESD(const AliMUONTrack& track, AliESDMuonTrack& esdTrack, const Double_t* vertex, const AliMUONLocalTrigger* locTrg = 0x0)
static voidMUONToESD(const AliMUONLocalTrigger& locTrg, AliESDEvent& esd, UInt_t trackId, const AliMUONTriggerTrack* triggerTrack = 0x0)
static voidMUONToESD(const AliMUONLocalTrigger& locTrg, AliESDMuonTrack& esdTrack, UInt_t trackId, const AliMUONTriggerTrack* triggerTrack = 0x0)
static voidMUONToESD(const AliMUONTrack& track, AliESDEvent& esd, const Double_t* vertex, const AliMUONVDigitStore* digits = 0x0, const AliMUONLocalTrigger* locTrg = 0x0)
static AliMUONVCluster*NewCluster()
static AliMUONVClusterStore*NewClusterStore()
static AliMUONVDigit*NewDigit()
static AliMUONVDigitStore*NewDigitStore()
static AliMUONVTrackStore*NewTrackStore()
static AliMUONVTriggerStore*NewTriggerStore()
static AliMUONVTriggerTrackStore*NewTriggerTrackStore()
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)
static voidResetTracker(const AliMUONRecoParam* recoParam = 0x0, Bool_t info = kTRUE)
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)
static voidTObject::SetObjectStat(Bool_t stat)
static voidSetParamAtDCA(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
static voidSetParamAtFirstCluster(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
static voidSetParamAtVertex(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
static voidSetParamCov(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
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
static voidUseClusterStore(TString name)
virtual voidTObject::UseCurrentStyle()
static voidUseDigitStore(TString name)
static voidUseTrackStore(TString name)
static voidUseTriggerStore(TString name)
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:
AliMUONESDInterface(const AliMUONESDInterface&)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
AliMUONESDInterface&operator=(const AliMUONESDInterface&)
private:
voidReset()

Data Members

private:
AliMpExMap*fClusterMap/< map of clusters
AliMpExMap*fDigitMap/< map of digits
AliMUONVDigitStore*fDigits/< digit container
AliMUONVTrackStore*fTracks/< track container
AliMUONVTriggerStore*fTriggers/< trigger container
static TStringfgClusterStoreName/< class name of the cluster store to use
static TStringfgDigitStoreName/< class name of the digit store to use
static AliMUONRecoParam*fgRecoParam/< reconstruction parameters for refitting
static TStringfgTrackStoreName/< class name of the track store to use
static AliMUONVTrackReconstructor*fgTracker/< track reconstructor for refitting
static TStringfgTriggerStoreName/< class name of the trigger store to use
static TStringfgTriggerTrackStoreName/< class name of the trigger track store to use

Class Charts

Inheritance Chart:
TObject
AliMUONESDInterface

Function documentation

AliMUONESDInterface()
 Default constructor
~AliMUONESDInterface()
 Destructor
void Clear(Option_t* = "")
 clear memory
void Reset()
 reset stores and maps
void LoadEvent(AliESDEvent& esdEvent, Bool_t refit = kTRUE)
 Extract MUON data from the given ESD event
Int_t GetNTracks() const
 return the number of tracks
Int_t GetNClusters() const
 return the number of clusters
Int_t GetNClusters(UInt_t trackId) const
 return the number of clusters in track "trackId"
Int_t GetNDigits() const
 return the number of digits
Int_t GetNDigits(UInt_t trackId) const
 return the number of digits in all clusters of track "trackId"
Int_t GetNDigits(UInt_t trackId, UInt_t clusterId) const
 return the number of digits in cluster numbered "iCluster" of track "iTrack"
Int_t GetNDigitsInCluster(UInt_t clusterId) const
 return the number of digits in cluster "clusterId"
Int_t GetNTriggers() const
 return the number of triggers
Bool_t DigitsStored(UInt_t trackId) const
 return kTRUE if digits have been stored for all clusters of track "trackId"
AliMUONTrack* FindTrack(UInt_t trackId) const
 return track "trackId" (0x0 if not found)
AliMUONVCluster* FindCluster(UInt_t clusterId) const
 loop over tracks and return the first cluster "clusterId" found (0x0 if not found)
AliMUONVCluster* FindCluster(UInt_t trackId, UInt_t clusterId) const
 return cluster "clusterId" in track "trackId" (0x0 if not found)
AliMUONVDigit* FindDigit(UInt_t digitId) const
 return digit "digitId" (0x0 if not found)
AliMUONLocalTrigger* FindLocalTrigger(Int_t boardNumber) const
 return MUON local trigger "boardNumber"
TIterator* CreateTrackIterator() const
 return iterator over all tracks
TIterator* CreateClusterIterator() const
 return iterator over all clusters
TIterator* CreateClusterIterator(UInt_t trackId) const
 return iterator over clusters of track "trackId"
TIterator* CreateDigitIterator() const
 return iterator over all digits
TIterator* CreateDigitIterator(UInt_t trackId) const
 return iterator over all digits of track "trackId"
TIterator* CreateDigitIterator(UInt_t trackId, UInt_t clusterId) const
 return iterator over digits of cluster "clusterId" in track "trackId"
TIterator* CreateDigitIteratorInCluster(UInt_t clusterId) const
 return iterator over digits of the first cluster "clusterId" found by looping over all tracks
TIterator* CreateLocalTriggerIterator() const
 return iterator over all local trigger
void ResetTracker(const AliMUONRecoParam* recoParam = 0x0, Bool_t info = kTRUE)
 Reset the MUON tracker using "recoParam" if provided.
 If not provided, will get them from OCDB.
 Load the magnetic field from OCDB if not already set.
AliMUONVTrackStore* NewTrackStore()
 Create an empty track store of type fgTrackStoreName
AliMUONVClusterStore* NewClusterStore()
 Create an empty cluster store of type fgClusterStoreName
AliMUONVCluster* NewCluster()
 Create an empty cluster of type associated to the cluster store of type fgClusterStoreName
AliMUONVDigitStore* NewDigitStore()
 Create an empty digit store of type fgDigitStoreName
AliMUONVDigit* NewDigit()
 Create an empty digit of type associated to the digit store of type fgDigitStoreName
AliMUONVTriggerStore* NewTriggerStore()
 Create an empty trigger store of type fgTriggerStoreName
AliMUONVTriggerTrackStore* NewTriggerTrackStore()
 Create an empty trigger track store of type fgTriggerTrackStoreName
void GetParamAtVertex(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
 Get parameters at vertex from ESDMuon track
void GetParamAtDCA(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
 Get parameters at DCA from ESDMuon track
void GetParamAtFirstCluster(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
 Get parameters at first cluster from ESDMuon track
void GetParamCov(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam)
 Get parameters covariances from ESD track
void SetParamAtVertex(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
 Set parameters in ESD track
void SetParamAtDCA(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
 Set parameters in ESD track
void SetParamAtFirstCluster(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
 Set parameters in ESD track
void SetParamCov(const AliMUONTrackParam& trackParam, AliESDMuonTrack& esdTrack)
 Set parameters covariances in ESD track
void ESDToMUON(const AliESDMuonTrack& esdTrack, AliMUONTrack& track, Bool_t refit = kTRUE)
 Transfert data from ESDMuon track to MUON track.
 ESDMuon track must hold the pointer to the ESD event otherwise we cannot recover the clusters.
 If refit = kTRUE, the track parameters at each cluster are obtained by refitting the track
 or by extrapolating the parameters at the first one if the refit failed.
 If refit = kFALSE, only the track parameters at first cluster are valid.
 note: You can set the recoParam used to refit the MUON track with ResetTracker(...);
       By default we use Kalman filter + Smoother
void ESDToMUON(const AliESDMuonTrack& esdTrack, AliMUONLocalTrigger& locTrg)
 Transfert trigger data from ESDMuon track to the MUONLocalTtrigger object
void ESDToMUON(const AliESDMuonCluster& esdCluster, AliMUONVCluster& cluster)
 Transfert data from ESDMuon cluster to MUON cluster
void ESDToMUON(const AliESDMuonPad& esdPad, AliMUONVDigit& digit)
 Transfert data from ESDMuon pad to MUON digit
 Load mapping from OCDB if not already set
void MUONToESD(const AliMUONTrack& track, AliESDEvent& esd, const Double_t* vertex, const AliMUONVDigitStore* digits = 0x0, const AliMUONLocalTrigger* locTrg = 0x0)
 Transfert data from MUON track to ESD event (ESDTrack + ESDClusters)
 Incorporate the ESDPads if the digits are provided
 Add trigger info if the MUON track is matched with a trigger track
void MUONToESD(const AliMUONTrack& track, AliESDMuonTrack& esdTrack, const Double_t* vertex, const AliMUONLocalTrigger* locTrg = 0x0)
 Transfert data from MUON track to ESDMuon track (ESDMuon track only contains clusters'Id, not cluster themselves)
 Add trigger info if the MUON track is matched with a trigger track
void MUONToESD(const AliMUONLocalTrigger& locTrg, AliESDEvent& esd, UInt_t trackId, const AliMUONTriggerTrack* triggerTrack = 0x0)
 Add in ESD event a ghost ESDMuon track containing only informations about trigger track
void MUONToESD(const AliMUONLocalTrigger& locTrg, AliESDMuonTrack& esdTrack, UInt_t trackId, const AliMUONTriggerTrack* triggerTrack = 0x0)
 Build ghost ESDMuon track containing only informations about trigger track
void MUONToESD(const AliMUONVCluster& cluster, AliESDEvent& esd, const AliMUONVDigitStore* digits = 0x0)
 Transfert data from MUON cluster to ESD event if it does not already exist
 Also transfert digits'Id to cluster and digits to ESD if they are provided
void MUONToESD(const AliMUONVCluster& cluster, AliESDMuonCluster& esdCluster, Bool_t copyPadsId = kFALSE)
 Transfert data from MUON cluster to ESDMuon cluster
 Also transfert digits'Is if required
void MUONToESD(const AliMUONVDigit& digit, AliESDEvent& esd)
 Transfert data from MUON digit to ESD event if it does not already exist
void MUONToESD(const AliMUONVDigit& digit, AliESDMuonPad& esdPad)
 Transfert data from MUON digit to ESDMuon pad
AliMUONTrack* Add(const AliESDMuonTrack& esdTrack, AliMUONVTrackStore& trackStore, Bool_t refit = kTRUE)
 Create MUON track from ESDMuon track and add it to the store
 Track parameters at each clusters are recomputed or not depending on the flag "refit"
 return a pointer to the track into the store (0x0 if the track already exist)
void Add(const AliESDMuonTrack& esdTrack, AliMUONVTriggerStore& triggerStore)
 Create MUON local trigger from ESDMuon track and add it to the store if not already there
AliMUONVCluster* Add(const AliESDMuonCluster& esdCluster, AliMUONVClusterStore& clusterStore)
 Create MUON cluster from ESDMuon cluster and add it to the store
 return a pointer to the cluster into the store (0x0 if the cluster already exist)
AliMUONVDigit* Add(const AliESDMuonPad& esdPad, AliMUONVDigitStore& digitStore)
 Create MUON digit from ESDMuon digit and add it to the store
 return a pointer to the digit into the store (0x0 if the digit already exist)
AliMUONESDInterface()
AliMUONVTrackStore* GetTracks() const
 Return internal track store
{return fTracks;}
AliMUONVDigitStore* GetDigits() const
 Return internal track store
{return fDigits;}
AliMUONVTriggerStore* GetTriggers() const
 Return internal trigger store
{return fTriggers;}
AliMUONVTrackReconstructor* GetTracker()
 Return pointer to the MUON tracker if any (use first ResetTracker(...) to create it)
{return fgTracker;}
void UseTrackStore(TString name)
 Set the version of track store
void UseClusterStore(TString name)
 Set the version of cluster store
void UseDigitStore(TString name)
 Set the version of digit store
void UseTriggerStore(TString name)
 Set the version of trigger store
AliMUONESDInterface& operator=(const AliMUONESDInterface& )