library: libTable
#include "TIndexTable.h"

TIndexTable


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

class TIndexTable : public TTable

Inheritance Chart:
TObject
<-
TNamed
<-
TDataSet
<-
TTable
<-
TIndexTable

    protected:
static TTableDescriptor* CreateDescriptor() virtual TTableDescriptor* GetDescriptorPointer() const virtual void SetDescriptorPointer(TTableDescriptor* list) public:
TIndexTable(const TTable* table) TIndexTable(const TIndexTable& indx) TIndexTable() TIndexTable(const Text_t* name) TIndexTable(Int_t n) TIndexTable(const Text_t* name, Int_t n) virtual ~TIndexTable() TIndexTable::iterator begin() TIndexTable::iterator begin() const static TClass* Class() TIndexTable::iterator end() TIndexTable::iterator end() const int* GetTable(Int_t i = 0) const int* GetTable(Int_t i = 0) const virtual TClass* IsA() const Bool_t IsValid() const int& operator[](Int_t i) const int& operator[](Int_t i) const void push_back(Long_t next) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) const TTable* Table() const

Data Members


    protected:
const TTable* fRefTable static TTableDescriptor* fgColDescriptors

Class Description

 TIndexTable class is helper class to keep the list of the referencs to the
 TTable rows and iterate over it.
 TIndexTable is a persistent class.
 The pointer to the TIndexTable object may be used as an element
 of the TTable row and saved with the table all together.

 For example, the track table may contain a member to the "map" of the hits
  struct {
    float helix;
    TIndexTable *hits;
  } tracks_t;

   // Create track table:
   LArTrackTable *tracks = new LArTrackTable(...);

   // Get pointer to the hit table
   LArHitTable *hits = GiveMeHits();
   // Loop over all tracks
   LArTrackTable::iterator track = tracks->begin();
   LArTrackTable::iterator last = tracks->end();
   for (;track != last;track++) {
     // Find all hits of this track
      LArHitTable::iterator hit     = hits->begin();
      LArHitTable::iterator lastHit = hits->end();
      Long_t hitIndx = 0;
      // Create an empty list of this track hits
      (*track).hits = new TIndexTable(hits);
      for(;hit != lastHit;hit++,hitIndx) {
        if (IsMyHit(*hit)) {  // add this hit index to the current track
           (*track).hits->push_back(hitIndx);
        }
      }
   }
___________________________________________________________________
void Dictionary()
to be documented
TIndexTable(const TTable *table)
to be documented
TTableDescriptor * CreateDescriptor()
to be documented
const TTable * Table()
to be documented
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
___________________________________________________________________________________________________________
TIndexTable(const TTable *table)
TIndexTable(const TIndexTable &indx)
Bool_t IsValid()
void push_back(Long_t next)
iterator begin()
iterator begin()
iterator end()
iterator end()
void SetDescriptorPointer(TTableDescriptor *list)
TIndexTable()
TIndexTable(const Text_t *name)
TIndexTable(Int_t n)
virtual ~TIndexTable()

Author: Valery Fine(fine@bnl.gov) 01/03/2001
Last update: root/table:$Name: $:$Id: TIndexTable.cxx,v 1.5 2006/05/21 18:05:26 brun Exp $
Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *


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.