Cleaning violation codes
[u/mrichter/AliRoot.git] / CRT / AliCRTdigit.cxx
index ff7824045af6b029e7a4b70b87d9c4cd1fdfad21..5824a0cb445864ccc03a6714843a4ca3b6b2b5a2 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log:
+/* $Id$ */
 
-*/
+////////////////////////////////////////////////////////////////////////////
+//  CRT digit: Id
+//
+// The digits are made in FinishEvent() by summing all the hits in a
+// counter.
+//   The main parts of the code need to be written.
+//
+////////////////////////////////////////////////////////////////////////////
 
-#include "AliCRT.h"
 #include "AliCRTdigit.h"
-#include "AliRun.h"
+
+#include <TArrayF.h>
+#include <TArrayI.h>
 
 ClassImp(AliCRTdigit)
 
 //_____________________________________________________________________________
 AliCRTdigit::AliCRTdigit()
+  : AliDigit(),
+    fSector(0),
+    fPlate(0),
+    fStrip(0),
+    fPadx(0),
+    fPadz(0),
+    fNDigits(0),
+    fTdc(0),
+    fAdc(0)
 {
-  // Default ctor.
-
-  fNDigits = 0;
-  fTdc = 0;
-  fAdc = 0;
-  fTracks = 0;
+  //
+  // Default constructor
+  //
 }
 
 //_____________________________________________________________________________
-AliCRTdigit::AliCRTdigit(Int_t tracknum, Int_t *vol,Float_t *digit)
+AliCRTdigit::AliCRTdigit(Int_t* tracks, Int_t *vol, Float_t *digit)
+  : AliDigit(tracks),
+    fSector(vol[0]),
+    fPlate(vol[1]),
+    fStrip(vol[2]),
+    fPadx(vol[3]),
+    fPadz(vol[4]),
+    fNDigits(1),
+    fTdc(new TArrayF(fNDigits)),
+    fAdc(new TArrayF(fNDigits))
 {
   
   //
@@ -44,32 +66,42 @@ AliCRTdigit::AliCRTdigit(Int_t tracknum, Int_t *vol,Float_t *digit)
   // The creator for the AliCRTdigit class. This routine fills the
   // AliCRTdigit data members from the array digits. 
   //
-
-  fSector = vol[0];
-  fPlate  = vol[1];
-  fStrip  = vol[2];
-  fPadx   = vol[3];
-  fPadz   = vol[4];
-  fNDigits = 1;
-  fTdc = new TArrayF(fNDigits);
   (*fTdc)[0] = digit[0];
-  fAdc = new TArrayF(fNDigits);
   (*fAdc)[0] = digit[1];
-  //fTracks = new TArrayI(kMAXDIGITS*fNDigits);
-  fTracks = new TArrayI(fNDigits);
-  (*fTracks)[0] = tracknum;
-  //for (Int_t i = 1; i <kMAXDIGITS*fNDigits; i++) {
-  for (Int_t i = 1; i <fNDigits; i++) {
-    (*fTracks)[i] = -1;
-  }
+}
+
+//_____________________________________________________________________________
+AliCRTdigit::AliCRTdigit(const AliCRTdigit& digit)
+  : AliDigit(digit),
+    fSector(digit.fSector),
+    fPlate(digit.fPlate),
+    fStrip(digit.fStrip),
+    fPadx(digit.fPadx),
+    fPadz(digit.fPadz),
+    fNDigits(digit.fNDigits),
+    fTdc(digit.fTdc),  
+    fAdc(digit.fAdc)
+{
+  //
+  //-- Copy constructor
+  //
+}
 
+//_____________________________________________________________________________
+AliCRTdigit::~AliCRTdigit()
+{
+  //
+  //
+  //
+  if ( fAdc ) { delete fAdc; fAdc = 0; }
+  if ( fTdc ) { delete fTdc; fTdc = 0; }
 }
 
 //_____________________________________________________________________________
-AliCRTdigit::AliCRTdigit(const AliCRTdigit & digit)
+AliCRTdigit& AliCRTdigit::operator=(const AliCRTdigit& digit)
 {
   //
-  //-- Copy ctor.
+  //-- Asingment operator.
   //
   fSector = digit.fSector;
   fPlate  = digit.fPlate;
@@ -77,8 +109,7 @@ AliCRTdigit::AliCRTdigit(const AliCRTdigit & digit)
   fPadx   = digit.fPadx;
   fPadz   = digit.fPadz;
   fNDigits = digit.fNDigits;
-  fTdc = new TArrayF(*digit.fTdc);  
-  fAdc = new TArrayF(*digit.fAdc);
-  fTracks = new TArrayI(*digit.fTracks);
-
+  fTdc = digit.fTdc;
+  fAdc = digit.fAdc;
+  return *this;
 }