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 "TagEventTagK.hh"

TagEventTagK


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

class TagEventTagK : public KanCompoundObj<AbsEventTag>

Inheritance Chart:
TObject
KanPersistable
KanPersistentRefOwner
<-
KanObj
KanBranch
KanBranchOwner
<-
KanBranchObj
<-
KanCompoundObj<AbsEventTag>
<-
TagEventTagK

    protected:
virtual AbsEventTag* buildTransient(KanEventReader& eR) void fill(AbsEventTag* transient, KanEventReader& eR) const bool getBoolIndex(UInt_t& idx, const char* name) const bool getFloatIndex(UInt_t& idx, const char* name) const bool getIntIndex(UInt_t& idx, const char* name) const virtual void loadFrom(const AbsEventTag* transient, KanEventWriter& eW) AbsEventTag* makeDefaultTransient() const virtual void setDependentBranches() void setupIterator(KanEventTagIter<KanVector_Bit>& val) const void setupIterator(KanEventTagIter<KanVector_Int>& val) const void setupIterator(KanEventTagIter<KanVector_Float>& val) const public:
TagEventTagK() virtual ~TagEventTagK() const KanArray_String* boolDesc() const const TagDataVectK<KanVector_Bit>& bools() const Bool_t boolVal(const char*) const const KanArray_String* floatDesc() const const TagDataVectK<KanVector_Float>& floats() const Float_t floatVal(const char*) const bool getBool(bool&, const char*) const bool getFloat(float&, const char*) const bool getInt(int&, const char*) const const KanArray_String* intDesc() const const TagDataVectK<KanVector_Int>& ints() const Int_t intVal(const char*) const

Data Members

    private:
bool _descLoaded ! is the descriptor loaded KanCache<KanArray_String> _boolDesc ! tag bool names KanCache<KanArray_String> _intDesc ! tag int names KanCache<KanArray_String> _floatDesc ! tag float names TagDataVectK<KanVector_Bit> _bools tag Bool vector TagDataVectK<KanVector_Int> _ints tag Int vector TagDataVectK<KanVector_Float> _floats tag Float vector

Class Description

      This is the persistent version of an AbsEventTag.

      The user interface looks like:
      //  These functions retrive values by name
      //  They return true (or false) if the named tag exists (or doesn't exist)
         bool getBool( bool & val, const char* name ) const;
         bool getInt( int & val, const char* name) const;
         bool getFloat( float & val, const char* name) const;

      //  These functions return default values (kFALSE, 0, 0.)
      //  if the couldn't get the tag
         Bool_t boolVal( const char* ) const;
         Int_t intVal( const char* ) const;
         Float_t floatVal( const char* ) const;

      Persistent Location:
        Tag::"Tag"

      Persistent Size: 24 + (1/4)*nBits + (4 1/8)* nInts + (4 1/8)* nFloats bytes.

      Structure:
           TagDataVectK<KanVector_Bit> _bools;            // tag Bool vector
           TagDataVectK<KanVector_Int> _ints;             // tag Int vector
           TagDataVectK<KanVector_Float> _floats;         // tag Float vector

      Sub-Branches:
           KanCache<KanArray_String> _boolDesc;   // META::"_BOOLS"
           KanCache<KanArray_String> _intDesc;    // META::"_INTS"
           KanCache<KanArray_String> _floatDesc;  // META::"_FLOATS"


TagEventTagK() :KanCompoundObj<AbsEventTag>(), _descLoaded(false), _boolDesc(Dna::Collection), _intDesc(Dna::Collection), _floatDesc(Dna::Collection)
 default c'tor

~TagEventTagK( )
 d'tor

AbsEventTag* makeDefaultTransient() const
 just builds a new transient that refers to this

bool getBool( bool& val, const char* name ) const
 Get a tag bit by name
 return true is tag is valid
 puts value in val

bool getInt( int & val, const char* name ) const
 Get a tag int by name
 return true is tag is valid
 puts value in val

bool getFloat( float & val, const char* name ) const
 Get a tag float by name
 return true is tag is valid
 puts value in val

Bool_t boolVal( const char* name ) const
 return a tag bit by name
 returns kFALSE if bit is not found

Int_t intVal( const char* name ) const
 return a tag int by name
 returns 0 if int is not found

Float_t floatVal( const char* name ) const
 return a tag float by name
 returns 0. if float is not found

void loadFrom(const AbsEventTag* transient, KanEventWriter& eW)
 load this from a transient tag

void fill(AbsEventTag* transient, KanEventReader& eR) const
 fill a transient tag from this

bool getBoolIndex(UInt_t& idx, const char* name) const

bool getIntIndex(UInt_t& idx, const char* name) const

bool getFloatIndex(UInt_t& idx, const char* name) const

void setupIterator(KanEventTagIter<KanVector_Bit>& val) const

void setupIterator(KanEventTagIter<KanVector_Int>& val) const

void setupIterator(KanEventTagIter<KanVector_Float>& val) const

void setDependentBranches()
 These define the relative locations of the sub-branches.
 DON'T EVER change them.



Inline Functions


          const TagDataVectK<KanVector_Bit>& bools() const
          const TagDataVectK<KanVector_Int>& ints() const
        const TagDataVectK<KanVector_Float>& floats() const
                      const KanArray_String* boolDesc() const
                      const KanArray_String* intDesc() const
                      const KanArray_String* floatDesc() const
                                AbsEventTag* buildTransient(KanEventReader& eR)


Author: E. Charles
Last update: TagEventTagK.cc,v 1.21 2004/08/06 06:23:17 bartoldu Exp $
Copyright (C) 2002 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.