TClassTable


class description - source file - inheritance tree

class TClassTable : public TObject

    private:
TClassTable TClassTable() ClassRec_t* FindElement(char* cname, Bool_t insert = kFALSE) void SortTable() public:
TClassTable TClassTable(TClassTable&) virtual void ~TClassTable() void Add(char* cname, Version_t id, VoidFuncPtr_t dict) TClass* Class() int Classes() VoidFuncPtr_t GetDict(char* cname) Version_t GetID(char* cname) void Init() virtual TClass* IsA() char* Next() virtual void Print(Option_t* option) void PrintTable() void Remove(char* cname) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void Terminate()

Data Members

private:
static ClassRec_t** fgTable static ClassRec_t** fgSortedTable static int fgSize static int fgTally static Bool_t fgSorted static int fgCursor

Class Description

                                                                      
 This class registers for all classes their name, id and dictionary   
 function in a hash table. Classes are automatically added by the     
 ctor of a special init class when a global of this init class is     
 initialized when the program starts (see the ClassImp macro).        
                                                                      


TClassTable()
 TClassTable is a singleton (i.e. only one can exist per application).

~TClassTable()
 TClassTable singleton is deleted in Terminate().

void Print(Option_t *)
 Print the class table.

int Classes()
______________________________________________________________________________

void Init()

void Add(const char *cname, Version_t id, VoidFuncPtr_t dict)
 Add a class to the class table (this is a static function).

void Remove(const char *cname)
 Remove a class from the class table. This happens when a shared library
 is unloaded (i.e. the dtor's of the global init objects are called).

ClassRec_t* FindElement(const char *cname, Bool_t insert)
 Find a class by name in the class table (using hash of name). Returns
 0 if the class is not in the table. Unless arguments insert is true in
 which case a new entry is created and returned.

Version_t GetID(const char *cname)
 Returns the ID of a class.

VoidFuncPtr_t GetDict(const char *cname)
 Given the class name returns the Dictionary() function of a class
 (uses hash of name).

char* Next()
 Returns next class from sorted class table.

void PrintTable()
 Print the class table. Before printing the table is sorted
 alphabetically.

void SortTable()
 Sort the class table by ascending class ID's.

void Terminate()
 Deletes the class table (this static class function calls the dtor).



Inline Functions


            TClass* Class()
            TClass* IsA()
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
        TClassTable TClassTable(TClassTable&)


Author: Fons Rademakers 11/08/95
Last update: 1.03/09 06/12/97 19.28.51 by Fons Rademakers
Copyright (c) 1995-1999, The ROOT System, All rights reserved. *


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.