X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TOF%2FAliTOFSDigit.cxx;h=a506517d75af09ee4a02a78256c06a1235dafec8;hb=9ab38379024f14edd47a3835a9e8f93d05e47bd3;hp=94a6aec4cf59d260ab2e96abe83a7b5c1600c8f5;hpb=5c016a7bf1a2dc79a3e07bf227767f5ba04a4beb;p=u%2Fmrichter%2FAliRoot.git diff --git a/TOF/AliTOFSDigit.cxx b/TOF/AliTOFSDigit.cxx index 94a6aec4cf5..a506517d75a 100644 --- a/TOF/AliTOFSDigit.cxx +++ b/TOF/AliTOFSDigit.cxx @@ -15,59 +15,74 @@ /* $Id$ */ -//_________________________________________________________________________ -// TOF sdigit: member variables -// fSector : TOF sector -// fPlate : TOF plate -// fStrip : strips number -// fPadx : pad number along x -// fPadz : pad number along z -// fTdc : TArrayF of TDC values -// fAdc : TArrayF of ADC values -// -// Getters, setters and member functions defined here -// -//*-- Authors: F. Pierella, A. Seganti, D. Vicinanza +//_________________________________________________________________________// +// // +// TOF sdigit: member variables // +// fSector : TOF sector // +// fPlate : TOF plate // +// fStrip : strips number // +// fPadx : pad number along x // +// fPadz : pad number along z // +// fTdc : TArrayI of TDC values // +// fAdc : TArrayI of ADC values // +// // +// Getters, setters and member functions defined here // +// // +// -- Authors: F. Pierella, A. Seganti, D. Vicinanza // +//_________________________________________________________________________// -#include -#include "TArrayF.h" -#include "TArrayI.h" +//#include "TArrayI.h" -#include "AliRun.h" -#include "AliTOF.h" -#include "AliTOFConstants.h" +#include "AliLog.h" + +#include "AliTOFGeometry.h" #include "AliTOFSDigit.h" ClassImp(AliTOFSDigit) //////////////////////////////////////////////////////////////////////// - AliTOFSDigit::AliTOFSDigit() +AliTOFSDigit::AliTOFSDigit(): + fSector(-1), + fPlate(-1), + fStrip(-1), + fPadx(-1), + fPadz(-1), + fNDigits(0), + fTdc(0x0), + fAdc(0x0), + fTracks(0x0) { // // default ctor // - fNDigits = 0; - fTdc = 0; - fAdc = 0; - fTracks = 0; } //////////////////////////////////////////////////////////////////////// -AliTOFSDigit::AliTOFSDigit(Int_t tracknum, Int_t *vol,Float_t *digit) -:TObject() +AliTOFSDigit::AliTOFSDigit(Int_t tracknum, Int_t *vol,Int_t *digit): + TObject(), + fSector(-1), + fPlate(-1), + fStrip(-1), + fPadx(-1), + fPadz(-1), + fNDigits(0), + fTdc(0x0), + fAdc(0x0), + fTracks(0x0) { // // Constructor of digit object // + fSector = vol[0]; fPlate = vol[1]; fStrip = vol[2]; fPadx = vol[3]; fPadz = vol[4]; fNDigits = 1; - fTdc = new TArrayF(fNDigits); + fTdc = new TArrayI(fNDigits); (*fTdc)[0] = digit[0]; - fAdc = new TArrayF(fNDigits); + fAdc = new TArrayI(fNDigits); (*fAdc)[0] = digit[1]; fTracks = new TArrayI(kMAXDIGITS*fNDigits); (*fTracks)[0] = tracknum; @@ -77,39 +92,69 @@ AliTOFSDigit::AliTOFSDigit(Int_t tracknum, Int_t *vol,Float_t *digit) } //////////////////////////////////////////////////////////////////////// -AliTOFSDigit::AliTOFSDigit(const AliTOFSDigit & digit) -:TObject() +AliTOFSDigit::AliTOFSDigit(const AliTOFSDigit & digit): + TObject(digit), + fSector(digit.fSector), + fPlate(digit.fPlate), + fStrip(digit.fStrip), + fPadx(digit.fPadx), + fPadz(digit.fPadz), + fNDigits(digit.fNDigits), + fTdc(0x0), + fAdc(0x0), + fTracks(0x0) +{ + // + // copy ctor for AliTOFSDigit object + // + fTdc = new TArrayI(*digit.fTdc); + fAdc = new TArrayI(*digit.fAdc); + fTracks = new TArrayI(*digit.fTracks); +} + +//////////////////////////////////////////////////////////////////////// +AliTOFSDigit& AliTOFSDigit::operator=(const AliTOFSDigit & digit) { // // copy ctor for AliTOFSDigit object // + + if (this == &digit) + return *this; + + TObject::operator=(digit); fSector = digit.fSector; fPlate = digit.fPlate; fStrip = digit.fStrip; 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; + fTracks = digit.fTracks; + return *this; + } //////////////////////////////////////////////////////////////////////// AliTOFSDigit::AliTOFSDigit(Int_t sector, Int_t plate, Int_t strip, Int_t padx, - Int_t padz, Float_t tdc, Float_t adc) + Int_t padz, Int_t tdc, Int_t adc): + fSector(sector), + fPlate(plate), + fStrip(strip), + fPadx(padx), + fPadz(padz), + fNDigits(1), + fTdc(0x0), + fAdc(0x0), + fTracks(0x0) { // // Constructor for sdigit // - fSector = sector; - fPlate = plate; - fStrip = strip; - fPadx = padx; - fPadz = padz; - fNDigits = 1; - fTdc = new TArrayF(fNDigits); + fTdc = new TArrayI(fNDigits); (*fTdc)[0] = tdc; - fAdc = new TArrayF(fNDigits); + fAdc = new TArrayI(fNDigits); (*fAdc)[0] = adc; // no tracks were specified, set them to -1 fTracks = new TArrayI(kMAXDIGITS*fNDigits); @@ -141,7 +186,7 @@ void AliTOFSDigit::Update(Float_t tdcbin, Int_t tdc, Int_t adc, Int_t track) // Int_t sameTime = -1; - Float_t tdcwindow=((Float_t)AliTOFConstants::fgkTimeDiff)/tdcbin; + Float_t tdcwindow=((Float_t)AliTOFGeometry::TimeDiff())/tdcbin; for (Int_t i = 0; i < fNDigits; i++) { if (TMath::Abs(tdc-fTdc->At(i)) < tdcwindow) { sameTime = i; @@ -150,7 +195,7 @@ void AliTOFSDigit::Update(Float_t tdcbin, Int_t tdc, Int_t adc, Int_t track) } if (sameTime >= 0) { - (*fAdc)[sameTime] += static_cast(adc); + (*fAdc)[sameTime] += adc; // update track - find the first -1 value and replace it by the // track number for (Int_t iTrack=0; iTrackGetNDigits(); for (Int_t j = 0; j < nlocations; j++) { - Float_t tdcbin=50.; // [ps] hardwired for the time being + Float_t tdcbin = AliTOFGeometry::TdcBinWidth();// [ps] hardwired for the time being Int_t tdc=(Int_t)sdig->GetTdc(j); Int_t adc=(Int_t)sdig->GetAdc(j); // getting here only the first track number @@ -201,7 +245,7 @@ void AliTOFSDigit::Update(AliTOFSDigit* sdig) Int_t sameTime = -1; - Float_t tdcwindow=((Float_t)AliTOFConstants::fgkTimeDiff)/tdcbin; + Float_t tdcwindow=((Float_t)AliTOFGeometry::TimeDiff())/tdcbin; for (Int_t i = 0; i < fNDigits; i++) { if (TMath::Abs(tdc-fTdc->At(i)) < tdcwindow) { sameTime = i; @@ -210,7 +254,7 @@ void AliTOFSDigit::Update(AliTOFSDigit* sdig) } if (sameTime >= 0) { - (*fAdc)[sameTime] += static_cast(adc); + (*fAdc)[sameTime] += adc; // update track - find the first -1 value and replace it by the // track number for (Int_t iTrack=0; iTrack