19 # include "TVector2.h"
30 Double_t dx, Double_t dy, Double_t charge);
31 AliMUONPad(
const TVector2& position,
const TVector2& dimensions,
34 Int_t ix, Int_t iy, Double_t x, Double_t y,
35 Double_t dx, Double_t dy, Double_t charge);
45 Double_t
Coord(Int_t ixy)
const;
72 virtual Int_t
Compare(
const TObject* obj)
const;
78 Int_t
Ix()
const {
return fIx; }
80 Int_t
Iy()
const {
return fIy; }
82 virtual void Paint(Option_t* opt=
"");
87 void Print(Option_t* opt =
"")
const;
118 void Shift(Int_t ixy, Double_t shift);
120 Double_t
Size(Int_t ixy)
const;
133 const TVector2& precision,
137 const TVector2& precision);
143 void Init(Int_t detElemId, Int_t cathode,
145 const TVector2& position,
146 const TVector2& dimensions,
static Bool_t AreOverlapping(const AliMUONPad &d1, const AliMUONPad &d2, const TVector2 &precision, AliMpArea &overlapArea)
static AliMpArea Overlap(const AliMUONPad &d1, const AliMUONPad &d2)
Bool_t IsReal() const
Return info whether this is a real pad or a virtual one.
void SetStatus(Int_t status)
Set status word.
Bool_t IsSaturated() const
Return info whether this pad is saturated or not.
Bool_t IsSortable() const
Return true as the function Compare is implemented.
Double_t ChargeBackup() const
Return backup charge.
void RevertCharge()
Set charge to value in backup charge.
TVector2 Dimensions() const
Return half dimensions in x and y (cm)
void SetSaturated(Bool_t val)
Set info whether this pad is saturated or not.
A rectangle area positioned in plane..
Bool_t fIsSaturated
whether this pad is saturated or not
virtual Int_t Compare(const TObject *obj) const
Double_t DY() const
Return half dimensions in y (cm)
static Bool_t AreNeighbours(const AliMUONPad &d1, const AliMUONPad &d2)
void BackupCharge()
Backup charge Usefull if clustering somehow plays with the charge, this one is the "original" one...
void Shift(Int_t ixy, Double_t shift)
void SetSize(Int_t ixy, Double_t Size)
Double_t Y() const
Return position in y (cm)
void SetChargeBackup(Double_t charge)
Set charge backup.
TVector2 fDimensions
half dimensions in x and y (cm)
void SetCharge(Double_t charge)
Set charge.
Bool_t fIsReal
whether this is a real pad or a virtual one
Int_t Iy() const
Return y-index.
void Release()
Detach this pad from a cluster.
virtual void Paint(Option_t *opt="")
Double_t X() const
Return position in x (cm)
TVector2 fPosition
positions in x and y (cm)
Int_t Cathode() const
Return cathode number.
Bool_t IsUsed() const
Return true if is used.
Double_t Size(Int_t ixy) const
TVector2 Position() const
Return positions in x and y (cm)
Double_t fCharge
pad charge
void SetCoord(Int_t ixy, Double_t Coord)
Int_t Ix() const
Return x-index.
Int_t fDetElemId
detection element id
void Print(Option_t *opt="") const
Double_t Charge() const
Return pad charge.
Double_t Coord(Int_t ixy) const
Int_t fClusterId
cluster id this pad belongs to (-1 if not attached to a cluster)
Int_t DetElemId() const
Return detection element id.
void SetClusterId(Int_t id)
Set cluster id this pad belongs to -1 if not attached to a cluster.
void Init(Int_t detElemId, Int_t cathode, Int_t ix, Int_t iy, const TVector2 &position, const TVector2 &dimensions, Double_t charge)
Int_t fCathode
cathode number
Int_t Status() const
Return status word.
Double_t fChargeBackup
backup charge (usefull if clustering somehow plays with the charge, this one is the "original" one) ...
Combination of digit and mppad informations.
Double_t DX() const
Return half dimensions in x (cm)
void SetReal(Bool_t val)
Set info whether this is a real pad or a virtual one.