23 #include "TObjectSet.h"
38 enum ENodeSEEN {kBothVisible = 00,
41 kNoneVisible = kThisUnvisible | kSonUnvisible};
46 ENodeSEEN fVisibility;
55 void SetPositionsList(TList *list=0){
AddObject((TObject *)list);}
60 TVolume(
const char *name,
const char *title,
const char *shapename, Option_t *option=
"");
61 TVolume(
const char *name,
const char *title, TShape *shape, Option_t *option=
"");
64 virtual TVolumePosition *Add(
TVolume *node, Double_t x=0, Double_t y=0, Double_t z=0, TRotMatrix *matrix=0, UInt_t
id=0, Option_t *option=
"");
65 virtual TVolumePosition *Add(
TVolume *node, Double_t x, Double_t y, Double_t z,
const char *matrixname, UInt_t
id=0, Option_t *option=
"");
68 virtual void Add(TShape *shape, Bool_t IsMaster=kFALSE);
69 virtual void Browse(TBrowser *b);
73 virtual void Draw(Option_t *depth=
"3");
74 virtual void DrawOnly(Option_t *option=
"");
75 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
78 const Option_t *GetOption()
const {
return fOption.Data();}
79 TShape *GetShape()
const {
return fShape;}
80 TList *GetListOfShapes()
const {
return fListOfShapes;}
82 virtual ENodeSEEN GetVisibility()
const {
return fVisibility;}
83 virtual TList *GetListOfPositions() {
return (TList *)(
GetObject());}
84 virtual ULong_t Hash()
const {
return TObject::Hash();}
85 virtual void ImportShapeAttributes();
86 virtual Bool_t IsMarked()
const;
87 virtual Bool_t Is3D()
const {
return kTRUE;}
88 virtual TList *Nodes()
const {
return GetList(); }
89 virtual void Paint(Option_t *option=
"");
91 virtual void SetVisibility(ENodeSEEN vis=TVolume::kBothVisible);
97 inline Bool_t TVolume::IsMarked()
const {
return TestBit(kMark); }
virtual void DeletePosition(TVolumePosition *position)
static Int_t MapGEANT2StNodeVis(Int_t vis)
virtual TObject * AddObject(TObject *obj, Bool_t makeOwner=kTRUE)
Aliase for SetObject method.
static Int_t MapStNode2GEANTVis(ENodeSEEN vis)
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
forward the ExecuteEvent call to the decorated object
virtual void Paint(Option_t *opt)
to be documented
virtual void Draw(Option_t *depth="3")
virtual void PaintShape(Option_t *option="")
virtual void SetVisibility(ENodeSEEN vis=TVolume::kBothVisible)
static TRotMatrix * GetIdentity()
Return a pointer the "identity" matrix.
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
to be documented
virtual void Sizeof3D() const
Return total X3D size of this shape with its attributes.
virtual void PaintNodePosition(Option_t *option="", TVolumePosition *postion=0)
virtual void Browse(TBrowser *b)
to be documented
virtual TNode * CreateTNode(const TVolumePosition *position=0)
Convert a TVolume object into a TNode.
virtual char * GetObjectInfo(Int_t px, Int_t py) const
to be documented
virtual Int_t DistancetoNodePrimitive(Int_t px, Int_t py, TVolumePosition *position=0)
virtual void GetLocalRange(Float_t *min, Float_t *max)
virtual TObject * GetObject() const
The depricated method (left here for the sake of the backward compatibility)