AliMUONDigit& operator=(const AliMUONDigit& rhs);
+ /// Own clone methods (as the default TObject::Clone turned out to be pretty slow !)
+ virtual TObject* Clone(const char* /*newname*/ = "") const { return new AliMUONDigit(*this); }
+
virtual Bool_t HasMCInformation() const { return kTRUE; }
- virtual Bool_t IsSortable() const {return kTRUE;} ///< Return true if sortable
- virtual Int_t Compare(const TObject *obj) const;
-
virtual Int_t DetElemId()const {return fDetElemId;} ///< Return detection element ID
virtual Int_t PadX() const {return fPadX;} ///< Return pad number along x
virtual Int_t PadY() const {return fPadY;} ///< Return pad number along y
virtual Int_t Hit() const {return fHit;} ///< Return MC hit number
+ virtual Float_t Time() const {return fTime;} /// Return MC hit age
+
virtual Int_t Ntracks() const { return fNtracks; } ///< Return MC tracks making to this digit
virtual void AddTrack(Int_t trackNumber, Float_t trackCharge);
virtual Int_t Track(Int_t i) const;
virtual Bool_t IsSaturated() const;
virtual Bool_t IsNoiseOnly() const;
virtual Bool_t IsEfficiencyApplied() const;
+ virtual Bool_t IsConverted() const;
+ virtual Bool_t IsChargeInFC() const;
virtual UInt_t StatusMap() const { return fStatusMap; } ///< Return Neighbouring pad status
virtual void NoiseOnly(Bool_t value=kTRUE);
virtual void Saturated(Bool_t saturated=kTRUE);
virtual void EfficiencyApplied(Bool_t value=kTRUE);
-
+ virtual void Converted(Bool_t value=kTRUE);
+ virtual void ChargeInFC(Bool_t value=kTRUE);
+
virtual void SetADC(Int_t adc) {fADC=adc; } ///< Set ADC value
virtual void SetPadXY(Int_t padx, Int_t pady) {fPadX = padx; fPadY=pady; } ///< Set pad number along x
virtual void SetCharge(Float_t q) {fSignal = q;} ///< Set charge
virtual void SetHit(Int_t n) {fHit = n;} ///< Set MC hit number
+ virtual void SetTime(Float_t t) {fTime = t;} ///< Set MC hit age
virtual void SetStatusMap(UInt_t statusMap) { fStatusMap = statusMap; } ///< Set status map
virtual void Copy(TObject& digit) const;
Int_t* fTracks; //[fNtracks] primary MC tracks making this digit
Int_t fHit; ///< MC hit number - temporary solution
+ Float_t fTime; ///< MC hit age
UInt_t fStatusMap; ///< Neighbouring pad status (whether ped, gains, hv were ok or not)
static const UInt_t fgkCalibratedMask = 0x100; ///< whether this digits has been calibrated
static const UInt_t fgkNoiseOnlyMask = 0x1000; ///< indicate a simulated digit due to noise only
static const UInt_t fgkEfficiencyMask = 0x2000; ///< indicate chamber efficiency has been applied to a simulated digit
-
- ClassDef(AliMUONDigit,9) //Digits for MUON
+ static const UInt_t fgkConverted = 0x4000; ///< has been converted from a real digit
+ static const UInt_t fgkChargeInFC = 0x8000; ///< charge unit are femto coulomb
+
+ ClassDef(AliMUONDigit,12) //Digits for MUON
};
#endif