Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

TGo4MbsFile Class Reference

Implements the gsi mbs stream server into the go4 classes. More...

#include <TGo4MbsFile.h>

Inheritance diagram for TGo4MbsFile:

TGo4MbsSource TGo4EventSource List of all members.

Public Methods

 TGo4MbsFile (const char *name)
 TGo4MbsFile ()
 TGo4MbsFile (TGo4MbsFileParameter *par)
 ~TGo4MbsFile ()
virtual Int_t Close ()
 Close the file or connection. More...

virtual Int_t Open ()
 Open the file or connection. More...

virtual Int_t NextEvent ()
 Requests the next event from mbs source. More...

const char * GetTagName () const
 Name of the Tagfile. More...

const char * GetCurrentTagName () const
const char * GetCurrentFileName () const

Public Attributes

Bool_t fbFirstEvent

Static Public Attributes

const Text_t fgcNOTAGFILE [] = "GO4-NOLMDTAG"
 string to indicate that no lmd tagfile is chosen. More...

const Text_t fgcWILDFILE [] = ".go4inputs"
 Filename of default multi input file from wildcard evaluation. More...

const Text_t fgcLMDSUF [] = ".lmd"
 standard suffix for listmode data files. More...

const Text_t fgcFILELISTSUF [] = ".lml"
 standard suffix for list of listmode files. More...


Private Methods

Int_t NextFile ()
 For multiple input mode: Open next file in list. More...

Int_t OpenFile ()
 Open current file/tagfile. More...

Int_t CloseFile ()
 Close current file/tagfile. More...

Int_t NewFileAction (Bool_t dosave=kTRUE)
 Called whenever new file is opened in multiple mode. More...


Private Attributes

TString fxTagFile
 Name of the tagfile associated with the listmode event file. More...

TString fxCurrentFile
 Currently processed file (for multiple input mode). More...

TString fxCurrentTag
 Currently processed tagfile (for multiple input mode). More...

TString fxMultiName
 Currently processed multiple input filename (for multiple input mode). More...

Bool_t fbMultipleMode
 kTRUE if multiple input mode is active. More...

Bool_t fbWildcardMode
 kTRUE if wildcard input mode is active. More...

std::ifstream * fxMultiFile
 file that contains the list of mbs filenames. More...

Bool_t fbFileOpen
 This indicates if the current file is open or not. More...


Detailed Description

Implements the gsi mbs stream server into the go4 classes.

This is an alias for the MbsSource Class with parameter GETEVT__FILE

Author:
J. Adamczewski
Since:
1/2001

Definition at line 32 of file TGo4MbsFile.h.


Constructor & Destructor Documentation

TGo4MbsFile::TGo4MbsFile const char *    name
 

Definition at line 36 of file TGo4MbsFile.cxx.

References TGo4Log::Debug(), fgcNOTAGFILE, fxTagFile, Open(), and TRACE.

TGo4MbsFile::TGo4MbsFile  
 

Definition at line 68 of file TGo4MbsFile.cxx.

References TRACE.

TGo4MbsFile::TGo4MbsFile TGo4MbsFileParameter   par
 

Definition at line 48 of file TGo4MbsFile.cxx.

References TGo4Log::Debug(), fxTagFile, Open(), TGo4MbsSource::SetEventInterval(), TGo4MbsSource::SetStartEvent(), TGo4MbsSource::SetStopEvent(), and TRACE.

TGo4MbsFile::~TGo4MbsFile  
 

Definition at line 76 of file TGo4MbsFile.cxx.

References Close(), and TRACE.


Member Function Documentation

Int_t TGo4MbsFile::Close   [virtual]
 

Close the file or connection.

Reimplemented from TGo4MbsSource.

Definition at line 168 of file TGo4MbsFile.cxx.

References CloseFile(), TGo4MbsSource::fbIsOpen, TGo4EventSource::fguTXTLEN, fxMultiFile, fxMultiName, TGo4EventSource::GetCreateStatus(), and TRACE.

Referenced by ~TGo4MbsFile().

Int_t TGo4MbsFile::Open   [virtual]
 

Open the file or connection.

Reimplemented from TGo4MbsSource.

Definition at line 198 of file TGo4MbsFile.cxx.

References TGo4MbsSource::fbIsOpen, fbMultipleMode, fbWildcardMode, fgcFILELISTSUF, fgcLMDSUF, fgcWILDFILE, TGo4EventSource::fguTXTLEN, TGo4MbsSource::fuEventInterval, TGo4MbsSource::fuStartEvent, TGo4MbsSource::fuStopEvent, fxMultiFile, fxMultiName, GetCurrentFileName(), GetCurrentTagName(), TGo4Analysis::Instance(), TGo4Analysis::Message(), NewFileAction(), NextFile(), TGo4EventSource::SetCreateStatus(), TGo4EventSource::SetErrMess(), and TRACE.

Referenced by TGo4MbsFile().

Int_t TGo4MbsFile::NextEvent   [virtual]
 

Requests the next event from mbs source.

Returns event status value.

Reimplemented from TGo4MbsSource.

Definition at line 82 of file TGo4MbsFile.cxx.

References f_evt_error(), f_evt_get_tagnext(), fbFirstEvent, TGo4EventSource::fguTXTLEN, TGo4MbsSource::fuEventCounter, TGo4MbsSource::fuEventInterval, TGo4MbsSource::fuStartEvent, TGo4MbsSource::fuStopEvent, TGo4MbsSource::fxEvent, TGo4MbsSource::fxInputChannel, GetCurrentFileName(), GetCurrentTagName(), TGo4EventSource::GetEventStatus(), NewFileAction(), NextFile(), TGo4EventSource::SetErrMess(), TGo4EventSource::SetEventStatus(), and TRACE.

const char* TGo4MbsFile::GetTagName   const [inline]
 

Name of the Tagfile.

Definition at line 53 of file TGo4MbsFile.h.

References fxTagFile.

Referenced by NextFile().

const char* TGo4MbsFile::GetCurrentTagName   const [inline]
 

Definition at line 55 of file TGo4MbsFile.h.

References fxCurrentTag.

Referenced by NextEvent(), Open(), and OpenFile().

const char* TGo4MbsFile::GetCurrentFileName   const [inline]
 

Definition at line 57 of file TGo4MbsFile.h.

References fxCurrentFile.

Referenced by NewFileAction(), NextEvent(), Open(), and OpenFile().

Int_t TGo4MbsFile::NextFile   [private]
 

For multiple input mode: Open next file in list.

Definition at line 351 of file TGo4MbsFile.cxx.

References CloseFile(), fbMultipleMode, fgcNOTAGFILE, TGo4EventSource::fguTXTLEN, TGo4MbsSource::fuEventCounter, TGo4MbsSource::fuEventInterval, TGo4MbsSource::fuStartEvent, TGo4MbsSource::fuStopEvent, fxCurrentFile, fxCurrentTag, fxMultiFile, fxMultiName, GetTagName(), TGo4Analysis::Instance(), TGo4Analysis::Message(), OpenFile(), TGo4EventSource::SetCreateStatus(), and TGo4EventSource::SetErrMess().

Referenced by NextEvent(), and Open().

Int_t TGo4MbsFile::OpenFile   [private]
 

Open current file/tagfile.

Definition at line 452 of file TGo4MbsFile.cxx.

References TGo4Log::Debug(), f_evt_error(), f_evt_get_tagopen(), fbFileOpen, fgcNOTAGFILE, TGo4EventSource::fguTXTLEN, fxCurrentTag, TGo4MbsSource::fxInfoHeader, TGo4MbsSource::fxInputChannel, TGo4EventSource::GetCreateStatus(), GetCurrentFileName(), GetCurrentTagName(), TGo4EventSource::SetCreateStatus(), and TGo4EventSource::SetErrMess().

Referenced by NextFile().

Int_t TGo4MbsFile::CloseFile   [private]
 

Close current file/tagfile.

Definition at line 488 of file TGo4MbsFile.cxx.

References f_evt_get_tagclose(), fbFileOpen, and TGo4MbsSource::fxInputChannel.

Referenced by Close(), and NextFile().

Int_t TGo4MbsFile::NewFileAction Bool_t    dosave = kTRUE [private]
 

Called whenever new file is opened in multiple mode.

For ctor, argument dosave should be false (no autosave possible inside InitEventClasses())

Definition at line 497 of file TGo4MbsFile.cxx.

References TGo4Analysis::AutoSave(), TGo4Analysis::ClearObjects(), GetCurrentFileName(), TGo4Analysis::Instance(), TGo4Analysis::IsAutoSaveFileChange(), TGo4Analysis::SetAutoSaveFile(), and TGo4Analysis::SetNewInputFile().

Referenced by NextEvent(), and Open().


Member Data Documentation

const Text_t TGo4MbsFile::fgcNOTAGFILE = "GO4-NOLMDTAG" [static]
 

string to indicate that no lmd tagfile is chosen.

Definition at line 31 of file TGo4MbsFile.cxx.

Referenced by NextFile(), OpenFile(), TGo4MbsFile(), and TGo4MbsFileParameter::TGo4MbsFileParameter().

const Text_t TGo4MbsFile::fgcWILDFILE = ".go4inputs" [static]
 

Filename of default multi input file from wildcard evaluation.

Definition at line 32 of file TGo4MbsFile.cxx.

Referenced by Open().

const Text_t TGo4MbsFile::fgcLMDSUF = ".lmd" [static]
 

standard suffix for listmode data files.

Definition at line 33 of file TGo4MbsFile.cxx.

Referenced by Open().

const Text_t TGo4MbsFile::fgcFILELISTSUF = ".lml" [static]
 

standard suffix for list of listmode files.

Definition at line 34 of file TGo4MbsFile.cxx.

Referenced by Open().

Bool_t TGo4MbsFile::fbFirstEvent
 

Definition at line 71 of file TGo4MbsFile.h.

Referenced by NextEvent().

TString TGo4MbsFile::fxTagFile [private]
 

Name of the tagfile associated with the listmode event file.

Definition at line 90 of file TGo4MbsFile.h.

Referenced by GetTagName(), and TGo4MbsFile().

TString TGo4MbsFile::fxCurrentFile [private]
 

Currently processed file (for multiple input mode).

Definition at line 93 of file TGo4MbsFile.h.

Referenced by GetCurrentFileName(), and NextFile().

TString TGo4MbsFile::fxCurrentTag [private]
 

Currently processed tagfile (for multiple input mode).

Definition at line 96 of file TGo4MbsFile.h.

Referenced by GetCurrentTagName(), NextFile(), and OpenFile().

TString TGo4MbsFile::fxMultiName [private]
 

Currently processed multiple input filename (for multiple input mode).

Definition at line 99 of file TGo4MbsFile.h.

Referenced by Close(), NextFile(), and Open().

Bool_t TGo4MbsFile::fbMultipleMode [private]
 

kTRUE if multiple input mode is active.

Definition at line 102 of file TGo4MbsFile.h.

Referenced by NextFile(), and Open().

Bool_t TGo4MbsFile::fbWildcardMode [private]
 

kTRUE if wildcard input mode is active.

Definition at line 105 of file TGo4MbsFile.h.

Referenced by Open().

std::ifstream* TGo4MbsFile::fxMultiFile [private]
 

file that contains the list of mbs filenames.

format should be: "filename.lmd tagfilename" for each line.

Definition at line 109 of file TGo4MbsFile.h.

Referenced by Close(), NextFile(), and Open().

Bool_t TGo4MbsFile::fbFileOpen [private]
 

This indicates if the current file is open or not.

Definition at line 112 of file TGo4MbsFile.h.

Referenced by CloseFile(), and OpenFile().


The documentation for this class was generated from the following files:
Generated on Tue Nov 8 10:56:47 2005 for Go4-v2.10-5 by doxygen1.2.15