//_________________________________________________________________________
#include "AliSimulation.h"
#include "TString.h"
-#include "AliPHOSGetter.h"
-#include "AliEMCALGetter.h"
#include "Riostream.h"
+#include "TStopwatch.h"
-void simu(Int_t nevents=1, TString opt="GSD", TString name="all")
+void simu(Int_t nevents=1, TString opt="GSD", TString name="all", TString cdb="")
{
AliSimulation sim ;
// Generation and simulation
// Making SDigits
if ( !opt.Contains("S") )
sim.SetMakeSDigits("") ;
- else
- sim.SetMakeSDigits(name.Data()) ;
+ else {
+ sim.SetMakeSDigits(name.Data()) ;
+ if (name.Contains("ITS") || name.Contains("all"))
+ sim.SetMakeDigitsFromHits("ITS ") ;
+ if (name.Contains("TPC") || name.Contains("all"))
+ sim.SetMakeDigitsFromHits("TPC") ;
+ }
// Making Digits
if ( !opt.Contains("D") )
sim.SetMakeDigits("") ;
else
sim.SetMakeDigits(name.Data()) ;
//Merging
- if ( !opt.Contains("M") )
- sim.MergeWith("./bgrd/galice.root", nevents) ;
- // to implement
- sim.Run(nevents) ;
- // Checking result
- if ( name.Contains("PHOS") ) {
- cout << ">>>>>>>>>>>> PHOS " << endl ;
- AliPHOSGetter * gime = AliPHOSGetter::Instance("galice.root") ;
- Int_t event ;
- for (event = 0; event < gime->MaxEvent(); event++) {
- cout << "event # " << event << endl ;
- gime->Event(event, "SD") ;
- cout << " SDigits # " << gime->SDigits()->GetEntries() << endl ;
- cout << " Digits # " << gime->Digits()->GetEntries() << endl ;
- }
- }
- if ( name.Contains("EMCAL") ) {
- cout << ">>>>>>>>>>>> EMCAL " << endl ;
- AliEMCALGetter * gime = AliEMCALGetter::Instance("galice.root") ;
- Int_t event ;
- for (event = 0; event < gime->MaxEvent(); event++) {
- cout << "event # " << event << endl ;
- gime->Event(event, "SD") ;
- cout << " SDigits # " << gime->SDigits()->GetEntries() << endl ;
- cout << " Digits # " << gime->Digits()->GetEntries() << endl ;
- }
- }
+ if ( opt.Contains("M") )
+ sim.MergeWith("bgrd/galice.root") ;
+ //Region of Interest
+ sim.SetRegionOfInterest(kFALSE) ;
+ if ( opt.Contains("W") )
+ sim.SetWriteRawData(name.Data(),"raw.root",kTRUE) ;
+ if ( !cdb.IsNull() )
+ sim.SetDefaultStorage(cdb.Data()) ;
+
+ TStopwatch timer;
+ timer.Start();
+ sim.Run(nevents) ;
+ timer.Stop();
+ timer.Print();
+
}