* provided "as is" without express or implied warranty. *
**************************************************************************/
-/*
-$Log$
-Revision 1.1 2002/03/28 16:25:26 nilsen
-New TTask method for creating SDigits from Hits.
+/* $Id$ */
-*/
-
-#include <iostream.h>
+#include <Riostream.h>
#include <TROOT.h>
#include <TFile.h>
#include "AliITS.h"
#include "AliITSsDigitize.h"
#include "AliITSgeom.h"
-
+
+/////////////////////////////////////////////////////////
+// //
+// //
+// //
+/////////////////////////////////////////////////////////
ClassImp(AliITSsDigitize)
//______________________________________________________________________
-AliITSsDigitize::AliITSsDigitize(){
+AliITSsDigitize::AliITSsDigitize():
+fInit(kFALSE),
+fEnt(0),
+fEnt0(0),
+fITS(0),
+fRunLoader(0x0){
// Default constructor.
// Inputs:
// none.
// Return:
// A zero-ed constructed AliITSsDigitize class.
- fFilename = "";
- fFile = 0;
- fITS = 0;
fDet[0] = fDet[1] = fDet[2] = kTRUE;
- fInit = kFALSE;
}
//______________________________________________________________________
-AliITSsDigitize::AliITSsDigitize(const char* filename){
+AliITSsDigitize::AliITSsDigitize(const char* filename):
+fInit(),
+fEnt(0),
+fEnt0(0),
+fITS(0),
+fRunLoader(0x0){
// Standard constructor.
// Inputs:
// const char* filename filename containing the digits to be
// Return:
// A standardly constructed AliITSsDigitize class.
- fFilename = filename;
-
- 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;
- }
- gAlice = (AliRun*)fFile->Get("gAlice");
- if(!gAlice) {
- cout << "gAlice not found on file. Aborting." << endl;
- fInit = kFALSE;
- return;
- } // end if !gAlice
- } // end if !filename.
+ if(gAlice)
+ {
+ delete gAlice;
+ gAlice = 0;
+ }
+ fRunLoader = AliRunLoader::Open(filename);
+ fRunLoader->LoadgAlice();
+ fRunLoader->LoadHeader();
+
Init();
}
// Return:
// A destroyed AliITSsDigitize class.
- if(fFile) fFile->Close();
- fFile = 0;
+ if(fRunLoader) delete fRunLoader;
fITS = 0;
}
// none.
// Return:
// kTRUE if no errors initilizing this class occurse else kFALSE
- Int_t nparticles;
-
+ //Int_t nparticles;
+
fITS = (AliITS*) gAlice->GetDetector("ITS");
if(!fITS){
cout << "ITS not found aborting. fITS=" << fITS << endl;
fEnt0 = 0;
fEnt = gAlice->GetEventsPerRun();
- if(!gAlice->TreeS()){
+ AliLoader* loader = fRunLoader->GetLoader("ITSLoader");
+
+ if(!loader->TreeS()){
cout << "Having to create the SDigits Tree." << endl;
- gAlice->MakeTree("S");
+ loader->MakeTree("S");
} // end if !gAlice->TreeS()
//make branch
fITS->MakeBranch("S");
fITS->SetTreeAddress();
- nparticles = gAlice->GetEvent(fEnt0);
-
+
+ fRunLoader->GetEvent(fEnt0);
// finished init.
fInit = InitSDig();
return fInit;
}
//______________________________________________________________________
-Bool_t AliITSsDigitize::InitSDig(){
+Bool_t AliITSsDigitize::InitSDig() const {
// Sets up SDigitization part of AliITSDetType..
// Inputs:
// none.
return;
} // end if !fInit
- fITS->HitsToSDigits(gAlice->GetHeader()->GetEvent(),0,-1," ",lopt," ");
+ fITS->HitsToSDigits(fRunLoader->GetHeader()->GetEvent(),0,-1," ",lopt," ");
}