]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TGeant3/AliGeant3GeometryGUI.h
Possibility to select/unselect spectator protons and neutrons.
[u/mrichter/AliRoot.git] / TGeant3 / AliGeant3GeometryGUI.h
1 #ifndef ALIGEANT3GEOMETRYGUI_H
2 #define ALIGEANT3GEOMETRYGUI_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8
9 #include "TClonesArray.h"
10 #include "TGeant3.h"
11
12 class AliGuiGeomMain;
13 class AliDrawVolume;
14
15 class AliGeant3GeometryGUI : public TObject {
16  public:
17     AliGeant3GeometryGUI();
18     virtual ~AliGeant3GeometryGUI(){}
19     
20     // Reads the zebra geometry tree and put it into the ListTree
21     void  ReadGeometryTree();
22     // Read material and media information and put it into ComboBox 
23     void  ReadMaterials();
24     Float_t Cut(Int_t idmed, Int_t icut);
25  private:
26     AliGuiGeomMain *fPanel;      // the main gui panel
27     Int_t          fNstack;      // number of volumes
28     TClonesArray   *fVolumes;    // array of volumes  
29     Int_t          fNMaterials;  // number of materials and media
30     TClonesArray   *fMaterials;  // array of materials
31     TClonesArray   *fMedia;      // array of materials    
32 // Zebra bank related information       
33     Int_t*    fZlq;              // pointer to Zebra bank lq
34     Float_t*  fZq;               // pointer to Zebra bank q
35     Int_t*    fZiq;              // pointer to Zebra bank iq
36     Gclink_t* fGclink;           // pointer to Geant common block 
37     Gcnum_t*  fGcnum;            // pointer to Geant common block 
38
39  private:
40     virtual AliDrawVolume* Volume(Int_t id)
41         {return (AliDrawVolume *) (fVolumes->UncheckedAt(id));}
42     // Return number of children for volume idvol
43     Int_t NChildren(Int_t idvol);
44     // Return child number idc of volume idvol
45     Int_t Child(Int_t idvol, Int_t idc);
46     // Return medium number for given volume idvol
47     Int_t Medium(Int_t idvol);
48     // Return material number for given volume idvol
49     Int_t Material(Int_t idvol);
50     //
51
52   AliGeant3GeometryGUI(const AliGeant3GeometryGUI&) {}
53   AliGeant3GeometryGUI & operator=(const AliGeant3GeometryGUI&) 
54   {return *this;}
55     
56     ClassDef(AliGeant3GeometryGUI,1)  // GUI for Geant3 geometry visualisation
57 };
58
59
60
61 #endif