* provided "as is" without express or implied warranty. *
**************************************************************************/
-/*
-$Log$
-Revision 1.1.2.1 2000/06/09 22:03:22 morsch
-Was before in DataStructures.cxx
-
-*/
+/* $Id$ */
#include "AliMUONDigit.h"
+
ClassImp(AliMUONDigit)
+//_____________________________________________________________________________
+ AliMUONDigit::AliMUONDigit(const AliMUONDigit& digits):TObject(digits)
+{
+// copy constructor
+
+ fPadX = digits.fPadX;
+ fPadY = digits.fPadY;
+ fCathode = digits.fCathode;
+ fSignal = digits.fSignal;
+ fPhysics = digits.fPhysics;
+ fHit = digits.fHit;
+ fDetElemId = digits.fDetElemId;
+
+ for(Int_t i=0; i<kMAXTRACKS; i++) {
+ fTcharges[i] = digits.fTcharges[i];
+ fTracks[i] = digits.fTracks[i];
+ }
+}
+
+//_____________________________________________________________________________
+ AliMUONDigit::AliMUONDigit()
+ : TObject(),
+ fPadX(0),
+ fPadY(0),
+ fCathode(0),
+ fSignal(0),
+ fPhysics(0),
+ fHit(0),
+ fDetElemId(0)
+{
+// Default constructor
+
+ for(Int_t i=0; i<kMAXTRACKS; i++) {
+ fTcharges[i] = 0;
+ fTracks[i] = 0;
+ }
+}
+
//_____________________________________________________________________________
AliMUONDigit::AliMUONDigit(Int_t *digits)
{
//
fPadX = digits[0];
fPadY = digits[1];
- fSignal = digits[2];
- fPhysics = digits[3];
- fHit = digits[4];
-
+ fCathode = digits[2];
+ fSignal = digits[3];
+ fPhysics = digits[4];
+ fHit = digits[5];
+ fDetElemId = digits[6];
}
//_____________________________________________________________________________
AliMUONDigit::AliMUONDigit(Int_t *tracks, Int_t *charges, Int_t *digits)
//
fPadX = digits[0];
fPadY = digits[1];
- fSignal = digits[2];
- fPhysics = digits[3];
- fHit = digits[4];
- for(Int_t i=0; i<10; i++) {
+ fCathode = digits[2];
+ fSignal = digits[3];
+ fPhysics = digits[4];
+ fHit = digits[5];
+ fDetElemId = digits[6];
+
+ for(Int_t i=0; i<kMAXTRACKS; i++) {
fTcharges[i] = charges[i];
fTracks[i] = tracks[i];
}
{
// Destructor
}
+
+//_____________________________________________________________________________
+AliMUONDigit& AliMUONDigit::operator=(const AliMUONDigit& digits)
+{
+ if (this == &digits)
+ return *this;
+
+ fPadX = digits.fPadX;
+ fPadY = digits.fPadY;
+ fCathode = digits.fCathode;
+ fSignal = digits.fSignal;
+ fPhysics = digits.fPhysics;
+ fHit = digits.fHit;
+ fDetElemId = digits.fDetElemId;
+
+ for(Int_t i=0; i<kMAXTRACKS; i++) {
+ fTcharges[i] = digits.fTcharges[i];
+ fTracks[i] = digits.fTracks[i];
+ }
+
+ return *this;
+}
+//_____________________________________________________________________________
+Int_t AliMUONDigit::Compare(const TObject *obj) const
+{
+// sort by idDE
+
+ AliMUONDigit* d = (AliMUONDigit*) obj;
+
+ return ( fDetElemId > d->DetElemId()) ? 1 : -1;
+
+}