Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes

TGo4FileStore Class Reference

#include <TGo4FileStore.h>

Inheritance diagram for TGo4FileStore:
TGo4EventStore

List of all members.

Public Member Functions

 TGo4FileStore ()
 TGo4FileStore (const char *name, Int_t splitlevel=1, Int_t compression=1, Bool_t overwrite=kFALSE, Int_t autosavesize=10000000, Int_t bufsize=64000)
 TGo4FileStore (TGo4FileStoreParameter *par)
virtual ~TGo4FileStore ()
virtual Int_t Store (TGo4EventElement *event)
virtual Int_t Store (TGo4Parameter *cali)
virtual Int_t Store (TGo4Condition *conny)
virtual Int_t Store (TGo4Fitter *fitter)
virtual Int_t Store (TFolder *fold)
void SetCompression (Int_t comp)
void SetAutoSave (Int_t bytesinterval)
virtual TTree * GetTree ()

Static Public Member Functions

static void SetMaxTreeSize (Long64_t sz)
static Long64_t GetMaxTreeSize ()

Static Public Attributes

static const char * fgcEVBRANCHNAME = "Go4EventBranch."
static const char * fgcFILESUF = ".root"
static const char * fgcTREESUF = "xTree"
static Long64_t fgiFILESPLITSIZE = 1900000000

Private Member Functions

void WriteToStore (TNamed *ob)

Private Attributes

TFile * fxFile
TTree * fxTree
Bool_t fbBranchExists
TGo4EventElementfxEvent
Int_t fiSplit
Int_t fiBufsize
Int_t fiFillCount

Detailed Description

Event store which fills entries to an own root TTree in a TFile. In contrast to TreeStore, we do not use the main go4 tree, but an independent one which need not correspond with the entry indices of all previous events. Disadvantage: difficult to correlate to input events; advantage: one entry of this tree may be composed from several subsequent input event entries...

Author:
J. Adamczewski
Since:
1/2001

Definition at line 36 of file TGo4FileStore.h.


Constructor & Destructor Documentation

TGo4FileStore::TGo4FileStore (  ) 

Definition at line 34 of file TGo4FileStore.cxx.

References fgiFILESPLITSIZE, GO4TRACE, and SetMaxTreeSize().

TGo4FileStore::TGo4FileStore ( const char *  name,
Int_t  splitlevel = 1,
Int_t  compression = 1,
Bool_t  overwrite = kFALSE,
Int_t  autosavesize = 10000000,
Int_t  bufsize = 64000 
)
TGo4FileStore::~TGo4FileStore (  )  [virtual]

Definition at line 159 of file TGo4FileStore.cxx.

References fxFile, fxTree, and GO4TRACE.


Member Function Documentation

Long64_t TGo4FileStore::GetMaxTreeSize (  )  [static]

Definition at line 267 of file TGo4FileStore.cxx.

References fgiFILESPLITSIZE.

virtual TTree* TGo4FileStore::GetTree (  )  [inline, virtual]

Access to the Tree structure, for framework

Reimplemented from TGo4EventStore.

Definition at line 92 of file TGo4FileStore.h.

References fxTree.

void TGo4FileStore::SetAutoSave ( Int_t  bytesinterval  ) 

Set the tree autosave byte interval. May be changed on the fly.

Definition at line 172 of file TGo4FileStore.cxx.

References fxTree, and GO4TRACE.

void TGo4FileStore::SetCompression ( Int_t  comp  ) 

Set the file compression level. May be changed on the fly.

Definition at line 178 of file TGo4FileStore.cxx.

References fxFile, and GO4TRACE.

void TGo4FileStore::SetMaxTreeSize ( Long64_t  sz  )  [static]

Definition at line 262 of file TGo4FileStore.cxx.

References fgiFILESPLITSIZE.

Referenced by main(), and TGo4FileStore().

Int_t TGo4FileStore::Store ( TGo4EventElement event  )  [virtual]

Stores eventelement event into the storage implementation. May be a file, a root tree, a socket to a viewer...

Implements TGo4EventStore.

Definition at line 184 of file TGo4FileStore.cxx.

References TGo4Log::Debug(), fbBranchExists, fgcEVBRANCHNAME, fiBufsize, fiFillCount, fiSplit, fxEvent, fxTree, and GO4TRACE.

Int_t TGo4FileStore::Store ( TGo4Condition conny  )  [virtual]

Saves a condition correllated with the current event into the storage.

Reimplemented from TGo4EventStore.

Definition at line 228 of file TGo4FileStore.cxx.

References WriteToStore().

Int_t TGo4FileStore::Store ( TFolder *  fold  )  [virtual]

Saves a complete objects folder correllated with the current event into the storage.

Reimplemented from TGo4EventStore.

Definition at line 240 of file TGo4FileStore.cxx.

References WriteToStore().

Int_t TGo4FileStore::Store ( TGo4Fitter fitter  )  [virtual]

Saves a fitter correllated with the current event into the storage.

Reimplemented from TGo4EventStore.

Definition at line 234 of file TGo4FileStore.cxx.

References WriteToStore().

Int_t TGo4FileStore::Store ( TGo4Parameter cali  )  [virtual]

Saves a calibration object correllated with the current event into the storage.

Reimplemented from TGo4EventStore.

Definition at line 222 of file TGo4FileStore.cxx.

References WriteToStore().

void TGo4FileStore::WriteToStore ( TNamed *  ob  )  [private]

used by all Store methods to write with referencing event number in name

Definition at line 248 of file TGo4FileStore.cxx.

References fiFillCount, fxFile, and fxTree.

Referenced by Store().


Member Data Documentation

True if branch already exists. Used for automatic creation of new event branch within Store method.

Definition at line 105 of file TGo4FileStore.h.

Referenced by Store().

const char * TGo4FileStore::fgcEVBRANCHNAME = "Go4EventBranch." [static]

Standard go4 name of the branch used in all treestore and treesource implementations.

Definition at line 80 of file TGo4FileStore.h.

Referenced by Store().

const char * TGo4FileStore::fgcFILESUF = ".root" [static]

Standard suffix for file name

Definition at line 83 of file TGo4FileStore.h.

Referenced by TGo4FileSource::ProducesFilesList(), and TGo4FileStore().

const char * TGo4FileStore::fgcTREESUF = "xTree" [static]

Standard go4 suffix for tree name

Definition at line 86 of file TGo4FileStore.h.

Referenced by TGo4FileStore().

Long64_t TGo4FileStore::fgiFILESPLITSIZE = 1900000000 [static]

size in bytes for root tree-filesplit mechanism.

Definition at line 89 of file TGo4FileStore.h.

Referenced by GetMaxTreeSize(), SetMaxTreeSize(), and TGo4FileStore().

Int_t TGo4FileStore::fiBufsize [private]

buffer size for tree branch.

Definition at line 114 of file TGo4FileStore.h.

Referenced by Store(), and TGo4FileStore().

Int_t TGo4FileStore::fiFillCount [private]

counter of filled events.

Definition at line 117 of file TGo4FileStore.h.

Referenced by Store(), TGo4FileStore(), and WriteToStore().

Int_t TGo4FileStore::fiSplit [private]

TBranch splitlevel.

Definition at line 111 of file TGo4FileStore.h.

Referenced by Store(), and TGo4FileStore().

Points to event structure to be filled into branch.

Definition at line 108 of file TGo4FileStore.h.

Referenced by Store().

TFile* TGo4FileStore::fxFile [private]

Definition at line 99 of file TGo4FileStore.h.

Referenced by SetCompression(), TGo4FileStore(), WriteToStore(), and ~TGo4FileStore().

TTree* TGo4FileStore::fxTree [private]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines