/////////////////////////////////////////////////////////////////////////
#include <Riostream.h>
+#include <TFile.h>
#include <TPolyMarker3D.h>
+#include "AliClusters.h"
+#include "AliDisplay2.h"
#include "AliDisplayClusters.h"
-#include "AliModuleInfo.h"
-
-#include "AliRun.h"
-#include "AliRunLoader.h"
#include "AliITS.h"
#include "AliITSLoader.h"
-#include "AliITSgeom.h"
#include "AliITSclusterV2.h"
-#include "AliTPCParam.h"
+#include "AliITSgeom.h"
+#include "AliModuleInfo.h"
+#include "AliRun.h"
+#include "AliRunLoader.h"
#include "AliTPCLoader.h"
-#include "AliClusters.h"
+#include "AliTPCParam.h"
#include "AliTPCcluster.h"
-#include "AliDisplay2.h"
-
ClassImp(AliDisplayClusters);
//_____________________________________________________________
// --- ROOT system ---
-#include "TSystem.h"
-#include "TROOT.h"
+#include <TFile.h>
+#include <TROOT.h>
+#include <TSystem.h>
// --- Standard library ---
// --- AliRoot header files ---
-#include "AliEMCALGetter.h"
#include "AliEMCAL.h"
-#include "AliRunLoader.h"
-#include "AliStack.h"
-#include "AliHeader.h"
+#include "AliEMCALGetter.h"
#include "AliEMCALLoader.h"
+#include "AliHeader.h"
#include "AliMC.h"
+#include "AliRunLoader.h"
+#include "AliStack.h"
ClassImp(AliEMCALGetter)
//*
+#include <TBrowser.h>
+#include <TFile.h>
+#include <TH1F.h>
+#include <TH2.h>
+#include <TParticle.h>
+#include <TROOT.h>
+#include <TString.h>
+#include <TVector3.h>
+
+#include "AliEMCALJetFinder.h"
#include "AliEMCALJetMicroDst.h"
-#include "AliRun.h"
-#include "AliHeader.h"
#include "AliGenEventHeader.h"
#include "AliGenHijingEventHeader.h"
-#include "AliEMCALJetFinder.h"
-#include <TVector3.h>
-#include <TROOT.h>
-#include <TBrowser.h>
-#include <TString.h>
-#include <TParticle.h>
+#include "AliHeader.h"
#include "AliMC.h"
-#include <TH2.h>
-#include <TH1F.h>
-
+#include "AliRun.h"
ClassImp(AliEMCALJetMicroDst)
// //
//////////////////////////////////////////////////////////////////////
-#include "AliHBTReaderITSv1.h"
-#include "AliHBTRun.h"
-#include "AliHBTParticle.h"
-#include "AliHBTParticleCut.h"
-
#include <Riostream.h>
-
-#include <TTree.h>
#include <TBranch.h>
+#include <TFile.h>
#include <TObjArray.h>
#include <TParticle.h>
#include <TString.h>
+#include <TTree.h>
-#include <AliRun.h>
-#include <AliStack.h>
-#include <AliMagF.h>
-#include <AliKalmanTrack.h>
-#include <AliITSIOTrack.h>
+#include "AliHBTParticle.h"
+#include "AliHBTParticleCut.h"
+#include "AliHBTReaderITSv1.h"
+#include "AliHBTRun.h"
+#include "AliITSIOTrack.h"
+#include "AliKalmanTrack.h"
+#include "AliMagF.h"
+#include "AliRun.h"
+#include "AliStack.h"
ClassImp(AliHBTReaderITSv1)
/********************************************************************/
-#include "AliHBTTrackPoints.h"
//_________________________________
////////////////////////////////////////////////////////////
// //
// different events (that are use to fill deniminators) //
// //
////////////////////////////////////////////////////////////
-#include "AliTrackReference.h"
-
-#include "AliTPCtrack.h"
-#include "AliESDtrack.h"
-#include <TMath.h>
#include <TClonesArray.h>
+#include <TFile.h>
+#include <TMath.h>
+
+#include "AliESDtrack.h"
+#include "AliHBTTrackPoints.h"
+#include "AliTPCtrack.h"
+#include "AliTrackReference.h"
ClassImp(AliHBTTrackPoints)
// //
///////////////////////////////////////////////////////////////////////////////
+#include <TFile.h>
#include <TGrid.h>
#include <TGridResult.h>
#include <TMessage.h>
//////////////////////////////////////////////////////////////////////////////
// --- ROOT system ---
-#include "TROOT.h"
#include "TF1.h"
+#include "TFile.h"
#include "TObjString.h"
+#include "TROOT.h"
// --- Standard library ---
// --- AliRoot header files ---
-#include "AliPHOSGetter.h"
-#include "AliPHOSCalibrator.h"
-#include "AliPHOSConTableDB.h"
#include "AliPHOSCalibrManager.h"
#include "AliPHOSCalibrationData.h"
+#include "AliPHOSCalibrator.h"
+#include "AliPHOSConTableDB.h"
+#include "AliPHOSGetter.h"
ClassImp(AliPHOSCalibrator)
// --- ROOT system ---
-#include "TSystem.h"
+#include "TFile.h"
#include "TROOT.h"
+#include "TSystem.h"
// --- Standard library ---
// --- AliRoot header files ---
-#include "AliPHOSGetter.h"
+#include "AliESD.h"
+#include "AliHeader.h"
+#include "AliMC.h"
#include "AliPHOS.h"
+#include "AliPHOSBeamTestEvent.h"
+#include "AliPHOSGetter.h"
+#include "AliPHOSLoader.h"
#include "AliRunLoader.h"
#include "AliStack.h"
-#include "AliHeader.h"
-#include "AliPHOSLoader.h"
-#include "AliPHOSBeamTestEvent.h"
-#include "AliMC.h"
-#include "AliESD.h"
ClassImp(AliPHOSGetter)
// //
//////////////////////////////////////////////////////////////////////////
-
-#include "AliRICH.h"
-#include "AliRICHRecon.h"
-#include "AliRICHParam.h"
-#include "AliRICHChamber.h"
-#include <AliLoader.h>
-#include <AliRun.h>
-#include <AliStack.h>
#include <Riostream.h>
-#include <TParticle.h>
+#include <TCanvas.h>
+#include <TFile.h>
#include <TH2.h>
#include <TMath.h>
-#include <TRandom.h>
+#include <TMath.h>
#include <TMinuit.h>
#include <TNtuple.h>
-#include <TMath.h>
+#include <TParticle.h>
+#include <TRandom.h>
#include <TRotation.h>
#include <TVector3.h>
-#include <TCanvas.h>
+
+#include "AliLoader.h"
+#include "AliRICH.h"
+#include "AliRICHChamber.h"
+#include "AliRICHParam.h"
+#include "AliRICHRecon.h"
+#include "AliRun.h"
+#include "AliStack.h"
#define NPointsOfRing 201
Error("GetRunLoader","Can not get event folder.");
return 0;
}
- rg = dynamic_cast<AliRunLoader*>(ef->FindObject(AliRunLoader::fgkRunLoaderName));
+ rg = dynamic_cast<AliRunLoader*>(ef->FindObject(AliRunLoader::GetRunLoaderName()));
return rg;
}
{
//gets the run-loader from event folder
AliRunLoader* rg = 0x0;
- TObject * obj = GetEventFolder()->FindObject(AliRunLoader::fgkRunLoaderName);
+ TObject * obj = GetEventFolder()->FindObject(AliRunLoader::GetRunLoaderName());
if (obj) rg = dynamic_cast<AliRunLoader*>(obj);
return rg;
}
#include <TArrayF.h>
#include <TArrayI.h>
+#include <TMCProcess.h>
#include <TVirtualMCApplication.h>
class AliGenerator;
// //
///////////////////////////////////////////////////////////////////////////////
+#include <TArrayF.h>
+#include <TFile.h>
+#include <TSystem.h>
+#include <TROOT.h>
+#include <TPluginManager.h>
#include "AliReconstruction.h"
#include "AliRunLoader.h"
#include "AliGenEventHeader.h"
#include "AliESDpid.h"
#include "AliMagF.h"
-#include <TArrayF.h>
-#include <TSystem.h>
-#include <TROOT.h>
-#include <TPluginManager.h>
-
ClassImp(AliReconstruction)
-#include "AliRunLoader.h"
//____________________________________________________________________
//////////////////////////////////////////////////////////////////////
// //
//////////////////////////////////////////////////////////////////////
#include <TBranch.h>
-#include <TError.h>
#include <TFile.h>
#include <TFolder.h>
#include <TGeometry.h>
#include <TObjArray.h>
-#include <TROOT.h>
#include <TString.h>
-#include <TTask.h>
+class TTask;
#include <TTree.h>
#include "AliRun.h"
#include "AliHeader.h"
#include "AliStack.h"
#include "AliDetector.h"
-#include "AliRunDigitizer.h"
+#include "AliRunLoader.h"
ClassImp(AliRunLoader)
}
/**************************************************************************/
+AliRunLoader::AliRunLoader(const AliRunLoader &rl):
+ TNamed(rl),
+ fLoaders(0x0),
+ fEventFolder(0x0),
+ fCurrentEvent(0),
+ fGAFile(0x0),
+ fHeader(0x0),
+ fStack(0x0),
+ fKineDataLoader(0x0),
+ fTrackRefsDataLoader(0x0),
+ fNEventsPerFile(0),
+ fUnixDirName(".")
+{
+ //
+ // Copy ctor
+ //
+ rl.Copy(*this);
+}
+/**************************************************************************/
+
AliRunLoader::~AliRunLoader()
{
//dtor
}
/**************************************************************************/
+void AliRunLoader::Copy(TObject &) const
+{
+ Fatal("Copy","Not implemented");
+}
+/**************************************************************************/
+
Int_t AliRunLoader::GetEvent(Int_t evno)
{
//Gets event number evno
//returns the pointer to run Loader which can be further used for accessing data
//in case of error returns NULL
- static const TString webaddress("http://alisoft.cern.ch/people/skowron/codedoc/split/index.html");
+ static const TString kwebaddress("http://alisoft.cern.ch/people/skowron/codedoc/split/index.html");
if (AliLoader::GetDebug())
::Info("AliRunLoader::Open",
- "\n\n\nNew I/O strcture: See more info:\n %s\n\n\n",webaddress.Data());
+ "\n\n\nNew I/O strcture: See more info:\n %s\n\n\n",kwebaddress.Data());
AliRunLoader* result = 0x0;
/////////////////////////////////////////////////////////////////////
#include <TNamed.h>
-#include <TFile.h>
+
#include "AliConfig.h"
#include "AliLoader.h"
#include "AliDataLoader.h"
+class TFile;
class TString;
class TFolder;
class TObjArray;
AliRunLoader();
AliRunLoader(const char* topfoldername);
AliRunLoader(TFolder* topfolder);
+ AliRunLoader(const AliRunLoader &rl);
+ AliRunLoader & operator = (const AliRunLoader &rl)
+ {rl.Copy(*this); return *this;}
virtual ~AliRunLoader();
TString GetFileName() const;//returns name of galice file
const TObjArray* GetArrayOfLoaders() const {return fLoaders;}
Int_t GetDebug() const {return AliLoader::GetDebug();}
- void cd(){fgRunLoader = this;}
+ void Cd(){fgRunLoader = this;}
void Synchronize();
AliLoader* GetDetectorLoader(const char* detname);
static TTask* GetRunTracker(); //
static TTask* GetRunPIDTask(); //
static TTask* GetRunQATask(); //
+
+ static TString GetRunLoaderName () {return fgkRunLoaderName;}
+ static TString GetHeaderContainerName () {return fgkHeaderContainerName;}
+ static TString GetKineContainerName () {return fgkKineContainerName;}
+ static TString GetTrackRefsContainerName () {return fgkTrackRefsContainerName;}
+ static TString GetHeaderBranchName () {return fgkHeaderBranchName;}
+ static TString GetKineBranchName () {return fgkKineBranchName;}
+ static TString GetGAliceName () {return fgkGAliceName;}
- static const TString fgkRunLoaderName; //default name of the run loader
- static const TString fgkHeaderContainerName; //default name of the kinematics container (TREE) name - TreeE
- static const TString fgkKineContainerName; //default name of the kinematics container (TREE) name - TreeK
- static const TString fgkTrackRefsContainerName; //default name of the track references container (TREE) name - TreeTR
- static const TString fgkHeaderBranchName; //default name of the branch containing the header
- static const TString fgkKineBranchName; //default name of the branch with kinematics
- static const TString fgkGAliceName; //default name for gAlice file
- protected:
+protected:
/**********************************************/
/************ PROTECTED ***************/
/********* D A T A ************/
static AliRunLoader* fgRunLoader; //pointer to the AliRunLoader instance
+private:
+ void Copy(TObject &arun) const;
+
+ static const TString fgkRunLoaderName; //default name of the run loader
+ static const TString fgkHeaderContainerName; //default name of the kinematics container (TREE) name - TreeE
+ static const TString fgkKineContainerName; //default name of the kinematics container (TREE) name - TreeK
+ static const TString fgkTrackRefsContainerName; //default name of the track references container (TREE) name - TreeTR
+ static const TString fgkHeaderBranchName; //default name of the branch containing the header
+ static const TString fgkKineBranchName; //default name of the branch with kinematics
+ static const TString fgkGAliceName; //default name for gAlice file
ClassDef(AliRunLoader,1)
};
else
Warning("ConnectTree","DIR IS NOT SET !!!");
- TBranch *branch=fTreeK->GetBranch(AliRunLoader::fgkKineBranchName);
+ TBranch *branch=fTreeK->GetBranch(AliRunLoader::GetKineBranchName());
if(branch == 0x0)
{
- branch = fTreeK->Branch(AliRunLoader::fgkKineBranchName, "TParticle", &fParticleBuffer, 4000);
+ branch = fTreeK->Branch(AliRunLoader::GetKineBranchName(), "TParticle", &fParticleBuffer, 4000);
if (AliLoader::GetDebug()) Info("ConnectTree","Creating Branch in Tree");
}
else
/* $Id$ */
+#include <TFile.h>
+#include <TObjString.h>
+
+#include "AliLoader.h"
+#include "AliRun.h"
+#include "AliStream.h"
+
////////////////////////////////////////////////////////////////////////
//
// AliStream.cxx
//
////////////////////////////////////////////////////////////////////////
-#include <Riostream.h>
-
-#include "TTree.h"
-#include "TROOT.h"
-
-#include "AliStream.h"
-#include "AliRun.h"
-
-#include "TObjString.h"
-#include "TArrayI.h"
-#include "TClonesArray.h"
-#include "TFile.h"
-#include "AliLoader.h"
-
ClassImp(AliStream)
AliStream::AliStream():
fFileNames(0x0),
fEventFolderName(0)
{
-// root requires default ctor, where no new objects can be created
-// do not use this ctor, it is supplied only for root needs
+ // root requires default ctor, where no new objects can be created
+ // do not use this ctor, it is supplied only for root needs
}
//_______________________________________________________________________
}
//_______________________________________________________________________
+AliStream::AliStream(const AliStream &as):
+ TNamed(as),
+ fLastEventSerialNr(-1),
+ fLastEventNr(0),
+ fCurrentFileIndex(-1),
+ fEvents(0),
+ fMode(0),
+ fFileNames(0x0),
+ fEventFolderName(" ")
+{
+ //
+ // Copy ctor
+ //
+ as.Copy(*this);
+}
+//_______________________________________________________________________
+
AliStream::~AliStream()
{
// default dtor
}
//_______________________________________________________________________
+void AliStream::Copy(TObject &) const
+{
+ //
+ // Copy function
+ //
+ Fatal("Copy","Not implemented!");
+}
+//_______________________________________________________________________
+
void AliStream::AddFile(const char *fileName)
{
// stores the name of the file
//_______________________________________________________________________
void AliStream::ChangeMode(Option_t* option)
-// set the mode to READ or UPDATE, reopen file with the new mode
-// only change from UPDATE to READ have sense in the current scheme,
-// other changes are possible but not usefull
{
+ // set the mode to READ or UPDATE, reopen file with the new mode
+ // only change from UPDATE to READ have sense in the current scheme,
+ // other changes are possible but not usefull
fMode = option;
AliRunLoader* currentloader = AliRunLoader::GetRunLoader(fEventFolderName);
Bool_t AliStream::OpenNextFile()
{
+ //
+ // Opens next file in the list
+ //
if (++fCurrentFileIndex > fFileNames->GetLast()) {
Error("OpenNextFile", "No more files in the stream") ;
return kFALSE;
Bool_t AliStream::ImportgAlice()
{
+ //
+ // Imports gAlice object from file
+ //
if (fFileNames->GetLast() < 0) return kFALSE;
AliRunLoader* currentloader = AliRunLoader::GetRunLoader(fEventFolderName);
//_______________________________________________________________________
TString AliStream::GetFileName(Int_t order) const
-// returns name of the order-th file
-// returns empty string if such file does not exist
-// first file in the input stream is 0
{
+ // returns name of the order-th file
+ // returns empty string if such file does not exist
+ // first file in the input stream is 0
TString fileName("");
if (order > fFileNames->GetLast()) return fileName;
TObjString *fileNameStored = dynamic_cast<TObjString*>(fFileNames->At(order));
////////////////////////////////////////////////////////////////////////
// --- ROOT system ---
-#include "TNamed.h"
+#include <TNamed.h>
// --- AliRoot header files ---
-//#include <TString.h>
-
-#include "TObjArray.h"
+class TObjArray;
class TFile;
class TString;
public:
AliStream();
AliStream(const char* foldername, Option_t *optioneventfoldername);
+ AliStream(const AliStream &as);
+ AliStream & operator = (const AliStream & as)
+ {as.Copy(*this); return *this;}
virtual ~AliStream();
void AddFile(const char *fileName);
Int_t GetCurrentEventNumber() const { return fLastEventSerialNr ; }
private:
- Int_t fLastEventSerialNr;
- Int_t fLastEventNr;
- Int_t fCurrentFileIndex;
+
+ void Copy(TObject & as) const;
+
+ Int_t fLastEventSerialNr; // Serial number of last event
+ Int_t fLastEventNr; // Number of last event
+ Int_t fCurrentFileIndex; // Index of current file
Int_t fEvents; //! nr. of events in the current file
TString fMode; // = 0 for READONLY, = 1 for READWRITE
- TObjArray* fFileNames;
+ TObjArray* fFileNames; // List of file names
TString fEventFolderName; //Name of the folder where data for this stram will be mounted
cout<<"fTPCParam->GetTitle() = "<<fTPCParam->GetTitle()<<endl;
- AliRunLoader* rl = (AliRunLoader*)fLoader->GetEventFolder()->FindObject(AliRunLoader::fgkRunLoaderName);
+ AliRunLoader* rl = (AliRunLoader*)fLoader->GetEventFolder()->FindObject(AliRunLoader::GetRunLoaderName());
rl->CdGAFile();
//fTPCParam->Write(fTPCParam->GetTitle());
// Set response functions
//
- AliRunLoader* rl = (AliRunLoader*)fLoader->GetEventFolder()->FindObject(AliRunLoader::fgkRunLoaderName);
+ AliRunLoader* rl = (AliRunLoader*)fLoader->GetEventFolder()->FindObject(AliRunLoader::GetRunLoaderName());
rl->CdGAFile();
AliTPCParamSR *param=(AliTPCParamSR*)gDirectory->Get("75x40_100x60");
if(param){
//----------------------------------------------------
// Loop over all sectors for a single event
//----------------------------------------------------
- AliRunLoader* rl = (AliRunLoader*)fLoader->GetEventFolder()->FindObject(AliRunLoader::fgkRunLoaderName);
+ AliRunLoader* rl = (AliRunLoader*)fLoader->GetEventFolder()->FindObject(AliRunLoader::GetRunLoaderName());
rl->GetEvent(eventnumber);
if (fLoader->TreeH() == 0x0)
{