]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/AliLVTree.h
Cosmetics
[u/mrichter/AliRoot.git] / AliGeant4 / AliLVTree.h
CommitLineData
2f310734 1// $Id$
2// Category: geometry
3//
4// Author: I. Hrivnacova
5//
6// Class AliLVTree
7// ---------------------------
8// Class provides methods for browsing volumes trees,
9// and setting their visualization attributes.
10
11#ifndef ALI_LV_TREE_H
12#define ALI_LV_TREE_H
13
14#include "AliLVTreeMessenger.h"
15
16#include <globals.hh>
17
18class AliLVStructure;
19
20class G4LogicalVolume;
21#ifdef G4VIS_USE
22class G4Colour;
23#endif
24
25class AliLVTree
26{
27 public:
28 // --> protected
29 // AliLVTree();
30 // AliLVTree(const AliLVTree& right);
31 virtual ~AliLVTree();
32
33 // static methods
34 static AliLVTree* Instance();
35
36 // methods
37 void List(const G4String& lvName) const;
38 void List(G4LogicalVolume* lv) const;
39 void ListLong(const G4String& lvName) const;
40 void ListLong(G4LogicalVolume* lv) const;
41
42#ifdef G4VIS_USE
43 void SetLVTreeVisibility(G4LogicalVolume* lv, G4bool visibility) const;
44 void SetVolumeVisibility(G4LogicalVolume* lv, G4bool visibility) const;
45 void SetLVTreeColour(G4LogicalVolume* lv, const G4String& colName) const;
46 void SetVolumeColour(G4LogicalVolume* lv, const G4String& colName) const;
47#endif
48
49 protected:
50 AliLVTree();
51 AliLVTree(const AliLVTree& right);
52
53 // operators
54 AliLVTree& operator=(const AliLVTree &right);
55
56 private:
57 // methods
58 void RegisterLogicalVolume(G4LogicalVolume* lv, const G4String& path,
59 AliLVStructure& lvStructure) const;
60 void Warn(const G4String& where, const G4String& lvName) const;
61 void Warn(const G4String& where) const;
62
63 // static data members
64 static AliLVTree* fgInstance;
65
66 // data members
67 AliLVTreeMessenger fMessenger; //messenger
68};
69
70// inline methods
71
72#endif //ALI_LV_TREE_H
73