library: libGeom #include "TGeoPhysicalNode.h" |
TGeoPhysicalNode
class description - source file - inheritance tree (.pdf)
protected:
void SetAligned(Bool_t flag = kTRUE)
public:
TGeoPhysicalNode()
TGeoPhysicalNode(const char* path)
TGeoPhysicalNode(const TGeoPhysicalNode&)
virtual ~TGeoPhysicalNode()
void Align(TGeoMatrix* newmat = 0, TGeoShape* newshape = 0, Bool_t check = kFALSE)
void cd() const
static TClass* Class()
virtual void Draw(Option_t* option = "")
Int_t GetLevel() const
TGeoHMatrix* GetMatrix(Int_t level = -1) const
TGeoNode* GetMother(Int_t levup = 1) const
virtual const char* GetName() const
TGeoNode* GetNode(Int_t level = -1) const
TGeoHMatrix* GetOriginalMatrix() const
TGeoShape* GetShape(Int_t level = -1) const
TGeoVolume* GetVolume(Int_t level = -1) const
virtual TClass* IsA() const
Bool_t IsAligned() const
Bool_t IsVisible() const
Bool_t IsVisibleFull() const
Bool_t IsVolAttributes() const
TGeoPhysicalNode& operator=(const TGeoPhysicalNode&)
virtual void Paint(Option_t* option = "")
void SetBranchAsState()
void SetIsVolAtt(Bool_t flag = kTRUE)
Bool_t SetPath(const char* path)
void SetVisibility(Bool_t flag = kTRUE)
void SetVisibleFull(Bool_t flag = kTRUE)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
protected:
Int_t fLevel depth in the geometry tree
TObjArray* fMatrices global transformation matrices
TObjArray* fNodes branch of nodes
TGeoHMatrix* fMatrixOrig original local matrix of the last node in the path
public:
static const enum TGeoPhysicalNode:: kGeoPNodeFull
static const enum TGeoPhysicalNode:: kGeoPNodeVisible
static const enum TGeoPhysicalNode:: kGeoPNodeVolAtt
static const enum TGeoPhysicalNode:: kGeoPNodeAligned
TGeoPhysicalNode
_________
TGeoPhysicalNode()
Default constructor
TGeoPhysicalNode(const char *path)
Constructor
~TGeoPhysicalNode()
Destructor
void Align(TGeoMatrix *newmat, TGeoShape *newshape, Bool_t check)
Align a physical node with a new relative matrix/shape.
Example: /TOP_1/A_1/B_1/C_1
node->Align(transl_1, box) will perform:
- change RELATIVE translation of C_1 node (with respect to its
container volume B) to transl_1
- change the shape of the C volume
*NOTE* The operations will affect ONLY the LAST node in the branch. All
volumes/nodes in the branch represented by this physical node are
CLONED so the operation does not affect other possible replicas.
void cd() const
void Draw(Option_t * /*option*/)
TGeoNode* GetMother(Int_t levup) const
Return parent at LEVUP generation
TGeoHMatrix* GetMatrix(Int_t level) const
Return global matrix for node at LEVEL.
const char* GetName() const
Retreive the name of this physical node
TGeoNode* GetNode(Int_t level) const
Return node in branch at LEVEL. If not specified, return last leaf.
TGeoVolume* GetVolume(Int_t level) const
Return volume associated with node at LEVEL in the branch
TGeoShape* GetShape(Int_t level) const
Return shape associated with volume.
void Paint(Option_t * /*option*/)
Paint this node and its content according to visualization settings.
void SetBranchAsState()
Set node branch according to current state
Bool_t SetPath(const char *path)
Specify the path for this node.
Inline Functions
void SetAligned(Bool_t flag = kTRUE)
Int_t GetLevel() const
TGeoHMatrix* GetOriginalMatrix() const
Bool_t IsAligned() const
Bool_t IsVolAttributes() const
Bool_t IsVisible() const
Bool_t IsVisibleFull() const
void SetIsVolAtt(Bool_t flag = kTRUE)
void SetVisibility(Bool_t flag = kTRUE)
void SetVisibleFull(Bool_t flag = kTRUE)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
TGeoPhysicalNode TGeoPhysicalNode(const TGeoPhysicalNode&)
TGeoPhysicalNode& operator=(const TGeoPhysicalNode&)
Author: Andrei Gheata 17/02/04
Last update: root/geom:$Name: $:$Id: TGeoPhysicalNode.cxx,v 1.5 2005/09/06 12:34:57 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.