TTableDescriptor
class description - source file - inheritance tree
protected:
virtual TTableDescriptor* GetDescriptorPointer() const
virtual void Init(TClass* classPtr)
virtual void SetDescriptorPointer(TTableDescriptor* list) const
public:
TTableDescriptor TTableDescriptor(const TTable* parentTable)
TTableDescriptor TTableDescriptor(TClass* classPtr)
TTableDescriptor TTableDescriptor()
TTableDescriptor TTableDescriptor(const Text_t* name)
TTableDescriptor TTableDescriptor(Int_t n)
TTableDescriptor TTableDescriptor(const Text_t* name, Int_t n)
TTableDescriptor TTableDescriptor(TTableDescriptor&)
virtual void ~TTableDescriptor()
tableDescriptor_st* begin() const
static TClass* Class()
const Int_t ColumnByName(const Char_t* columnName = 0) const
const Char_t* ColumnName(Int_t columnIndex) const
UInt_t ColumnSize(Int_t columnIndex) const
Int_t ColumnSize(const Char_t* columnName = 0) const
TTable::EColumnType ColumnType(Int_t columnIndex) const
TTable::EColumnType ColumnType(const Char_t* columnName = 0) const
TString CreateLeafList() const
UInt_t Dimensions(Int_t columnIndex) const
Int_t Dimensions(const Char_t* columnName = 0) const
tableDescriptor_st* end() const
tableDescriptor_st* GetTable(Int_t i = 0) const
const UInt_t* IndexArray(Int_t columnIndex) const
virtual TClass* IsA() const
void LearnTable(const TTable* parentTable)
void LearnTable(TClass* classPtr)
UInt_t NumberOfColumns() const
UInt_t Offset(Int_t columnIndex) const
Int_t Offset(const Char_t* columnName = 0) const
tableDescriptor_st& operator[](Int_t i)
const tableDescriptor_st& operator[](Int_t i) const
TClass* RowClass() const
void SetColumnType(TTable::EColumnType type, Int_t column)
void SetDimensions(UInt_t dim, Int_t column)
void SetOffset(UInt_t offset, Int_t column)
void SetSize(UInt_t size, Int_t column)
void SetTypeSize(UInt_t size, Int_t column)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
UInt_t TypeSize(Int_t columnIndex) const
Int_t TypeSize(const Char_t* columnName = 0) const
virtual Int_t UpdateOffsets(const TTableDescriptor* newDesciptor)
protected:
TClass* fRowClass TClass defining the table row C-structure
static TTableDescriptor* fgColDescriptors
void Streamer(TBuffer &R__b)
The custom Streamer for this table
TTableDescriptor(const TTable *parentTable)
: TTable("tableDescriptor",sizeof(tableDescriptor_st)), fRowClass(0)
TTableDescriptor(TClass *classPtr)
: TTable("tableDescriptor",sizeof(tableDescriptor_st)),fRowClass(0)
Create a descriptor of the C-structure defined by TClass
TClass *classPtr must be a valid pointer to TClass object for
"plain" C_struture only !!!
void Init(TClass *classPtr)
Create a descriptor of the C-structure defined by TClass
TClass *classPtr must be a valid pointer to TClass object for
"plain" C_struture only !!!
~TTableDescriptor()
TString CreateLeafList() const
Create a list of leaf to be useful for TBranch::TBranch ctor
void LearnTable(const TTable *parentTable)
void LearnTable(TClass *classPtr)
LearnTable() creates an array of the descriptors for elements of the row
It creates a descriptor of the C-structure defined by TClass
TClass *classPtr must be a valid pointer to TClass object for
"plain" C_struture only !!!
This is to introduce an artificial restriction demanded by STAR database group
1. the name may be 31 symbols at most
2. the number the dimension is 3 at most
To lift this restriction one has to provide -DNORESTRICTIONS CPP symbol and
recompile code (and debug code NOW!)
Int_t UpdateOffsets(const TTableDescriptor *newDescriptor)
"Schema evolution"
Method updates the offsets with a new ones from another descritor
const Int_t ColumnByName(const Char_t *columnName) const
Find the column index but the column name
Int_t Offset(const Char_t *columnName) const
Return offset of the column defined by "columnName"
Take in account index if provided
Can not handle multidimensional indeces yet.
Int_t ColumnSize(const Char_t *columnName) const
Int_t TypeSize(const Char_t *columnName) const
Int_t Dimensions(const Char_t *columnName) const
Inline Functions
const Char_t* ColumnName(Int_t columnIndex) const
UInt_t NumberOfColumns() const
const UInt_t* IndexArray(Int_t columnIndex) const
Int_t Offset(const Char_t* columnName = 0) const
Int_t ColumnSize(const Char_t* columnName = 0) const
Int_t TypeSize(const Char_t* columnName = 0) const
Int_t Dimensions(const Char_t* columnName = 0) const
TTable::EColumnType ColumnType(Int_t columnIndex) const
TTable::EColumnType ColumnType(const Char_t* columnName = 0) const
TClass* RowClass() const
void SetOffset(UInt_t offset, Int_t column)
void SetSize(UInt_t size, Int_t column)
void SetTypeSize(UInt_t size, Int_t column)
void SetDimensions(UInt_t dim, Int_t column)
void SetColumnType(TTable::EColumnType type, Int_t column)
TTableDescriptor* GetDescriptorPointer() const
void SetDescriptorPointer(TTableDescriptor* list) const
TTableDescriptor TTableDescriptor()
TTableDescriptor TTableDescriptor(const Text_t* name)
TTableDescriptor TTableDescriptor(Int_t n)
TTableDescriptor TTableDescriptor(const Text_t* name, Int_t n)
tableDescriptor_st* GetTable(Int_t i = 0) const
tableDescriptor_st& operator[](Int_t i)
const tableDescriptor_st& operator[](Int_t i) const
tableDescriptor_st* begin() const
tableDescriptor_st* end() const
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
TTableDescriptor TTableDescriptor(TTableDescriptor&)
Author: Valery Fine 09/08/99 (E-mail: fine@bnl.gov)
Last update: root/star:$Name: $:$Id: TTableDescriptor.cxx,v 1.2 2000/06/05 08:01:03 brun Exp $
ROOT page - Class index - 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.