00001 #ifndef G3NODE_H
00002 #define G3NODE_H
00003
00004
00005
00006
00007
00008 #include "TNode.h"
00009
00010 class G3Node : public TNode
00011 {
00012 public:
00013 G3Node(){}
00014 G3Node(const char* name, const char* title, const char* shapename,
00015 Double_t x = 0, Double_t y = 0, Double_t z = 0, const char* matrixname="",
00016 Option_t* option="");
00017
00018 G3Node(const char* name, const char* title, TShape* shape,
00019 Double_t x = 0, Double_t y = 0, Double_t z = 0, TRotMatrix* matrix = 0,
00020 Option_t* option="");
00021 G3Node(const G3Node &node, G3Node* parent);
00022
00023 virtual ~G3Node(){}
00024
00025 virtual void SetDivision(Int_t ndiv, Int_t axis, Float_t start, Float_t step);
00026 virtual void ExpandDivisions();
00027 virtual Int_t Axis() const {return fAxis;}
00028 virtual Int_t Ndiv() const {return fNDivision;}
00029 virtual Float_t Step() const {return fStep;}
00030 virtual Float_t StartC() const {return fStartC;}
00031 virtual void AddSons(TList* list);
00032 virtual void AddSon(G3Node* node);
00033
00034
00035
00036 private:
00037 Int_t fAxis;
00038 Int_t fNDivision;
00039 Float_t fStep;
00040 Float_t fStartC;
00041
00042 G3Node &operator=(const G3Node &) {return *this;}
00043
00044 ClassDef(G3Node,1)
00045 };
00046
00047 #endif
00048
00049
00050
00051
00052
00053
00054
00055