/*
$Log$
+Revision 1.4 2002/05/10 22:31:30 nilsen
+Changes by Massimo Masera to allow Recpoints and Clusters to be written
+to separate files.
+
+Revision 1.3 2002/02/06 13:52:27 barbera
+gAlice deletion corrected (from M. Masera)
+
Revision 1.2 2002/01/31 18:52:09 nilsen
Minor change to allow the use of files that are already open. grun.C macro
that also does ITS digitizationa and Reconstruction all in one go.
fFilename = "";
fFile = 0;
+ fFile2 = 0;
fITS = 0;
fDet[0] = fDet[1] = fDet[2] = kTRUE;
fInit = kFALSE;
// A standardly constructed AliITSreconstruction class.
fFilename = filename;
-
+ fFile2 = 0;
+ fFile = 0;
if(filename){
fFile = (TFile*)gROOT->GetListOfFiles()->FindObject(fFilename.Data());
if(fFile) fFile->Close();
fFile = new TFile(fFilename.Data(),"UPDATE");
- //
- if(gAlice) {
- delete gAlice;
- gAlice = 0;
- }
+ if(gAlice) {
+ delete gAlice;
+ gAlice = 0;
+ }
gAlice = (AliRun*)fFile->Get("gAlice");
if(!gAlice) {
cout << "gAlice not found on file. Aborting." << endl;
return;
} // end if !gAlice
} // end if !filename.
-
- Init();
}
//______________________________________________________________________
AliITSreconstruction::~AliITSreconstruction(){
// Return:
// kTRUE if no errors initilizing this class occurse else kFALSE
Int_t nparticles;
-
fITS = (AliITS*) gAlice->GetDetector("ITS");
if(!fITS){
cout << "ITS not found aborting. fITS=" << fITS << endl;
cout << "Initilization Failed, Can't run Exec." << endl;
return;
} // end if !fInit
+ TDirectory *curr = gDirectory;
+ if(fFile2)fFile2->cd();
for(evnt=0;evnt<fEnt;evnt++){
- nparticles = gAlice->GetEvent(evnt);
- gAlice->SetEvent(evnt);
- if(!gAlice->TreeR()) gAlice->MakeTree("R");
- fITS->MakeBranch("R");
- fITS->DigitsToRecPoints(evnt,0,lopt);
+ nparticles = gAlice->GetEvent(evnt);
+ gAlice->SetEvent(evnt);
+ if(!gAlice->TreeR()){
+ if(fFile2){
+ gAlice->MakeTree("R",fFile2);
+ }
+ else {
+ gAlice->MakeTree("R");
+ }
+ }
+ fITS->MakeBranch("R");
+ fITS->MakeTreeC();
+ fITS->DigitsToRecPoints(evnt,0,lopt);
} // end for evnt
+ curr->cd();
+}
+//______________________________________________________________________
+void AliITSreconstruction::SetOutputFile(TString filename){
+ // Set a file name for recpoints. Used only if this file is not the file
+ // containing digits. This obj is deleted by AliRun.
+ fFile2 = gAlice->InitTreeFile("R",filename);
}
+
+
+
+
+