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

TGo4MainTree Class Reference

Singleton containing and managing the main tree of the go4 analysis. More...

#include <TGo4MainTree.h>

List of all members.

Public Methods

virtual ~TGo4MainTree ()
Int_t GetCurrentIndex () const
Int_t IncCurrentIndex ()
 Increments current index in the main tree by one. More...

void SetCurrentIndex (Int_t number=0)
Int_t GetMaxIndex ()
void SetAutoSave (Int_t bytesinterval)
 Set the tree autosave byte interval. More...

void Update ()
 Update the tree entry information without processing any branch. More...

virtual Int_t Write (const char *dummy="", Int_t option=1, Int_t bufsize=1)
 Write tree content to file. More...


Static Public Methods

TGo4MainTree * Instance ()
Bool_t Exists ()
 True if instance of tree already exists. More...


Static Public Attributes

const Text_t fgcTREENAME [] = "Main"
 Standard go4 name of the main tree. More...

const Text_t fgcFILENAME [] = "Go4MainTree.root"
 Standard suffix for file name. More...

const Int_t fgiCOMPRESS = 5
 Default compression level. More...

const Int_t fgiAUTOSAVESIZE = 10000000
 Default tree autosave size. More...


Protected Methods

TTree * GetTree ()
 Access to the tree. More...

 TGo4MainTree ()

Private Attributes

TFile * fxFile
TTree * fxTree
Int_t fiMaxIndex
 Number of events stored in the Tree. More...

Int_t fiCurrentIndex
 Index number of the current event. More...


Static Private Attributes

TGo4MainTree * fxInstance = 0

Friends

class TGo4TreeSource
class TGo4TreeStore


Detailed Description

Singleton containing and managing the main tree of the go4 analysis.

All analysis steps may get and save their events as branches of this tree. The treesource and treestore instances are managing just one branch of this tree for each of their subevents. Branches of this tree might be saved into different root files.

Author:
J. Adamczewski
Since:
16-feb-2001

Definition at line 36 of file TGo4MainTree.h.


Constructor & Destructor Documentation

TGo4MainTree::TGo4MainTree   [protected]
 

Definition at line 28 of file TGo4MainTree.cxx.

References TGo4Log::Debug(), fgcFILENAME, fgcTREENAME, fgiAUTOSAVESIZE, fgiCOMPRESS, fiMaxIndex, fxFile, fxTree, and TRACE.

Referenced by Instance().

TGo4MainTree::~TGo4MainTree   [virtual]
 

Definition at line 51 of file TGo4MainTree.cxx.

References fxFile, TRACE, and Write().


Member Function Documentation

TTree* TGo4MainTree::GetTree   [inline, protected]
 

Access to the tree.

For friends only, i.e TreeSource and TreeStore.

Definition at line 43 of file TGo4MainTree.h.

References fxTree.

Referenced by TGo4TreeSource::Open(), and TGo4TreeStore::TGo4TreeStore().

TGo4MainTree * TGo4MainTree::Instance   [static]
 

Definition at line 60 of file TGo4MainTree.cxx.

References fxInstance, TGo4MainTree(), and TRACE.

Referenced by TGo4AnalysisStepManager::AutoSave(), TGo4TreeSource::Open(), TGo4AnalysisStepManager::ProcessAnalysisSteps(), SetAutoSave(), and TGo4TreeStore::TGo4TreeStore().

Bool_t TGo4MainTree::Exists   [inline, static]
 

True if instance of tree already exists.

Used by framework to check if MainTree was created by any treestore/source instance, before the instance is requested. Otherwise framework would create maintree without need.

Definition at line 68 of file TGo4MainTree.h.

References fxInstance.

Referenced by TGo4AnalysisStepManager::AutoSave(), and TGo4AnalysisStepManager::ProcessAnalysisSteps().

Int_t TGo4MainTree::GetCurrentIndex   const [inline]
 

Definition at line 70 of file TGo4MainTree.h.

References fiCurrentIndex.

Referenced by TGo4TreeSource::BuildEvent(), TGo4TreeStore::Store(), Update(), and TGo4TreeSource::~TGo4TreeSource().

Int_t TGo4MainTree::IncCurrentIndex   [inline]
 

Increments current index in the main tree by one.

Returns the value of the index after incrementation. To be used by event loop controlling framework.

Definition at line 75 of file TGo4MainTree.h.

References fiCurrentIndex.

Referenced by Update().

void TGo4MainTree::SetCurrentIndex Int_t    number = 0 [inline]
 

Definition at line 77 of file TGo4MainTree.h.

References fiCurrentIndex.

Int_t TGo4MainTree::GetMaxIndex  
 

Definition at line 102 of file TGo4MainTree.cxx.

References fiMaxIndex, and fxTree.

Referenced by Update(), and TGo4TreeSource::~TGo4TreeSource().

void TGo4MainTree::SetAutoSave Int_t    bytesinterval
 

Set the tree autosave byte interval.

May be changed on the fly.

Definition at line 71 of file TGo4MainTree.cxx.

References fxTree, Instance(), and TRACE.

void TGo4MainTree::Update  
 

Update the tree entry information without processing any branch.

i.e. increment the entry counter with all branches disabled. To be called by framework once within the event loop.

Definition at line 86 of file TGo4MainTree.cxx.

References fxTree, GetCurrentIndex(), GetMaxIndex(), IncCurrentIndex(), and TRACE.

Referenced by TGo4AnalysisStepManager::ProcessAnalysisSteps().

Int_t TGo4MainTree::Write const char *    dummy = "",
Int_t    option = 1,
Int_t    bufsize = 1
[virtual]
 

Write tree content to file.

Definition at line 78 of file TGo4MainTree.cxx.

References fxFile, fxTree, and TRACE.

Referenced by TGo4AnalysisStepManager::AutoSave(), and ~TGo4MainTree().


Friends And Related Function Documentation

friend class TGo4TreeSource [friend]
 

Definition at line 37 of file TGo4MainTree.h.

friend class TGo4TreeStore [friend]
 

Definition at line 38 of file TGo4MainTree.h.


Member Data Documentation

const Text_t TGo4MainTree::fgcTREENAME = "Main" [static]
 

Standard go4 name of the main tree.

Definition at line 22 of file TGo4MainTree.cxx.

Referenced by TGo4MainTree().

const Text_t TGo4MainTree::fgcFILENAME = "Go4MainTree.root" [static]
 

Standard suffix for file name.

Definition at line 23 of file TGo4MainTree.cxx.

Referenced by TGo4MainTree().

const Int_t TGo4MainTree::fgiCOMPRESS = 5 [static]
 

Default compression level.

Definition at line 25 of file TGo4MainTree.cxx.

Referenced by TGo4MainTree().

const Int_t TGo4MainTree::fgiAUTOSAVESIZE = 10000000 [static]
 

Default tree autosave size.

Definition at line 26 of file TGo4MainTree.cxx.

Referenced by TGo4MainTree().

TGo4MainTree * TGo4MainTree::fxInstance = 0 [static, private]
 

Definition at line 20 of file TGo4MainTree.cxx.

Referenced by Exists(), and Instance().

TFile* TGo4MainTree::fxFile [private]
 

Definition at line 96 of file TGo4MainTree.h.

Referenced by TGo4TreeStore::Store(), TGo4MainTree(), Write(), and ~TGo4MainTree().

TTree* TGo4MainTree::fxTree [private]
 

Definition at line 98 of file TGo4MainTree.h.

Referenced by GetMaxIndex(), GetTree(), SetAutoSave(), TGo4MainTree(), Update(), and Write().

Int_t TGo4MainTree::fiMaxIndex [private]
 

Number of events stored in the Tree.

Used to check if the complete tree is already read.

Definition at line 102 of file TGo4MainTree.h.

Referenced by GetMaxIndex(), and TGo4MainTree().

Int_t TGo4MainTree::fiCurrentIndex [private]
 

Index number of the current event.

Definition at line 105 of file TGo4MainTree.h.

Referenced by GetCurrentIndex(), IncCurrentIndex(), and SetCurrentIndex().


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