TVolumeView


class description - source file - inheritance tree

class TVolumeView : public TObjectSet, public TAtt3D


    protected:
TVolumeView TVolumeView(TVolumeView& viewNode) virtual void PaintShape(Option_t* option) public:
TVolumeView TVolumeView() TVolumeView TVolumeView(TVolumeView* viewNode, TVolumePosition* nodePosition = 0) TVolumeView TVolumeView(TVolumeView* viewNode, const Char_t* NodeName1, const Char_t* NodeName2 = "0") TVolumeView TVolumeView(TVolumeView* viewNode, TVolumeView* topNode) TVolumeView TVolumeView(TVolumeView* viewNode, const TVolumeView* node1, const TVolumeView* node2) TVolumeView TVolumeView(TVolume& pattern, Int_t maxDepLevel = 0, const TVolumePosition* nodePosition = 0, EDataSetPass iopt = kMarked, TVolumeView* root = 0) TVolumeView TVolumeView(Double_t* translate, Double_t* rotate, UInt_t positionId, TVolume* thisNode, const Char_t* thisNodePath, const Char_t* matrixName = "0", Int_t matrixType = 0) TVolumeView TVolumeView(TVolume* thisNode, TVolumePosition* nodePosition) virtual void ~TVolumeView() virtual void Add(TDataSet* dataset) virtual void Add(TVolumeView* node) virtual void Add(TShape* shape, Bool_t IsMaster = kFALSE) virtual TVolume* AddNode(TVolume* node) virtual void Browse(TBrowser* b) static TClass* Class() virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual void Draw(Option_t* depth = "3") virtual Int_t GetGlobalRange(const TVolumeView* rootNode, Float_t* min, Float_t* max) virtual TList* GetListOfShapes() const virtual void GetLocalRange(Float_t* min, Float_t* max) virtual TVolume* GetNode() const virtual Text_t* GetObjectInfo(Int_t px, Int_t py) const virtual TVolumePosition* GetPosition() const virtual TShape* GetShape() const virtual Int_t GetVisibility() const virtual Bool_t Is3D() const virtual TClass* IsA() const virtual Bool_t IsMarked() const virtual TVolumePosition* Local2Master(const TVolumeView* localNode, const TVolumeView* masterNode = 0) virtual TVolumePosition* Local2Master(const Char_t* localName, const Char_t* masterName = "0") virtual Float_t* Local2Master(const Float_t* local, Float_t* master, const Char_t* localName, const Char_t* masterName = "0", Int_t nVector = 1) virtual Float_t* Local2Master(const Float_t* local, Float_t* master, const TVolumeView* localNode, const TVolumeView* masterNode = 0, Int_t nVector = 1) virtual TList* Nodes() virtual void Paint(Option_t* option) virtual TString PathP() const virtual void SavePrimitive(ofstream& out, Option_t* option) virtual void SetLineAttributes() virtual void SetVisibility(Int_t vis = 1) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Sizeof3D() const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
TList* fListOfShapes Pointer to the list of the "extra" shape definitions

Class Description

                                                                      
 TVolumeView                                                          
                                                                      
 TVolumeView class is a special kind of TDataSet with one extra       
 pointer to wrap any TObject onto TDataSet object                     
                                                                      
  BE CAREFUL !!!                                                      
  One has to use it carefully no control over that extra object       
  is performed. This means: the object m_Obj data-member points to can
  be destroyed with no this kbject notifying.                         
  There is no tool /protection to check whether m_Obj is till alive.  
  It is one's  code responsilitiy                                     
                                                                      


TVolumeView(TVolumeView *viewNode,TVolumePosition *nodePosition) : TObjectSet(viewNode->GetName(),(TObject *)nodePosition),fListOfShapes(0) // ,fListOfAttributes(0)
 This ctor creates a TVolumeView structure from the "marked" nodes
 of the "viewNode" input structure
 It re-calculates all positions according of the new topology
 All new TVolume became UNMARKED though