]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOFdigit.cxx
Adding new libraries
[u/mrichter/AliRoot.git] / TOF / AliTOFdigit.cxx
index bd5f0bf55cff58a24a2b3116277878efa13178e0..e1d42d1644c2d85fea48754006a78e90a0723e29 100644 (file)
 
 /* $Id$ */
 
-//_________________________________________________________________________
-//  TOF digit: member variables 
-//  fSector  : TOF sector
-//  fPlate   : TOF plate
-//  fStrip   : strips number
-//  fPadx    : pad number along x
-//  fPadz    : pad number along z
-//  fTdc     : TDC
-//  fAdc     : ADC
-//              
-//  Getters, setters and member functions  defined here
-//
-//*-- Authors: F. Pierella, A. Seganti, D. Vicinanza
+//_________________________________________________________________________//
+//                                                                         //
+//  TOF digit: member variables                                            //
+//  fSector  : TOF sector                                                  //
+//  fPlate   : TOF plate                                                   //
+//  fStrip   : strips number                                               //
+//  fPadx    : pad number along x                                          //
+//  fPadz    : pad number along z                                          //
+//  fTdc     : TDC                                                         //
+//  fAdc     : ADC                                                         //
+//                                                                         //
+//  Getters, setters and member functions  defined here                    //
+//                                                                         //
+// -- Authors: F. Pierella, A. Seganti, D. Vicinanza                       //
+//_________________________________________________________________________//
 
  
-#include <Riostream.h>
+#include "Riostream.h"
 
-#include "AliRun.h"
-#include "AliTOFGeometry.h"
 #include "AliTOFdigit.h"
+#include "AliTOFGeometry.h"
 
 ClassImp(AliTOFdigit)
 
+//______________________________________________________________________________
+AliTOFdigit::AliTOFdigit()
+  :AliDigit(),
+   fSector(-1),
+   fPlate(-1),
+   fStrip(-1),
+   fPadx(-1),
+   fPadz(-1),
+   fTdc(0),
+   fTdcND(0),
+   fAdc(0),
+   fToT(0)
+{
+}
 //______________________________________________________________________________
 AliTOFdigit::AliTOFdigit(Int_t *tracks, Int_t *vol,Float_t *digit)
-:AliDigit(tracks)
+  :AliDigit(tracks),
+   fSector(-1),
+   fPlate(-1),
+   fStrip(-1),
+   fPadx(-1),
+   fPadz(-1),
+   fTdc(0),
+   fTdcND(0),
+   fAdc(0),
+   fToT(0)
 {
 //
 // Constructor of digit object
 //
+
   fSector = vol[0];
   fPlate  = vol[1];
   fStrip  = vol[2];
   fPadx   = vol[3];
   fPadz   = vol[4];
   fTdc    = digit[0];
+  fTdcND  = digit[3];
   fAdc    = digit[1];
+  fToT    = digit[2];
+
 }
 
 //____________________________________________________________________________
 AliTOFdigit::AliTOFdigit(const AliTOFdigit & digit)
-:AliDigit(digit)
+  :AliDigit(digit),
+   fSector(-1),
+   fPlate(-1),
+   fStrip(-1),
+   fPadx(-1),
+   fPadz(-1),
+   fTdc(0),
+   fTdcND(0),
+   fAdc(0),
+   fToT(0)
 {
   // 
   // copy ctor for AliTOFdigit object
@@ -71,13 +108,24 @@ AliTOFdigit::AliTOFdigit(const AliTOFdigit & digit)
   fPadx   = digit.fPadx;
   fPadz   = digit.fPadz;
   fTdc    = digit.fTdc;
+  fTdcND    = digit.fTdcND;
   fAdc    = digit.fAdc;
+  fToT = digit.fToT;
 
 }
 
 //______________________________________________________________________________
 AliTOFdigit::AliTOFdigit(Int_t sector, Int_t plate, Int_t strip, Int_t padx,
-Int_t padz, Float_t tdc, Float_t adc)
+                        Int_t padz, Float_t tdc, Float_t adc):
+   fSector(-1),
+   fPlate(-1),
+   fStrip(-1),
+   fPadx(-1),
+   fPadz(-1),
+   fTdc(0),
+   fTdcND(0),
+   fAdc(0),
+   fToT(0)
 {
 //
 // Constructor for sdigit
@@ -88,7 +136,9 @@ Int_t padz, Float_t tdc, Float_t adc)
   fPadx   = padx;
   fPadz   = padz;  
   fTdc    = tdc;   
+  fTdcND    = 0;   
   fAdc    = adc;     
+  fToT = 0;
 }
    
 //______________________________________________________________________________
@@ -107,7 +157,7 @@ void AliTOFdigit::GetLocation(Int_t *Loc) const
 }
 
 //______________________________________________________________________________
-Int_t AliTOFdigit::GetTotPad() const
+Int_t AliTOFdigit::GetTotPad(AliTOFGeometry *tofGeom) const
 {
 //
 // Get the "total" index of the pad inside a Sector
@@ -121,16 +171,16 @@ Int_t AliTOFdigit::GetTotPad() const
     //before = 0;
     break;
   case 1:
-    before = AliTOFGeometry::NStripC();
+    before = tofGeom->NStripC();
     break;
   case 2:
-    before = AliTOFGeometry::NStripC() +   AliTOFGeometry::NStripB();
+    before = tofGeom->NStripC() +   AliTOFGeometry::NStripB();
     break;
   case 3:
-    before = AliTOFGeometry::NStripC() +   AliTOFGeometry::NStripB() + AliTOFGeometry::NStripA();
+    before = tofGeom->NStripC() +   AliTOFGeometry::NStripB() + AliTOFGeometry::NStripA();
     break;
   case 4:
-    before = AliTOFGeometry::NStripC() + 2*AliTOFGeometry::NStripB() + AliTOFGeometry::NStripA();
+    before = tofGeom->NStripC() + 2*AliTOFGeometry::NStripB() + AliTOFGeometry::NStripA();
     break;
   }
   
@@ -172,12 +222,14 @@ Bool_t AliTOFdigit::operator==(AliTOFdigit const &digit) const
      fPadx==digit.fPadx &&
      fPadz==digit.fPadz &&
      fTdc==digit.fTdc &&
-     fAdc==digit.fAdc) return kTRUE;
+     fTdcND==digit.fTdcND &&
+     fAdc==digit.fAdc &&
+     fToT==digit.fToT ) return kTRUE;
      else return kFALSE;
 }
 
 //______________________________________________________________________________
-AliTOFdigit& AliTOFdigit::operator+(AliTOFdigit const &digit)
+AliTOFdigit AliTOFdigit::operator+(const AliTOFdigit &digit)
 {
 //
 // Overloading of Sum operator
@@ -200,11 +252,13 @@ if  (fSector==digit.fSector &&
 //______________________________________________________________________________
 ostream& operator << (ostream& out, const AliTOFdigit &digit)
 {
-//
-// Output streamer: output of the digit data
-//
-out << "Sector " << digit.fSector << ", Plate " << digit.fPlate << ", Strip " << digit.fStrip << endl;
-out << "Padx" << digit.fPadx << ", Padz " << digit.fPadz << endl;
-out << "TDC " << digit.fTdc << ", ADC "<< digit.fAdc << endl;
-return out;
+  //
+  // Output streamer: output of the digit data
+  //
+
+  out << "Sector " << digit.fSector << ", Plate " << digit.fPlate << ", Strip " << digit.fStrip << endl;
+  out << "Padx" << digit.fPadx << ", Padz " << digit.fPadz << endl;
+  out << "TDC " << digit.fTdc << ", ADC "<< digit.fAdc << endl;
+
+  return out;
 }