X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliStream.h;h=f67d1c88962e2cdebee15198ca68be755269b73f;hb=06cc905afcb3504512e5404ee9ee2408f4863006;hp=426e9d44fe7ce9ceee126ae338d1751b155dca5a;hpb=f7ae2b3226150b142adaacb696d72d4e9bc1ac7a;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliStream.h b/STEER/AliStream.h index 426e9d44fe7..f67d1c88962 100644 --- a/STEER/AliStream.h +++ b/STEER/AliStream.h @@ -8,44 +8,54 @@ //////////////////////////////////////////////////////////////////////// // // Class to handle files on IO -// +// Handles files and returns serial event number // Author: Jiri Chudoba (CERN), 2001 // //////////////////////////////////////////////////////////////////////// // --- ROOT system --- -#include "TNamed.h" -#include "TObjString.h" -#include "TString.h" -#include "TArrayI.h" -#include "TClonesArray.h" -#include "TFile.h" +#include // --- AliRoot header files --- +class TObjArray; +class TFile; + +class TString; class AliStream: public TNamed { public: AliStream(); - AliStream(Option_t *option); + 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); - Bool_t NextEventInStream(Int_t &eventNr); - Bool_t OpenNextFile(); - Bool_t ImportgAlice(); - TFile* CurrentFile() { return fCurrentFile;} - void ChangeMode(Option_t* option); // reset READ or UPDATE mode - Int_t GetNInputFiles() const {return fFileNames->GetLast()+1;} - TString GetFileName(const Int_t order) const; - + + void AddFile(const char *fileName); + Bool_t NextEventInStream(); + Bool_t OpenNextFile();//returns kFALSE in case of failure + Bool_t ImportgAlice(); + void ChangeMode(Option_t* option); // reset READ or UPDATE mode + + const TString& GetFolderName() const{return fEventFolderName;} + Int_t GetNInputFiles() const {return fFileNames->GetLast()+1;} + TString GetFileName(Int_t order) const; + void SetFolderName(const TString name) { fEventFolderName = name ; } + Int_t GetCurrentEventNumber() const { return fLastEventSerialNr ; } + private: - Int_t fLastEventSerialNr; - Int_t fLastEventNr; - Int_t fCurrentFileIndex; - Int_t fEvents; //! nr. of events in the current file - TString fMode; // = 0 for READONLY, = 1 for READWRITE - TFile *fCurrentFile; //! pointer to current open file - TObjArray * fFileNames; // storage for TStrings with file names + + 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; // List of file names + + TString fEventFolderName; //Name of the folder where data for this stram will be mounted ClassDef(AliStream,1) };