#include "AliITSBeamTestDigSSD.h"
#include "AliITSBeamTestDigitizer.h"
#include "AliRawReaderDate.h"
+#include "AliRawReaderRoot.h"
#include "TGeoManager.h"
#include "TGeoMaterial.h"
#include "TGeoMedium.h"
#include "TGeoVolume.h"
-#include <TGeant3.h>
+#include <TVirtualMC.h>
+//#include <TGeant3.h>
const TString AliITSBeamTestDigitizer::fgkDefaultDigitsFileName="ITS.Digits.root";
fDATEEvType=7;
fRunNumber=-1;
SetFlagInit();
+ SetOptDate();
fBt=0;
fPeriod=kNov04;
}
fDATEEvType=7;
fFlagHeader=kTRUE;
fRunNumber=-1;
+ SetOptDate();
TString choice(opt);
Bool_t aug04 = choice.Contains("Aug04");
fDATEEvType=7;
fFlagHeader=kTRUE;
fRunNumber=run;
+ SetOptDate();
TString choice(opt);
Bool_t aug04 = choice.Contains("Aug04");
Bool_t nov04 = choice.Contains("Nov04");
if(GetBeamTestPeriod()==kAug04){
fBt = new AliITSvSDD03("ITS",2004);
gSystem->Load("libgeant321");
- new TGeant3("C++ Interface to Geant3");
+ // new TGeant3("C++ Interface to Geant3");
+ if(strcmp(gMC->GetName(),"TGeant3")) {
+ Fatal("Init","TGeant3 should be instantiated in advance");
+ return;
+ }
fBt->CreateMaterials();
fBt->CreateGeometry();
fBt->Init();
fEvIn=0;
fEvFin=0;
+ SetOptDate();
}
fLoader->SetDigitsFileName(fDigitsFileName);
fLoader->LoadDigits("recreate");
- AliRawReaderDate rd(fRawdataFileName,fEvIn);
+ AliRawReader* rd;
+
+ if(GetOptDate()) rd = new AliRawReaderDate(fRawdataFileName,fEvIn);
+ else rd = new AliRawReaderRoot(fRawdataFileName,fEvIn);
+
AliHeader* header = fRunLoader->GetHeader();
Int_t iev=fEvIn-1;
AliITSEventHeader* itsh = new AliITSEventHeader("ITSHeader");
fRunLoader->SetEventNumber(iev);
- rd.RequireHeader(fFlagHeader);
- rd.SelectEvents(fDATEEvType);
+ rd->RequireHeader(fFlagHeader);
+ rd->SelectEvents(fDATEEvType);
- digSDD->SetRawReaderDate(&rd);
- digSPD->SetRawReaderDate(&rd);
- digSSD->SetRawReaderDate(&rd);
+ digSDD->SetRawReader(rd);
+ digSPD->SetRawReader(rd);
+ digSSD->SetRawReader(rd);
if(fLoader->TreeD() == 0x0) fLoader->MakeTree("D");
delete digitsSDD;
delete digitsSSD;
- }while(rd.NextEvent());
+ }while(rd->NextEvent());
-
+
fRunLoader->WriteHeader("OVERWRITE");
fRunLoader->WriteRunLoader("OVERWRITE");
+ delete rd;
fLoader->UnloadDigits();
fLoader->UnloadRawClusters();
fRunLoader->UnloadHeader();