| #include "TagEventTagK.hh" |
TagEventTagK
class description - source file - inheritance tree (.pdf)
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
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
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.
|