library: libTreePlayer
#include "TFileDrawMap.h"

TFileDrawMap


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

class TFileDrawMap : public TNamed

Inheritance Chart:
TObject
<-
TNamed
<-
TFileDrawMap

    protected:
virtual void DrawMarker(Int_t marker, Long64_t eseek) virtual TObject* GetObject() virtual Bool_t GetObjectInfoDir(TDirectory* dir, Int_t px, Int_t py, char* info) const virtual void PaintBox(TBox& box, Long64_t bseek, Int_t nbytes) virtual void PaintDir(TDirectory* dir, const char* keys) public:
TFileDrawMap() TFileDrawMap(const TFile* file, const char* keys, Option_t* option) TFileDrawMap(const TFileDrawMap&) virtual ~TFileDrawMap() virtual void AnimateTree(const char* branches) static TClass* Class() virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual void DrawObject() virtual void DumpObject() virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) virtual char* GetObjectInfo(Int_t px, Int_t py) const virtual void InspectObject() virtual TClass* IsA() const TFileDrawMap& operator=(const TFileDrawMap&) virtual void Paint(Option_t* option) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
TFile* fFile pointer to the file TH1* fFrame histogram used to draw the map frame TString fKeys list of keys TString fOption drawing options Int_t fXsize size in bytes of X axis Int_t fYsize size in K/Mbytes of Y axis

Class Description

                                                                      
 TFileDrawMap                                                         
                                                                      
 This class is automatically called by TFile::DrawMap
 It draws a canvas showing the internal structure of a ROOT file.
 Each key or basket in a file is shown with a fill area drawn
 at the byte position of the key/basket in the file.
 The Y axis of the canvas shows the number of Kbytes/Mbytes.
 The X axis shows the bytes between y(i) and y(i+1).
 A color corresponding to the class in the key/basket is automatically
 selected using the class unique identifier.

 When moving the mouse in the canvas, the "Event Status" panels
 shows the object corresponding to the mouse position.
 if the object is a key, it shows the class and object name as well as
    the file directory name if the file has sub-directories.
 if the object is a basket, it shows:
   -the name of the Tree
   -the name of the branch
   -the basket number
   -the entry number in the basket

 Special keys like the StreamerInfo record, the Keys List Record
 and the Free Blocks Record are also shown.

 When clicking the right mouse button, a pop-up menu is shown
 with its title identifying the picked object and with the items:
   -DrawObject: in case of a key, the Draw function of the object is called
                in case of a basket, the branch is drawn for all entries
   -DumpObject: in case of a key, the Dump function of the object is called
                in case of a basket, tree->Show(entry) is called
   -InspectObject: the Inspect function is called for the object.

 The normal axis zoom functionality can be used to zoom or unzoom
 One can also use the TCanvas context menu SetCanvasSize to make
 a larger canvas and use the canvas scroll bars.

 When the class is built, it is possible to identify a subset of the
 objects to be shown. For example, to view only the keys with
 names starting with "abc", set the argument keys to "abc*".
 The default is to view all the objects.
 The argument options can also be used (only one option currently)
 When the option "same" is given, the new picture is suprimposed.
 The option "same" is useful, eg:
  to draw all keys with names = "abc" in a first pass
 then all keys with names = "uv*" in a second pass, etc.

/* */

  =============================================================================

TFileDrawMap() :TNamed()
 Default TreeFileMap constructor

TFileDrawMap(const TFile *file, const char *keys, Option_t *option) : TNamed("TFileDrawMap","")
 TFileDrawMap normal constructor
 see descriptions of arguments above

~TFileDrawMap()
*-*-*-*-*-*-*-*-*-*-*Tree destructor*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-*                  =================

void AnimateTree(const char *branches)
 Show sequence of baskets reads for the list of baskets involved
 in the list of branches (separated by ",")
 if branches="", the branch pointed by the mouse is taken.
 if branches="*", all branches are taken
 Example:
  AnimateTree("x,y,u");

Int_t DistancetoPrimitive(Int_t px, Int_t py)
 Compute distance from point px,py to this TreeFileMap
 Find the closest object to the mouse, save its path in the TFileDrawMap name.

void DrawMarker(Int_t marker, Long64_t eseek)
 Draw marker

void DrawObject()
 Draw object at the mouse position

void DumpObject()
 Dump object at the mouse position

void ExecuteEvent(Int_t event, Int_t px, Int_t py)
 Execute action corresponding to one event

TObject* GetObject()
 Retrieve object at the mouse position in memory

char* GetObjectInfo(Int_t px, Int_t py) const
   Redefines TObject::GetObjectInfo.
   Displays the keys info in the file corresponding to cursor position px,py
   in the canvas status bar info panel

Bool_t GetObjectInfoDir(TDirectory *dir, Int_t px, Int_t py, char *info) const
   Redefines TObject::GetObjectInfo.
   Displays the keys info in the directory
   corresponding to cursor position px,py


void InspectObject()
 Inspect object at the mouse position

void Paint(Option_t *)
  Paint this TFileDrawMap

void PaintBox(TBox &box, Long64_t bseek, Int_t nbytes)
 Paint the object at bseek with nbytes using the box object

void PaintDir(TDirectory *dir, const char *keys)
 Paint keys in a directory



Inline Functions


              TClass* Class()
              TClass* IsA() const
                 void ShowMembers(TMemberInspector& insp, char* parent)
                 void Streamer(TBuffer& b)
                 void StreamerNVirtual(TBuffer& b)
         TFileDrawMap TFileDrawMap(const TFileDrawMap&)
        TFileDrawMap& operator=(const TFileDrawMap&)


Author: Rene Brun 15/01/2003
Last update: root/treeplayer:$Name: $:$Id: TFileDrawMap.cxx,v 1.5 2003/12/30 13:16:51 brun Exp $
Copyright (C) 1995-2003, 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.