#include <TTask.h>
#include <TTree.h>
#include <TVirtualMC.h>
+#include <TStopwatch.h>
#include "AliConst.h"
#include "AliLoader.h"
}
//_____________________________________________________________________________
-void AliTOF::AddDigit(Int_t *tracks, Int_t *vol, Float_t *digits)
+void AliTOF::AddDigit(Int_t *tracks, Int_t *vol, Int_t *digits)
{
//
// Add a TOF digit
}
//_____________________________________________________________________________
-void AliTOF::AddSDigit(Int_t tracknum, Int_t *vol, Float_t *digits)
+void AliTOF::AddSDigit(Int_t tracknum, Int_t *vol, Int_t *digits)
{
//
Float_t xTof, yTof;
- if (IsVersion()==7) {
+ if (IsVersion()==8) {
+
+ xTof = 124.5;//fTOFGeometry->StripLength()+2.*(0.3+0.03); // cm, x-dimension of FTOA volume
+ yTof = fTOFGeometry->Rmax()-fTOFGeometry->Rmin(); // cm, y-dimension of FTOA volume
+ Float_t zTof = fTOFGeometry->ZlenA(); // cm, z-dimension of FTOA volume
+
+ // TOF module internal definitions
+ TOFpc(xTof, yTof, zTof);
+
+ } else if (IsVersion()==7) {
xTof = 124.5;//fTOFGeometry->StripLength()+2.*(0.3+0.03); // cm, x-dimension of FTOA volume
yTof = fTOFGeometry->Rmax()-fTOFGeometry->Rmin(); // cm, y-dimension of FTOA volume
//
if ((evNumber2-evNumber1)==1)
- AliDebug(1, Form("I am making sdigits for the %dth event", evNumber1))
- else if ((evNumber2-evNumber1)>1)
- AliDebug(1, Form("I am making sdigits for the events from the "
- "%dth to the %dth", evNumber1, evNumber2-1));
+ AliDebug(1, Form("I am making sdigits for the %dth event", evNumber1));
+ if ((evNumber2-evNumber1)>1)
+ AliDebug(1, Form("I am making sdigits for the events from the %dth to the %dth", evNumber1, evNumber2-1));
AliRunLoader * rl = fLoader->GetRunLoader();
AliTOFSDigitizer sd((rl->GetFileName()).Data(),evNumber1,evNumber2) ;
}
//___________________________________________________________________________
-Bool_t AliTOF::CheckOverlap(Int_t* vol, Float_t* digit,Int_t Track)
+Bool_t AliTOF::CheckOverlap(Int_t* vol, Int_t* digit,Int_t Track)
{
//
// Checks if 2 or more hits belong to the same pad.
if (vol[i]!=vol2[i]) idem=kFALSE;}
if (idem){ // same pad fired
- Float_t tdc2 = digit[0];
- Float_t tdc1 = currentDigit->GetTdc();
+ Int_t tdc2 = digit[0];
+ Int_t tdc1 = currentDigit->GetTdc();
// we separate two digits on the same pad if
// they are separated in time by at least 25 ns
overlap = kTRUE;
return overlap;
} else
- overlap= kFALSE;
+ overlap= kFALSE;
} // close if (idem) -> two digits on the same TOF pad
// Starting from the TOF digits, writes the Raw Data objects
//
+ TStopwatch stopwatch;
+ stopwatch.Start();
+
fLoader->LoadDigits();
TTree* digits = fLoader->TreeD();
return;
}
- //AliRunLoader *rl = AliRunLoader::Open("galice.root",AliConfig::GetDefaultEventFolderName(),"read");
fRunLoader->CdGAFile();
TFile *in=(TFile*)gFile;
in->cd();
AliTOFDDLRawData rawWriter(geometry);
//AliTOFDDLRawData rawWriter;
rawWriter.SetVerbose(0);
+ //rawWriter.SetFakeOrphaneProduction(kTRUE);
+ //rawWriter.SetPackedAcquisitionMode(kFALSE);
+ if (rawWriter.GetPackedAcquisitionMode()) {
+ if(rawWriter.GetMatchingWindow()>8192)
+ AliWarning(Form("You are running in packing mode and the matching window is %.2f ns, i.e. greater than 199.8848 ns",
+ rawWriter.GetMatchingWindow()*AliTOFGeometry::TdcBinWidth()*1.e-03));
+ }
AliDebug(1,"Formatting raw data for TOF");
digits->GetEvent(0);
fLoader->UnloadDigits();
+ AliDebug(1, Form("Execution time to write TOF raw data : R:%.2fs C:%.2fs",
+ stopwatch.RealTime(),stopwatch.CpuTime()));
+
}
//____________________________________________________________________________