X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRD.cxx;h=727e7085aa80cd4a158d174f1ec51e6fa656ccdb;hb=e684830eb643fe153fb10d5e34c4cca214993aef;hp=b7ebdb9efd83a7b5f60912411014e9bcfc0e7711;hpb=32b13758cbc31f702d1d66af986b785f5c0ca99f;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRD.cxx b/TRD/AliTRD.cxx index b7ebdb9efd8..727e7085aa8 100644 --- a/TRD/AliTRD.cxx +++ b/TRD/AliTRD.cxx @@ -30,6 +30,7 @@ #include "AliMC.h" #include "AliMagF.h" #include "AliRun.h" +#include "AliLoader.h" #include "AliTRD.h" #include "AliTRDdigitizer.h" @@ -48,6 +49,7 @@ AliTRD::AliTRD() ,fGasDensity(0) ,fFoilDensity(0) ,fGasNobleFraction(0) + ,fPrimaryIonisation(0) { // // Default constructor @@ -62,6 +64,7 @@ AliTRD::AliTRD(const char *name, const char *title) ,fGasDensity(0) ,fFoilDensity(0) ,fGasNobleFraction(0) + ,fPrimaryIonisation(0) { // // Standard constructor for the TRD @@ -176,13 +179,13 @@ void AliTRD::Hits2SDigits() } //_____________________________________________________________________________ -AliDigitizer *AliTRD::CreateDigitizer(AliRunDigitizer *manager) const +AliDigitizer *AliTRD::CreateDigitizer(AliDigitizationInput* digInput) const { // // Creates a new digitizer object // - return new AliTRDdigitizer(manager); + return new AliTRDdigitizer(digInput); } @@ -550,14 +553,6 @@ void AliTRD::Init() AliError("Not a valid geometry"); } - // Special tracking options for charged particles for XeCO2 - gMC->Gstpar((* fIdtmed)[9],"DRAY" , 1.0); - gMC->Gstpar((* fIdtmed)[9],"STRA" , 1.0); - gMC->Gstpar((* fIdtmed)[9],"LOSS" ,13.0); // Specific energy loss - // Parameters specific to Fluka - //gMC->Gstpar((* fIdtmed)[9],"PRIMIO_E",23.53); // 1st ionisation potential - //gMC->Gstpar((* fIdtmed)[9],"PRIMIO_N",19.344431); // Number of primaries - } //_____________________________________________________________________________ @@ -610,31 +605,61 @@ Bool_t AliTRD::Raw2SDigits(AliRawReader *rawReader) tree = loader->TreeS(); } + AliTRDdigitizer digitizer("TRDdigitizer","TRD digitizer class"); + AliTRDrawData *rawdata = new AliTRDrawData(); - AliTRDdigitsManager *sdigitsManager = rawdata->Raw2Digits(rawReader); + AliTRDdigitsManager *digitsManager = rawdata->Raw2Digits(rawReader); + + // Create the s-digits manager + AliTRDdigitsManager *sdigitsManager = new AliTRDdigitsManager(); + if (sdigitsManager) { + sdigitsManager->SetSDigits(kTRUE); + sdigitsManager->CreateArrays(); + + // Convert the digits into s-digits + digitizer.Digits2SDigits(digitsManager,sdigitsManager); + sdigitsManager->MakeBranch(tree); sdigitsManager->WriteDigits(); + + delete digitsManager; + return kTRUE; + } else { + return kFALSE; + } } //_____________________________________________________________________________ -AliLoader* AliTRD::MakeLoader(const char* topfoldername) +AliLoader *AliTRD::MakeLoader(const Char_t *topfoldername) { + // + // Create a loader for the TRD tracklets + // + fLoader = new AliLoader(GetName(),topfoldername); AliInfo("Adding Tracklets-loader"); - AliDataLoader *dl = new AliDataLoader("TRD.Tracklets.root","tracklets", "tracklets"); + + AliDataLoader *dl = new AliDataLoader("TRD.Tracklets.root" + ,"tracklets" + ,"tracklets"); fLoader->AddDataLoader(dl); - dl = new AliDataLoader("TRD.GtuTracks.root", "gtutracks", "gtutracks"); + + dl = new AliDataLoader("TRD.GtuTracks.root" + ,"gtutracks" + ,"gtutracks"); fLoader->AddDataLoader(dl); + return fLoader; + } //_____________________________________________________________________________