SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Comp. Search
Who's who?
Meetings
FAQ Homepage
Archive
Environment
Administration
New User Info.
Web Info/Tools
Monitoring
Training
Tools & Utils
Programming
C++ Standard
SRT, AFS, CVS
QA and QC
Remedy
Histogramming
Operations
PromptReco
Simulation Production
Online SW
Dataflow
Detector Control
Evt Processing
Run Control
Calibration
Databases
Offline
Workbook
Coding Standards
Simulation
Reconstruction
Prompt Reco.
BaBar Grid
Data Distribution
Beta & BetaTools
Kanga & Root
Analysis Tools
RooFit Toolkit
Data Management
Data Quality
Event display
Event Browser
Code releases
Databases
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)
#include "KanBranchOwner.hh"

KanBranchOwner


class description - source file - inheritance tree (.pdf)

class KanBranchOwner

Inheritance Chart:
KanBranchOwner
<-
KanBranchObj
<-
BtaCandIdBlockI
<-
BtaCandIdBlockK
BtaCandIdSetI
<-
BtaCandIdSetK
BtaCandIdSimpleBlockI
<-
BtaCandIdSimpleBlockK
CdbKanStateIdI
<-
CdbKanStateIdK
KanCompoundObj<AbsEventTag>
 [more...]
    private:
KanBranchOwner(const KanBranchOwner&) KanBranchOwner& operator=(const KanBranchOwner&) protected:
void addBranchObj(const char* subBranchName, KanBranchHolder& obj) void clearOwnedBranches() virtual Bool_t fillDataPointers(KanEventReader& eR) virtual Bool_t fillDataReadRefs(KanEventReader& eR) virtual Bool_t fillDataWriteRefs(KanEventWriter& eW) virtual Bool_t flushData(KanEventReader& eR) void getSubBranchPairs(KanBranchOwner::BranchNameList& pairList) const virtual Int_t readBranches(KanEventReader&) virtual void resetData(Dna::Scope scope = Dna::Event) virtual Int_t setReadBranches(KanTreeBase& tree, const char* name) virtual Int_t setWriteBranches(KanTreeBase& tree, const char* branchName, Bool_t replace = kFALSE, Int_t bufSize = 32*Kan::kiloByte(), Int_t split = 0) virtual Bool_t syncData(KanEventWriter& eW) public:
KanBranchOwner() virtual ~KanBranchOwner() static KanBranch* buildBranch(KanBranchHolder& holder) static KanPersistable* getPersistableAndScope(KanBranchOwner::BranchNameListIter& itr, Dna::Scope& scope) void getSubBranchNames(KanBranchOwner::stringList& nameList) const static void setBranch(KanBranchHolder& holder, KanBranch& branch)

Data Members

    private:
list<pair<string,KanBranchHolder*>,allocator<pair<string,KanBranchHolder*> > > _branchObjects ! The Owned BranchObjects UShort_t _tid ! The id of the tree these are on

Class Description

      Base Class For Classes that own KanBranches

      Sub-branches are declared like this:
         KanCache<XxxDataObjK> branchCache;
         addBranchObj("subBranchSuffix",branchCache);

      Then calling any function will pass the call along to each of the
      sub-branches


KanPersistable* getPersistableAndScope( BranchNameList::iterator& itr , Dna::Scope& scope )
 Extract information from an iterator over the BranchNameList

void setBranch(KanBranchHolder& holder, KanBranch& branch)
 Insert a KanBranch into a Holder

KanBranch* buildBranch(KanBranchHolder& holder)
 Call the KanBranchHolder::build() function to build the correct type of branch
 This is used on write to build a branch of the specified type.
 On read the KanBranch object it build by ROOT-io

KanBranchOwner() // Default c'tor

~KanBranchOwner()
 d'tor

void getSubBranchNames(std::list<std::string>& nameList) const

Int_t setWriteBranches(KanTreeBase& tree, const char* branchName, Bool_t replace, Int_t bufSize, Int_t split)
  Build all of the owned branches on a KanTreeBase
  Returns the number of branches made

Int_t setReadBranches(KanTreeBase& tree, const char* name)
 Attach all of the owned branches to a KanTreeBase
  Returns the number of branches attached

Int_t readBranches(KanEventReader& eR)
 Read all of the owned branches for the current event
  Returns the number of bytes read.

void addBranchObj(const char* subBranchName, KanBranchHolder& obj )
 Add a Branch to this set
  The name of the sub-branch will be
    "MasterBranchName_subBranchNane"  -> if Master exists
    "subBranchName"                   -> otherwise

Bool_t fillDataWriteRefs (KanEventWriter& eW)
 Call fillWriteRefs on all the owned branches
  Return the .AND. of all the calls

Bool_t fillDataReadRefs (KanEventReader& eR)
 Call fillReadRefs on all the owned branches
  Return the .AND. of all the calls

Bool_t fillDataPointers (KanEventReader& eR)
 Call fillPointers on all the owned branches
  Return the .AND. of all the calls

Bool_t syncData(KanEventWriter& eW)
 Call sync on all the owned branches
  Return the .AND. of all the calls

void resetData(Dna::Scope scope)
 Call reset on all the owned branches

Bool_t flushData(KanEventReader& eR)
 Call flush on all the owned branches
  Return the .AND. of all the calls



Inline Functions


                   void clearOwnedBranches()
                   void getSubBranchPairs(KanBranchOwner::BranchNameList& pairList) const
         KanBranchOwner KanBranchOwner(const KanBranchOwner&)
        KanBranchOwner& operator=(const KanBranchOwner&)


Author: E. Charles
Last update: KanBranchOwner.cc,v 1.19 2004/08/06 06:12:57 bartoldu Exp $
Copyright (C) 2003 LBNL


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.