ROOT logo
AliRoot » MUON » AliMUONDigit

class AliMUONDigit: public AliMUONVDigit

 \class AliMUONDigit
 A class representing a digit (with MC information if possible)
 in the MUON spectrometer either in tracking or trigger chambers.

 A digit holds the signal (proportional to a charge) on a pad
 (or strip).

 This class is used to represent either sdigits (purely simulated digit,
 with no electronic noise whatsoever) or digits (simulated ones but
 including electronic noise and de-calibration, to closely ressemble real ones).

Function Members (Methods)

public:
AliMUONDigit()
AliMUONDigit(const AliMUONDigit& rhs)
AliMUONDigit(Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode)
virtual~AliMUONDigit()
voidTObject::AbstractMethod(const char* method) const
virtual Int_tADC() const
virtual voidAliMUONVDigit::AddCharge(Float_t q)
virtual voidAddTrack(Int_t trackNumber, Float_t trackCharge)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static UInt_tAliMUONVDigit::BuildUniqueID(Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode)
virtual voidCalibrated(Bool_t value)
virtual Int_tCathode() const
virtual Float_tCharge() const
virtual voidChargeInFC(Bool_t value = kTRUE)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t*)
virtual TObject*Clone(const char* = "") const
virtual Int_tAliMUONVDigit::Compare(const TObject* object) const
virtual voidConverted(Bool_t value = kTRUE)
virtual voidCopy(TObject& digit) const
static voidAliMUONVDigit::DecodeUniqueID(UInt_t uniqueID, Int_t& detElemId, Int_t& manuId, Int_t& manuChannel, Int_t& cathode)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tDetElemId() 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 voidEfficiencyApplied(Bool_t value = kTRUE)
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*AliMUONVDigit::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_tGetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual Bool_tHasMCInformation() const
virtual Int_tHit() 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_tIsCalibrated() const
virtual Bool_tIsChargeInFC() const
virtual Bool_tIsConverted() const
virtual Bool_tIsEfficiencyApplied() const
virtual Bool_tAliMUONVDigit::IsEqual(const TObject* object) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tIsNoiseOnly() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsSaturated() const
virtual Bool_tAliMUONVDigit::IsSortable() const
virtual Bool_tAliMUONVDigit::IsTracker() const
virtual Bool_tAliMUONVDigit::IsTrigger() const
virtual Bool_tIsUsed() const
Bool_tTObject::IsZombie() const
static Int_tAliMUONVDigit::LocalBoardChannel(UInt_t uniqueID)
static Int_tAliMUONVDigit::LocalBoardNumber(UInt_t uniqueID)
virtual voidTObject::ls(Option_t* option = "") const
virtual Int_tManuChannel() const
virtual Int_tManuId() const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tMergeWith(const AliMUONVDigit& other)
virtual voidNoiseOnly(Bool_t value = kTRUE)
virtual Bool_tTObject::Notify()
virtual Int_tNtracks() const
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)
AliMUONDigit&operator=(const AliMUONDigit& rhs)
virtual Int_tPadX() const
virtual Int_tPadY() const
virtual voidTObject::Paint(Option_t* option = "")
virtual voidPatchTracks(Int_t mask)
virtual voidTObject::Pop()
virtual voidAliMUONVDigit::Print(Option_t* opt = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidSaturated(Bool_t saturated = kTRUE)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidSetADC(Int_t adc)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetCharge(Float_t q)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidSetHit(Int_t n)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidSetPadXY(Int_t padx, Int_t pady)
virtual voidSetStatusMap(UInt_t statusMap)
virtual voidSetTime(Float_t t)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual UInt_tStatusMap() const
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 Float_tTime() const
virtual Int_tTrack(Int_t i) const
virtual Float_tTrackCharge(Int_t i) const
virtual voidTObject::UseCurrentStyle()
virtual voidUsed(Bool_t value)
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()

Data Members

private:
Int_tfADC/< ADC value
Int_tfCathode/< Cathode number
Int_tfDetElemId/< Detection element ID
UInt_tfFlags/< Special flags (e.g. is the signal an overflow ?)
Int_tfHit/< MC hit number - temporary solution
Int_tfManuChannel/< Channel within the MANU chip.
Int_tfManuId/< Id of the MANU chip.
Int_tfNtracks/< MC tracks making to this digit.
Int_tfPadX/< Pad number along x
Int_tfPadY/< Pad number along y
Float_tfSignal/< Signal amplitude
UInt_tfStatusMap/< Neighbouring pad status (whether ped, gains, hv were ok or not)
Float_t*fTcharges[fNtracks] charges of MC track making this digit
Float_tfTime/< MC hit age
Int_t*fTracks[fNtracks] primary MC tracks making this digit
static const UInt_tfgkCalibratedMask/< whether this digits has been calibrated
static const UInt_tfgkChargeInFC/< charge unit are femto coulomb
static const UInt_tfgkConverted/< has been converted from a real digit
static const UInt_tfgkEfficiencyMask/< indicate chamber efficiency has been applied to a simulated digit
static const UInt_tfgkNoiseOnlyMask/< indicate a simulated digit due to noise only
static const UInt_tfgkSaturatedMask/< the mask (part of fFlags) to indicate this digit is saturated
static const UInt_tfgkUsedMask/< whether this digit is used by whatever other object (typically a cluster, though)

Class Charts

Inheritance Chart:
TObject
AliMUONVDigit
AliMUONDigit

Function documentation

AliMUONDigit()
 Default constructor
AliMUONDigit(Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode)
 Normal constructor
AliMUONDigit(const AliMUONDigit& rhs)
 Copy constructor
~AliMUONDigit()
 Destructor
AddTrack(Int_t trackNumber, Float_t trackCharge)
 Add 1 track information to the track list we keep.
 The implementation below is dumb, you've been warned !
Clear(Option_t* )
 Reset this digit, in particular the internal arrays are deleted.
Copy(TObject& digit) const
 Copy this line to line.
IsNoiseOnly() const
 Whether this (simulated only) digit is only due to noise.
IsSaturated() const
 Whether this digit is saturated or not.
IsCalibrated() const
 Whether this digit is calibrated or not
IsConverted() const
 Whether this digit is converted or not
IsChargeInFC() const
 Whether this digit is converted or not
IsUsed() const
 Whether this digit is used or not (in a cluster, for instance)
IsEfficiencyApplied() const
 Whether this digit had efficiency applied or not
Used(Bool_t value)
 Set the Used status of this digit.
Calibrated(Bool_t value)
 Set the Calibrated status of this digit.
EfficiencyApplied(Bool_t value = kTRUE)
 Set the EfficiencyApplied status of this digit.
MergeWith(const AliMUONVDigit& other)
 Merge with src.
NoiseOnly(Bool_t value = kTRUE)
 Set the NoiseOnly status of this digit.
operator=(const AliMUONDigit& rhs)
 Assignement operator.
PatchTracks(Int_t mask)
 Add mask to each track number.
Saturated(Bool_t saturated = kTRUE)
 Set the saturation status of this digit.
Converted(Bool_t value = kTRUE)
 Set the convertion status of this digit.
ChargeInFC(Bool_t value = kTRUE)
 Set the convertion status of this digit.
Track(Int_t i) const
 Return the i-th track number (if i is >=0 and < Ntracks()) or -1.
TrackCharge(Int_t i) const
 Return the i-th track charge (if i is >=0 and < Ntracjs()) or -1.
GetUniqueID() const
 Return a single integer with id information
TObject* Clone(const char* = "") const
 Own clone methods (as the default TObject::Clone turned out to be pretty slow !)
{ return new AliMUONDigit(*this); }
Bool_t HasMCInformation() const
{ return kTRUE; }
Int_t DetElemId() const
{return fDetElemId;}
Int_t PadX() const
{return fPadX;}
Int_t PadY() const
{return fPadY;}
Int_t Cathode() const
{return fCathode;}
Float_t Charge() const
{return fSignal;}
Int_t Hit() const
{return fHit;}
Float_t Time() const
{return fTime;}
Int_t Ntracks() const
{ return fNtracks; }
Int_t ADC() const
{ return fADC; }
Int_t ManuId() const
{ return fManuId; }
Int_t ManuChannel() const
{ return fManuChannel; }
UInt_t StatusMap() const
{ return fStatusMap; }
void SetADC(Int_t adc)
{fADC=adc; }
void SetPadXY(Int_t padx, Int_t pady)
{fPadX = padx; fPadY=pady; }
void SetCharge(Float_t q)
{fSignal = q;}
void SetHit(Int_t n)
{fHit = n;}
void SetTime(Float_t t)
{fTime = t;}
void SetStatusMap(UInt_t statusMap)
{ fStatusMap = statusMap; }