#include "hgeomshapes.h"

HGeomShapes


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

class HGeomShapes : public TObject

Inheritance Chart:
TObject
<-
HGeomShapes

    public:
HGeomShapes() HGeomShapes(const HGeomShapes&) ~HGeomShapes() static TClass* Class() virtual TClass* IsA() const HGeomShapes& operator=(const HGeomShapes&) void printPoints(HGeomVolume* volu) Int_t readPoints(fstream*, HGeomVolume*) HGeomBasicShape* selectShape(HGeomVolume*) HGeomBasicShape* selectShape(const TString&) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) Bool_t writePoints(fstream*, HGeomVolume*)

Data Members


    protected:
TList* shapes list of already created shape classes

Class Description


 HGeomShapes

 Class to manage the GEANT/ROOT geometry shapes

 The 3D geometry in ROOT uses the ROOT library geom.

 This class holds a list of shape classes (type HGeomBasicShape). They are
 used by all detectors when reading or writing geometry parameter containers
 to ascii files or to create an event display. This class is instantiated in
 the class HSpectrometer inside the function createDetGeomPar(Text_t* name).
 Every geometry parameter container gets a pointer to it.

 The individual shape classes are accessible with the selectShape(...)
 functions. The functions readPoints(...) and writePoints(...) use it
 internally.

 In the current version the following shapes are implemented:
     BOX  TRAP  TRD1  PGON  PCON TUBE TUBS CONE CONS SPHE  ELTU



HGeomShapes()
 constructor creates empty list of shapes

~HGeomShapes()
 destructor deletes all shapes

HGeomBasicShape* selectShape(HGeomVolume * volu)
 returns a pointer to the shape used in the given volume
 calls internally selectShape(TString&) with the name of the shape
 returns NULL if the corresponding shape class is not implemented

HGeomBasicShape* selectShape(const TString& name)
 returns a pointer to the shape given by name
 creates a shape object and adds it to the list of shapes if
 not existing
 returns NULL if the corresponding shape class is not implemented

Int_t readPoints(fstream* pFile,HGeomVolume* volu)
 reads the points of the given volume from the Ascii file
 returns the number of points read
 returns 0 if if the corresponding shape class is not implemented

Bool_t writePoints(fstream* pFile,HGeomVolume* volu)
 writes the points of the given volume to the Ascii file
 return kFALSE if the corresponding shape class is not implemented

void printPoints(HGeomVolume* volu)
 writes the points of the given volume to the Ascii file
 return kFALSE if the corresponding shape class is not implemented



Inline Functions


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


Last update: 22/06/2003 by Ilse Koenig


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.