AliRoot Core  edcc906 (edcc906)
AliMUONDigit Class Reference

MUON digit. More...

#include <AliMUONDigit.h>

Inheritance diagram for AliMUONDigit:

Public Member Functions

 AliMUONDigit ()
 
 AliMUONDigit (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode)
 
 AliMUONDigit (const AliMUONDigit &rhs)
 
virtual ~AliMUONDigit ()
 
AliMUONDigitoperator= (const AliMUONDigit &rhs)
 
virtual TObject * Clone (const char *="") const
 Own clone methods (as the default TObject::Clone turned out to be pretty slow !) More...
 
virtual Bool_t HasMCInformation () const
 Below are methods only relevant for MC digigts. More...
 
virtual Int_t DetElemId () const
 Return detection element ID. More...
 
virtual Int_t PadX () const
 Return pad number along x. More...
 
virtual Int_t PadY () const
 Return pad number along y. More...
 
virtual Int_t Cathode () const
 Return cathode number. More...
 
virtual Float_t Charge () const
 Return signal amplitude. More...
 
virtual Int_t Hit () const
 Return MC hit number. More...
 
virtual Float_t Time () const
 Hit age. More...
 
virtual Int_t Ntracks () const
 Return MC hit age. More...
 
virtual void AddTrack (Int_t trackNumber, Float_t trackCharge)
 Add a track (and its charge) to the list of tracks we handle. More...
 
virtual Int_t Track (Int_t i) const
 Return the i-th track number. More...
 
virtual Float_t TrackCharge (Int_t i) const
 Return the i-th track charge. More...
 
virtual Int_t ADC () const
 Return ADC value. More...
 
virtual Int_t ManuId () const
 Return Id of the MANU chip. More...
 
virtual Int_t ManuChannel () const
 Return Channel within the MANU chip. More...
 
virtual Bool_t IsSaturated () const
 Whether the ADC has saturated. More...
 
virtual Bool_t IsNoiseOnly () const
 Whether this (simulated) digit is purely noise. More...
 
virtual Bool_t IsEfficiencyApplied () const
 Whether this (simulated) digit got corrected by chamber efficiency. More...
 
virtual Bool_t IsConverted () const
 Whether or not this digit was obtained from a conversion (e.g. real to simulated) More...
 
virtual Bool_t IsChargeInFC () const
 Whether this digit has charge in femto coulomb (see note 1 in AliMUONVDigit.cxx) More...
 
virtual UInt_t StatusMap () const
 Return Neighbouring pad status. More...
 
virtual void NoiseOnly (Bool_t value=kTRUE)
 Set the noiseOnly status. More...
 
virtual void Saturated (Bool_t saturated=kTRUE)
 Set the saturation status. More...
 
virtual void EfficiencyApplied (Bool_t value=kTRUE)
 Set the efficiencyApplied status. More...
 
virtual void Converted (Bool_t value=kTRUE)
 
virtual void ChargeInFC (Bool_t value=kTRUE)
 Set the unit value (see note 1 in AliMUONVDigit.cxx) More...
 
virtual void SetADC (Int_t adc)
 Set ADC value. More...
 
virtual void SetPadXY (Int_t padx, Int_t pady)
 Set pad number along x. More...
 
virtual void SetCharge (Float_t q)
 Set charge. More...
 
virtual void SetHit (Int_t n)
 Set MC hit number. More...
 
virtual void SetTime (Float_t t)
 Set MC hit age. More...
 
virtual void SetStatusMap (UInt_t statusMap)
 Set status map. More...
 
virtual void Copy (TObject &digit) const
 
virtual void Clear (Option_t *)
 
virtual void PatchTracks (Int_t mask)
 Patch track with a mask. More...
 
virtual Bool_t MergeWith (const AliMUONVDigit &other)
 Merge this with other. More...
 
virtual Bool_t IsUsed () const
 Whether this digit is used somewhere (typically in a cluster) More...
 
virtual void Used (Bool_t value)
 Set the used status. More...
 
virtual Bool_t IsCalibrated () const
 Whether this digit has been calibrated or not (see note 1 in AliMUONVDigit.cxx) More...
 
virtual void Calibrated (Bool_t value)
 Set the calibrated status (see note 1 in AliMUONVDigit.cxx) More...
 
virtual UInt_t GetUniqueID () const
 
- Public Member Functions inherited from AliMUONVDigit
 AliMUONVDigit ()
 
 AliMUONVDigit (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode)
 
virtual ~AliMUONVDigit ()
 
virtual Bool_t IsEqual (const TObject *object) const
 
virtual Bool_t IsSortable () const
 Advertise that we can be sorted in TCollections. More...
 
virtual Int_t Compare (const TObject *object) const
 
virtual const char * GetName () const
 
virtual void AddCharge (Float_t q)
 Add a charge. More...
 
virtual Bool_t IsTracker () const
 Whether this digit is a tracker digit (false if belongs to trigger) More...
 
virtual Bool_t IsTrigger () const
 
virtual void Print (Option_t *opt="") const
 

Private Attributes

Int_t fDetElemId
 Detection element ID. More...
 
Int_t fManuId
 Id of the MANU chip. More...
 
Int_t fManuChannel
 Channel within the MANU chip. More...
 
Float_t fSignal
 Signal amplitude. More...
 
Int_t fPadX
 Pad number along x. More...
 
Int_t fPadY
 Pad number along y. More...
 
Int_t fCathode
 Cathode number. More...
 
Int_t fADC
 ADC value. More...
 
UInt_t fFlags
 Special flags (e.g. is the signal an overflow ?) More...
 
Int_t fNtracks
 MC tracks making to this digit. More...
 
Float_t * fTcharges
 charges of MC track making this digit More...
 
Int_t * fTracks
 primary MC tracks making this digit More...
 
Int_t fHit
 MC hit number - temporary solution. More...
 
Float_t fTime
 MC hit age. More...
 
UInt_t fStatusMap
 Neighbouring pad status (whether ped, lv, hv were ok or not) More...
 

Static Private Attributes

static const UInt_t fgkSaturatedMask = 0x1
 the mask (part of fFlags) to indicate this digit is saturated More...
 
static const UInt_t fgkUsedMask = 0x10
 whether this digit is used by whatever other object (typically a cluster, though) More...
 
static const UInt_t fgkCalibratedMask = 0x100
 whether this digits has been calibrated More...
 
static const UInt_t fgkNoiseOnlyMask = 0x1000
 indicate a simulated digit due to noise only More...
 
static const UInt_t fgkEfficiencyMask = 0x2000
 indicate chamber efficiency has been applied to a simulated digit More...
 
static const UInt_t fgkConverted = 0x4000
 has been converted from a real digit More...
 
static const UInt_t fgkChargeInFC = 0x8000
 charge unit are femto coulomb More...
 

Additional Inherited Members

- Static Public Member Functions inherited from AliMUONVDigit
static UInt_t BuildUniqueID (Int_t detElemId, Int_t manuId, Int_t manuChannel, Int_t cathode)
 
static void DecodeUniqueID (UInt_t uniqueID, Int_t &detElemId, Int_t &manuId, Int_t &manuChannel, Int_t &cathode)
 
static Int_t DetElemId (UInt_t uniqueID)
 
static Int_t ManuId (UInt_t uniqueID)
 
static Int_t ManuChannel (UInt_t uniqueID)
 
static Int_t Cathode (UInt_t uniqueID)
 
static Int_t LocalBoardNumber (UInt_t uniqueID)
 Return the localBoardNumber from the uniqueID. More...
 
static Int_t LocalBoardChannel (UInt_t uniqueID)
 Return the localBoardChannel from the uniqueID. More...
 

Detailed Description

MUON digit.

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).

Definition at line 17 of file AliMUONDigit.h.

Constructor & Destructor Documentation

AliMUONDigit::AliMUONDigit ( )

Default constructor

Definition at line 38 of file AliMUONDigit.cxx.

Referenced by Clone().

AliMUONDigit::AliMUONDigit ( Int_t  detElemId,
Int_t  manuId,
Int_t  manuChannel,
Int_t  cathode 
)

Normal constructor

Definition at line 61 of file AliMUONDigit.cxx.

AliMUONDigit::AliMUONDigit ( const AliMUONDigit rhs)

Copy constructor

Definition at line 86 of file AliMUONDigit.cxx.

AliMUONDigit::~AliMUONDigit ( )
virtual

Destructor

Definition at line 110 of file AliMUONDigit.cxx.

Member Function Documentation

virtual Int_t AliMUONDigit::ADC ( ) const
inlinevirtual

Return ADC value.

Implements AliMUONVDigit.

Definition at line 49 of file AliMUONDigit.h.

void AliMUONDigit::AddTrack ( Int_t  ,
Float_t   
)
virtual

Add a track (and its charge) to the list of tracks we handle.

Add 1 track information to the track list we keep. The implementation below is dumb, you've been warned !

Reimplemented from AliMUONVDigit.

Definition at line 120 of file AliMUONDigit.cxx.

Referenced by MergeWith(), and Ntracks().

void AliMUONDigit::Calibrated ( Bool_t  value)
virtual

Set the calibrated status (see note 1 in AliMUONVDigit.cxx)

Set the Calibrated status of this digit.

Implements AliMUONVDigit.

Definition at line 297 of file AliMUONDigit.cxx.

Referenced by AliMUON::Raw2SDigits(), and SetStatusMap().

virtual Int_t AliMUONDigit::Cathode ( ) const
inlinevirtual

Return cathode number.

Implements AliMUONVDigit.

Definition at line 36 of file AliMUONDigit.h.

Referenced by GetUniqueID(), and MergeWith().

virtual Float_t AliMUONDigit::Charge ( ) const
inlinevirtual

Return signal amplitude.

Implements AliMUONVDigit.

Definition at line 38 of file AliMUONDigit.h.

void AliMUONDigit::ChargeInFC ( Bool_t  value = kTRUE)
virtual

Set the unit value (see note 1 in AliMUONVDigit.cxx)

Set the convertion status of this digit.

Implements AliMUONVDigit.

Definition at line 425 of file AliMUONDigit.cxx.

Referenced by StatusMap().

void AliMUONDigit::Clear ( Option_t *  )
virtual

Delete the internal track arrays (which are dynamically allocated). This is to insure we can put those digits in e.g. TClonesArray w/o leaking memory.

Reset this digit, in particular the internal arrays are deleted.

Definition at line 161 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

virtual TObject* AliMUONDigit::Clone ( const char *  = "") const
inlinevirtual

Own clone methods (as the default TObject::Clone turned out to be pretty slow !)

Definition at line 29 of file AliMUONDigit.h.

void AliMUONDigit::Converted ( Bool_t  value = kTRUE)
virtual

Set the convertion status of this digit.

Definition at line 409 of file AliMUONDigit.cxx.

Referenced by StatusMap().

void AliMUONDigit::Copy ( TObject &  digit) const
virtual

Copy this line to line.

Definition at line 174 of file AliMUONDigit.cxx.

Referenced by operator=(), and SetStatusMap().

virtual Int_t AliMUONDigit::DetElemId ( ) const
inlinevirtual

Return detection element ID.

Implements AliMUONVDigit.

Definition at line 33 of file AliMUONDigit.h.

Referenced by AliMUONDigitStoreV1::Add(), GetUniqueID(), and MergeWith().

void AliMUONDigit::EfficiencyApplied ( Bool_t  = kTRUE)
virtual

Set the efficiencyApplied status.

Set the EfficiencyApplied status of this digit.

Reimplemented from AliMUONVDigit.

Definition at line 313 of file AliMUONDigit.cxx.

Referenced by StatusMap().

UInt_t AliMUONDigit::GetUniqueID ( ) const
virtual

Return a single integer with id information

Definition at line 469 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

virtual Bool_t AliMUONDigit::HasMCInformation ( ) const
inlinevirtual

Below are methods only relevant for MC digigts.

Whether we implement MC methods.

Implements AliMUONVDigit.

Definition at line 31 of file AliMUONDigit.h.

virtual Int_t AliMUONDigit::Hit ( ) const
inlinevirtual

Return MC hit number.

Reimplemented from AliMUONVDigit.

Definition at line 40 of file AliMUONDigit.h.

Bool_t AliMUONDigit::IsCalibrated ( ) const
virtual

Whether this digit has been calibrated or not (see note 1 in AliMUONVDigit.cxx)

Whether this digit is calibrated or not

Implements AliMUONVDigit.

Definition at line 235 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

Bool_t AliMUONDigit::IsChargeInFC ( ) const
virtual

Whether this digit has charge in femto coulomb (see note 1 in AliMUONVDigit.cxx)

Whether this digit is converted or not

Reimplemented from AliMUONVDigit.

Definition at line 253 of file AliMUONDigit.cxx.

Referenced by ManuChannel().

Bool_t AliMUONDigit::IsConverted ( ) const
virtual

Whether or not this digit was obtained from a conversion (e.g. real to simulated)

Whether this digit is converted or not

Reimplemented from AliMUONVDigit.

Definition at line 244 of file AliMUONDigit.cxx.

Referenced by ManuChannel().

Bool_t AliMUONDigit::IsEfficiencyApplied ( ) const
virtual

Whether this (simulated) digit got corrected by chamber efficiency.

Whether this digit had efficiency applied or not

Implements AliMUONVDigit.

Definition at line 272 of file AliMUONDigit.cxx.

Referenced by ManuChannel().

Bool_t AliMUONDigit::IsNoiseOnly ( ) const
virtual

Whether this (simulated) digit is purely noise.

Whether this (simulated only) digit is only due to noise.

Implements AliMUONVDigit.

Definition at line 217 of file AliMUONDigit.cxx.

Referenced by ManuChannel().

Bool_t AliMUONDigit::IsSaturated ( ) const
virtual

Whether the ADC has saturated.

Whether this digit is saturated or not.

Implements AliMUONVDigit.

Definition at line 226 of file AliMUONDigit.cxx.

Referenced by ManuChannel().

Bool_t AliMUONDigit::IsUsed ( ) const
virtual

Whether this digit is used somewhere (typically in a cluster)

Whether this digit is used or not (in a cluster, for instance)

Implements AliMUONVDigit.

Definition at line 263 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

virtual Int_t AliMUONDigit::ManuChannel ( ) const
inlinevirtual

Return Channel within the MANU chip.

Implements AliMUONVDigit.

Definition at line 51 of file AliMUONDigit.h.

Referenced by GetUniqueID().

virtual Int_t AliMUONDigit::ManuId ( ) const
inlinevirtual

Return Id of the MANU chip.

Implements AliMUONVDigit.

Definition at line 50 of file AliMUONDigit.h.

Referenced by GetUniqueID().

Bool_t AliMUONDigit::MergeWith ( const AliMUONVDigit other)
virtual

Merge this with other.

Merge with src.

Implements AliMUONVDigit.

Definition at line 329 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

void AliMUONDigit::NoiseOnly ( Bool_t  = kTRUE)
virtual

Set the noiseOnly status.

Set the NoiseOnly status of this digit.

Reimplemented from AliMUONVDigit.

Definition at line 352 of file AliMUONDigit.cxx.

Referenced by StatusMap().

virtual Int_t AliMUONDigit::Ntracks ( ) const
inlinevirtual

Return MC hit age.

Return MC tracks making to this digit

Reimplemented from AliMUONVDigit.

Definition at line 44 of file AliMUONDigit.h.

Referenced by AddTrack(), and PatchTracks().

AliMUONDigit & AliMUONDigit::operator= ( const AliMUONDigit rhs)

Assignement operator.

Definition at line 368 of file AliMUONDigit.cxx.

virtual Int_t AliMUONDigit::PadX ( ) const
inlinevirtual

Return pad number along x.

Implements AliMUONVDigit.

Definition at line 34 of file AliMUONDigit.h.

Referenced by MergeWith().

virtual Int_t AliMUONDigit::PadY ( ) const
inlinevirtual

Return pad number along y.

Implements AliMUONVDigit.

Definition at line 35 of file AliMUONDigit.h.

Referenced by MergeWith().

void AliMUONDigit::PatchTracks ( Int_t  )
virtual

Patch track with a mask.

Add mask to each track number.

Reimplemented from AliMUONVDigit.

Definition at line 381 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

void AliMUONDigit::Saturated ( Bool_t  saturated = kTRUE)
virtual

Set the saturation status.

Set the saturation status of this digit.

Implements AliMUONVDigit.

Definition at line 393 of file AliMUONDigit.cxx.

Referenced by StatusMap().

virtual void AliMUONDigit::SetADC ( Int_t  adc)
inlinevirtual

Set ADC value.

Implements AliMUONVDigit.

Definition at line 65 of file AliMUONDigit.h.

virtual void AliMUONDigit::SetCharge ( Float_t  q)
inlinevirtual
virtual void AliMUONDigit::SetHit ( Int_t  n)
inlinevirtual

Set MC hit number.

Reimplemented from AliMUONVDigit.

Definition at line 68 of file AliMUONDigit.h.

virtual void AliMUONDigit::SetPadXY ( Int_t  padx,
Int_t  pady 
)
inlinevirtual
virtual void AliMUONDigit::SetStatusMap ( UInt_t  statusMap)
inlinevirtual

Set status map.

Implements AliMUONVDigit.

Definition at line 70 of file AliMUONDigit.h.

virtual void AliMUONDigit::SetTime ( Float_t  t)
inlinevirtual

Set MC hit age.

Reimplemented from AliMUONVDigit.

Definition at line 69 of file AliMUONDigit.h.

virtual UInt_t AliMUONDigit::StatusMap ( ) const
inlinevirtual

Return Neighbouring pad status.

Implements AliMUONVDigit.

Definition at line 57 of file AliMUONDigit.h.

virtual Float_t AliMUONDigit::Time ( ) const
inlinevirtual

Hit age.

Reimplemented from AliMUONVDigit.

Definition at line 42 of file AliMUONDigit.h.

Int_t AliMUONDigit::Track ( Int_t  ) const
virtual

Return the i-th track number.

Return the i-th track number (if i is >=0 and < Ntracks()) or -1.

Reimplemented from AliMUONVDigit.

Definition at line 441 of file AliMUONDigit.cxx.

Referenced by AddTrack(), and Ntracks().

Float_t AliMUONDigit::TrackCharge ( Int_t  ) const
virtual

Return the i-th track charge.

Return the i-th track charge (if i is >=0 and < Ntracjs()) or -1.

Reimplemented from AliMUONVDigit.

Definition at line 455 of file AliMUONDigit.cxx.

Referenced by Ntracks().

void AliMUONDigit::Used ( Bool_t  value)
virtual

Set the used status.

Set the Used status of this digit.

Implements AliMUONVDigit.

Definition at line 281 of file AliMUONDigit.cxx.

Referenced by SetStatusMap().

Member Data Documentation

Int_t AliMUONDigit::fADC
private

ADC value.

Definition at line 102 of file AliMUONDigit.h.

Referenced by ADC(), Copy(), and SetADC().

Int_t AliMUONDigit::fCathode
private

Cathode number.

Definition at line 101 of file AliMUONDigit.h.

Referenced by Cathode(), and Copy().

Int_t AliMUONDigit::fDetElemId
private

Detection element ID.

Definition at line 94 of file AliMUONDigit.h.

Referenced by Copy(), and DetElemId().

UInt_t AliMUONDigit::fFlags
private
const UInt_t AliMUONDigit::fgkCalibratedMask = 0x100
staticprivate

whether this digits has been calibrated

Definition at line 120 of file AliMUONDigit.h.

Referenced by Calibrated(), and IsCalibrated().

const UInt_t AliMUONDigit::fgkChargeInFC = 0x8000
staticprivate

charge unit are femto coulomb

Definition at line 124 of file AliMUONDigit.h.

Referenced by ChargeInFC(), and IsChargeInFC().

const UInt_t AliMUONDigit::fgkConverted = 0x4000
staticprivate

has been converted from a real digit

Definition at line 123 of file AliMUONDigit.h.

Referenced by Converted(), and IsConverted().

const UInt_t AliMUONDigit::fgkEfficiencyMask = 0x2000
staticprivate

indicate chamber efficiency has been applied to a simulated digit

Definition at line 122 of file AliMUONDigit.h.

Referenced by EfficiencyApplied(), and IsEfficiencyApplied().

const UInt_t AliMUONDigit::fgkNoiseOnlyMask = 0x1000
staticprivate

indicate a simulated digit due to noise only

Definition at line 121 of file AliMUONDigit.h.

Referenced by IsNoiseOnly(), and NoiseOnly().

const UInt_t AliMUONDigit::fgkSaturatedMask = 0x1
staticprivate

the mask (part of fFlags) to indicate this digit is saturated

Definition at line 118 of file AliMUONDigit.h.

Referenced by IsSaturated(), and Saturated().

const UInt_t AliMUONDigit::fgkUsedMask = 0x10
staticprivate

whether this digit is used by whatever other object (typically a cluster, though)

Definition at line 119 of file AliMUONDigit.h.

Referenced by IsUsed(), and Used().

Int_t AliMUONDigit::fHit
private

MC hit number - temporary solution.

Definition at line 113 of file AliMUONDigit.h.

Referenced by Copy(), Hit(), and SetHit().

Int_t AliMUONDigit::fManuChannel
private

Channel within the MANU chip.

Definition at line 96 of file AliMUONDigit.h.

Referenced by Copy(), and ManuChannel().

Int_t AliMUONDigit::fManuId
private

Id of the MANU chip.

Definition at line 95 of file AliMUONDigit.h.

Referenced by Copy(), and ManuId().

Int_t AliMUONDigit::fNtracks
private

MC tracks making to this digit.

Definition at line 105 of file AliMUONDigit.h.

Referenced by AddTrack(), Clear(), Copy(), Ntracks(), Track(), and TrackCharge().

Int_t AliMUONDigit::fPadX
private

Pad number along x.

Definition at line 99 of file AliMUONDigit.h.

Referenced by Copy(), PadX(), and SetPadXY().

Int_t AliMUONDigit::fPadY
private

Pad number along y.

Definition at line 100 of file AliMUONDigit.h.

Referenced by Copy(), PadY(), and SetPadXY().

Float_t AliMUONDigit::fSignal
private

Signal amplitude.

Definition at line 97 of file AliMUONDigit.h.

Referenced by Charge(), Copy(), and SetCharge().

UInt_t AliMUONDigit::fStatusMap
private

Neighbouring pad status (whether ped, lv, hv were ok or not)

Definition at line 116 of file AliMUONDigit.h.

Referenced by Copy(), SetStatusMap(), and StatusMap().

Float_t* AliMUONDigit::fTcharges
private

charges of MC track making this digit

Definition at line 108 of file AliMUONDigit.h.

Referenced by AddTrack(), Clear(), Copy(), TrackCharge(), and ~AliMUONDigit().

Float_t AliMUONDigit::fTime
private

MC hit age.

Definition at line 114 of file AliMUONDigit.h.

Referenced by Copy(), SetTime(), and Time().

Int_t* AliMUONDigit::fTracks
private

primary MC tracks making this digit

Definition at line 111 of file AliMUONDigit.h.

Referenced by AddTrack(), Clear(), Copy(), PatchTracks(), Track(), and ~AliMUONDigit().


The documentation for this class was generated from the following files: