ROOT   Reference Guide
Searching...
No Matches
TGeoNode Class Referenceabstract

A node represent a volume positioned inside another.They store links to both volumes and to the TGeoMatrix representing the relative positioning.

Node are never instantiated directly by users, but created as a result of volume operations. Adding a volume named A with a given user ID inside a volume B will create a node node named A_ID. This will be added to the list of nodes stored by B. Also, when applying a division operation in N slices to a volume A, a list of nodes B_1, B_2, ..., B_N is also created. A node B_i does not represent a unique object in the geometry because its container A might be at its turn positioned as node inside several other volumes. Only when a complete branch of nodes is fully defined up to the top node in the geometry, a given path like:

/TOP_1/.../A_3/B_7 will represent an unique object.

Its global transformation matrix can be computed as the pile-up of all local transformations in its branch. We will therefore call "logical graph" the hierarchy defined by nodes and volumes. The expansion of the logical graph by all possible paths defines a tree structure where all nodes are unique "touchable" objects. We will call this the "physical tree". Unlike the logical graph, the physical tree can become a huge structure with several milions of nodes in case of complex geometries, therefore it is not always a good idea to keep it transient in memory. Since a the logical and physical structures are correlated, the modeller rather keeps track only of the current branch, updating the current global matrix at each change of the level in geometry. The current physical node is not an object that can be asked for at a given moment, but rather represented by the combination: current node + current global matrix. However, physical nodes have unique ID's that can be retrieved for a given modeler state. These can be fed back to the modeler in order to force a physical node to become current. The advantage of this comes from the fact that all navigation queries check first the current node, therefore knowing the location of a point in the geometry can be saved as a starting state for later use.

Nodes can be declared as "overlapping" in case they do overlap with other nodes inside the same container or extrude this container. Non-overlapping nodes can be created with:

TGeoVolume::AddNode(TGeoVolume *daughter, Int_t copy_No, TGeoMatrix *matr);
Geometrical transformation package.
Definition TGeoMatrix.h:41
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
Definition TGeoVolume.h:49
virtual TGeoNode * AddNode(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=0, Option_t *option="")
Add a TGeoNode to the list of nodes.

The creation of overlapping nodes can be done with a similar prototype:

virtual void AddNodeOverlap(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=0, Option_t *option="")
Add a TGeoNode to the list of nodes.

When closing the geometry, overlapping nodes perform a check of possible overlaps with their neighbours. These are stored and checked all the time during navigation, therefore navigation is slower when embedding such nodes into geometry.

Node have visualization attributes as volume have. When undefined by users, painting a node on a pad will take the corresponding volume attributes.

Definition at line 39 of file TGeoNode.h.

## Public Types

enum  {
kGeoNodeMatrix = BIT(14) , kGeoNodeOffset = BIT(15) , kGeoNodeVC = BIT(16) , kGeoNodeOverlap = BIT(17) ,
kGeoNodeCloned = BIT(18)
}

Public Types inherited from TObject
enum  {
kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
}

enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }

enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }

enum  EStatusBits {
kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}

Public Types inherited from TGeoAtt
enum  { kBitMask = 0x00ffffff }

enum  EGeoActivityAtt { kActOverride = BIT(8) , kActNone = BIT(9) , kActThis = BIT(10) , kActDaughters = BIT(11) }

enum  EGeoOptimizationAtt { kUseBoundingBox = BIT(16) , kUseVoxels = BIT(17) , kUseGsord = BIT(18) }

enum  EGeoSavePrimitiveAtt { kSavePrimitiveAtt = BIT(19) , kSaveNodesAtt = BIT(20) }

enum  EGeoVisibilityAtt {
kVisOverride = BIT(0) , kVisNone = BIT(1) , kVisThis = BIT(2) , kVisDaughters = BIT(3) ,
kVisOneLevel = BIT(4) , kVisStreamed = BIT(5) , kVisTouched = BIT(6) , kVisOnScreen = BIT(7) ,
kVisContainers = BIT(12) , kVisOnly = BIT(13) , kVisBranch = BIT(14) , kVisRaytrace = BIT(15)
}

## Public Member Functions

TGeoNode ()
Default constructor.

TGeoNode (const TGeoVolume *vol)
Constructor.

virtual ~TGeoNode ()
Destructor.

void Browse (TBrowser *b)
How-to-browse for a node.

virtual void cd () const

void CheckOverlaps (Double_t ovlp=0.1, Option_t *option="")
Check overlaps bigger than OVLP hierarchically, starting with this node.

void CheckShapes ()
check for wrong parameters in shapes

Int_t CountDaughters (Bool_t unique_volumes=kFALSE)
Returns the number of daughters.

virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
compute the closest distance of approach from point px,py to this node

void Draw (Option_t *option="")
draw current node according to option

void DrawOnly (Option_t *option="")
draw only this node independently of its vis options

void DrawOverlaps ()
Method drawing the overlap candidates with this node.

virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
Execute mouse actions on this volume.

void FillIdArray (Int_t &ifree, Int_t &nodeid, Int_t *array) const
Fill array with node id. Recursive on node branch.

Int_t FindNode (const TGeoNode *node, Int_t level)
Search for a node within the branch of this one.

virtual Int_t GetByteCount () const

Int_t GetColour () const

TGeoNodeGetDaughter (Int_t ind) const

virtual TGeoPatternFinderGetFinder () const

TGeoExtensionGetFWExtension () const

virtual Int_t GetIndex () const

virtual TGeoMatrixGetMatrix () const =0

TGeoMediumGetMedium () const

TGeoVolumeGetMotherVolume () const

Int_t GetNdaughters () const

TObjArrayGetNodes () const

Int_t GetNumber () const

virtual char * GetObjectInfo (Int_t px, Int_t py) const
Get node info for the browser.

virtual Int_t GetOptimalVoxels () const

Int_tGetOverlaps (Int_t &novlp) const

TGeoExtensionGetUserExtension () const

TGeoVolumeGetVolume () const

TGeoExtensionGrabFWExtension () const
Get a copy of the framework extension pointer.

TGeoExtensionGrabUserExtension () const
Get a copy of the user extension pointer.

void InspectNode () const
Inspect this node.

Bool_t IsCloned () const

virtual Bool_t IsFolder () const
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).

Bool_t IsOffset () const

Bool_t IsOnScreen () const
check if this node is drawn. Assumes that this node is current

Bool_t IsOverlapping () const

Bool_t IsVirtual () const

Bool_t IsVisDaughters () const

Bool_t IsVisible () const

virtual void LocalToMaster (const Double_t *local, Double_t *master) const
Convert the point coordinates from local reference system to mother reference.

virtual void LocalToMasterVect (const Double_t *local, Double_t *master) const
Convert a vector from local reference system to mother reference.

virtual void ls (Option_t *option="") const
Print the path (A/B/C/...) to this node on stdout.

virtual TGeoNodeMakeCopyNode () const

virtual void MasterToLocal (const Double_t *master, Double_t *local) const
Convert the point coordinates from mother reference to local reference system.

virtual void MasterToLocalVect (const Double_t *master, Double_t *local) const
Convert a vector from mother reference to local reference system.

Bool_t MayOverlap (Int_t iother) const
Check the overlab between the bounding box of the node overlaps with the one the brother with index IOTHER.

virtual void Paint (Option_t *option="")
Paint this node and its content according to visualization settings.

void PrintCandidates () const
print daughters candidates for containing current point

void PrintOverlaps () const
print possible overlapping nodes

Double_t Safety (const Double_t *point, Bool_t in=kTRUE) const
computes the closest distance from given point to this shape

void SaveAttributes (std::ostream &out)
save attributes for this node

void SetAllInvisible ()

void SetCloned (Bool_t flag=kTRUE)

void SetCurrentPoint (Double_t x, Double_t y, Double_t z)

void SetFWExtension (TGeoExtension *ext)
Connect framework defined extension to the node.

void SetInvisible ()

void SetMotherVolume (TGeoVolume *mother)

void SetNumber (Int_t number)

void SetOverlapping (Bool_t flag=kTRUE)

void SetOverlaps (Int_t *ovlp, Int_t novlp)
set the list of overlaps for this node (ovlp must be created with operator new)

void SetUserExtension (TGeoExtension *ext)
Connect user-defined extension to the node.

void SetVirtual ()

void SetVisibility (Bool_t vis=kTRUE)
Set visibility of the node (obsolete).

void SetVolume (TGeoVolume *volume)

void VisibleDaughters (Bool_t vis=kTRUE)
Set visibility of the daughters (obsolete).

Public Member Functions inherited from TNamed
TNamed ()

TNamed (const char *name, const char *title)

TNamed (const TNamed &named)
TNamed copy ctor.

TNamed (const TString &name, const TString &title)

virtual ~TNamed ()
TNamed destructor.

virtual void Clear (Option_t *option="")
Set name and title to empty strings ("").

virtual TObjectClone (const char *newname="") const
Make a clone of an object using the Streamer facility.

virtual Int_t Compare (const TObject *obj) const
Compare two TNamed objects.

virtual void Copy (TObject &named) const
Copy this to obj.

virtual void FillBuffer (char *&buffer)
Encode TNamed into output buffer.

virtual const char * GetName () const
Returns name of object.

virtual const char * GetTitle () const
Returns title of object.

virtual ULong_t Hash () const
Return hash value for this object.

virtual Bool_t IsSortable () const

TNamedoperator= (const TNamed &rhs)
TNamed assignment operator.

virtual void Print (Option_t *option="") const
Print TNamed name and title.

virtual void SetName (const char *name)
Set the name of the TNamed.

virtual void SetNameTitle (const char *name, const char *title)
Set all the TNamed parameters (name and title).

virtual void SetTitle (const char *title="")
Set the title of the TNamed.

virtual Int_t Sizeof () const
Return size of the TNamed part of the TObject.

Public Member Functions inherited from TObject
TObject ()
TObject constructor.

TObject (const TObject &object)
TObject copy ctor.

virtual ~TObject ()
TObject destructor.

void AbstractMethod (const char *method) const
Use this method to implement an "abstract" method that you don't want to leave purely abstract.

Append graphics object to current pad.

ULong_t CheckedHash ()
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.

virtual const char * ClassName () const
Returns name of class to which the object belongs.

virtual void Delete (Option_t *option="")
Delete this object.

virtual void DrawClass () const
Draw class inheritance tree of the class to which this object belongs.

virtual TObjectDrawClone (Option_t *option="") const
Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad).

virtual void Dump () const
Dump contents of object on stdout.

virtual void Error (const char *method, const char *msgfmt,...) const
Issue error message.

virtual void Execute (const char *method, const char *params, Int_t *error=0)
Execute method on this object with the given parameter string, e.g.

virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
Execute method on this object with parameters stored in the TObjArray.

virtual void Fatal (const char *method, const char *msgfmt,...) const
Issue fatal error message.

virtual TObjectFindObject (const char *name) const
Must be redefined in derived classes.

virtual TObjectFindObject (const TObject *obj) const
Must be redefined in derived classes.

virtual Option_tGetDrawOption () const
Get option used by the graphics system to draw this object.

virtual const char * GetIconName () const
Returns mime type name of object.

virtual Option_tGetOption () const

virtual UInt_t GetUniqueID () const
Return the unique object id.

virtual Bool_t HandleTimer (TTimer *timer)
Execute action in response of a timer timing out.

Bool_t HasInconsistentHash () const
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.

virtual void Info (const char *method, const char *msgfmt,...) const
Issue info message.

virtual Bool_t InheritsFrom (const char *classname) const
Returns kTRUE if object inherits from class "classname".

virtual Bool_t InheritsFrom (const TClass *cl) const
Returns kTRUE if object inherits from TClass cl.

virtual void Inspect () const
Dump contents of this object in a graphics canvas.

void InvertBit (UInt_t f)

virtual Bool_t IsEqual (const TObject *obj) const
Default equal comparison (objects are equal if they have the same address in memory).

R__ALWAYS_INLINE Bool_t IsOnHeap () const

R__ALWAYS_INLINE Bool_t IsZombie () const

void MayNotUse (const char *method) const
Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).

virtual Bool_t Notify ()
This method must be overridden to handle object notification.

void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
Use this method to declare a method obsolete.

void operator delete (void *ptr)
Operator delete.

void operator delete[] (void *ptr)
Operator delete [].

voidoperator new (size_t sz)

voidoperator new (size_t sz, void *vp)

voidoperator new[] (size_t sz)

voidoperator new[] (size_t sz, void *vp)

TObjectoperator= (const TObject &rhs)
TObject assignment operator.

virtual void Pop ()
Pop on object drawn in a pad to the top of the display list.

virtual Int_t Read (const char *name)
Read contents of object with specified name from the current directory.

virtual void RecursiveRemove (TObject *obj)
Recursively remove this object from a list.

void ResetBit (UInt_t f)

virtual void SaveAs (const char *filename="", Option_t *option="") const
Save this object in the file specified by filename.

virtual void SavePrimitive (std::ostream &out, Option_t *option="")
Save a primitive as a C++ statement(s) on output stream "out".

void SetBit (UInt_t f)

void SetBit (UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.

virtual void SetDrawOption (Option_t *option="")
Set drawing option for object.

virtual void SetUniqueID (UInt_t uid)
Set the unique object id.

virtual void SysError (const char *method, const char *msgfmt,...) const
Issue system error message.

R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const

Int_t TestBits (UInt_t f) const

virtual void UseCurrentStyle ()
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.

virtual void Warning (const char *method, const char *msgfmt,...) const
Issue warning message.

virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
Write this object to the current directory.

virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
Write this object to the current directory.

Public Member Functions inherited from TGeoAtt
TGeoAtt ()
Default constructor.

TGeoAtt (Option_t *vis_opt, Option_t *activity_opt="", Option_t *optimization_opt="")
Constructor.

virtual ~TGeoAtt ()
Destructor.

Bool_t IsActive () const

Bool_t IsActiveDaughters () const

Bool_t IsVisBranch () const

Bool_t IsVisContainers () const

Bool_t IsVisDaughters () const

Bool_t IsVisible () const

Bool_t IsVisLeaves () const

Bool_t IsVisOnly () const

Bool_t IsVisRaytrace () const

Bool_t IsVisStreamed () const

Bool_t IsVisTouched () const

void ResetAttBit (UInt_t f)

void SetActiveDaughters (Bool_t flag=kTRUE)

void SetActivity (Bool_t flag=kTRUE)

void SetAttBit (UInt_t f)

void SetAttBit (UInt_t f, Bool_t set)

void SetOptimization (Option_t *option)
Set optimization flags.

void SetVisBranch ()
Set branch type visibility.

virtual void SetVisContainers (Bool_t flag=kTRUE)
Set branch type visibility.

void SetVisDaughters (Bool_t vis=kTRUE)
Set visibility for the daughters.

virtual void SetVisLeaves (Bool_t flag=kTRUE)
Set branch type visibility.

virtual void SetVisOnly (Bool_t flag=kTRUE)
Set branch type visibility.

void SetVisRaytrace (Bool_t flag=kTRUE)

void SetVisStreamed (Bool_t vis=kTRUE)
Mark attributes as "streamed to file".

void SetVisTouched (Bool_t vis=kTRUE)
Mark visualization attributes as "modified".

Bool_t TestAttBit (UInt_t f) const

## Protected Member Functions

void CopyOverlaps (Int_t *ovlp, Int_t novlp)
Transient framework-defined extension to volumes.

Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
Interface to ErrorHandler (protected).

void MakeZombie ()

## Protected Attributes

TGeoExtensionfFWExtension = nullptr
Transient user-defined extension to volumes.

TGeoVolumefMother = nullptr

Int_t fNovlp = 0

Int_t fNumber = 0

Int_tfOverlaps = nullptr

TGeoExtensionfUserExtension = nullptr

TGeoVolumefVolume = nullptr

Protected Attributes inherited from TNamed
TString fName

TString fTitle

Protected Attributes inherited from TGeoAtt
UInt_t fGeoAtt

## Private Member Functions

TGeoNode (const TGeoNode &)=delete

TGeoNodeoperator= (const TGeoNode &)=delete

Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
Return destructor only flag.

static Bool_t GetObjectStat ()
Get status of object stat flag.

static void SetDtorOnly (void *obj)
Set destructor only flag.

static void SetObjectStat (Bool_t stat)
Turn on/off tracking of objects in the TObjectTable.

Protected Types inherited from TObject
enum  { kOnlyPrepStep = BIT(3) }

#include <TGeoNode.h>

Inheritance diagram for TGeoNode:
[legend]

## ◆ anonymous enum

 anonymous enum
Enumerator
kGeoNodeMatrix
kGeoNodeOffset
kGeoNodeVC
kGeoNodeOverlap
kGeoNodeCloned

Definition at line 58 of file TGeoNode.h.

## ◆ TGeoNode() [1/3]

 TGeoNode::TGeoNode ( const TGeoNode & )
privatedelete

## ◆ TGeoNode() [2/3]

 TGeoNode::TGeoNode ( )

Default constructor.

Definition at line 95 of file TGeoNode.cxx.

## ◆ TGeoNode() [3/3]

 TGeoNode::TGeoNode ( const TGeoVolume * vol )

Constructor.

Definition at line 109 of file TGeoNode.cxx.

## ◆ ~TGeoNode()

 TGeoNode::~TGeoNode ( )
virtual

Destructor.

Definition at line 129 of file TGeoNode.cxx.

## ◆ Browse()

 void TGeoNode::Browse ( TBrowser * b )
virtual

How-to-browse for a node.

Reimplemented from TObject.

Definition at line 139 of file TGeoNode.cxx.

## ◆ cd()

 virtual void TGeoNode::cd ( ) const
inlinevirtual

Reimplemented in TGeoNodeOffset.

Definition at line 73 of file TGeoNode.h.

## ◆ CheckOverlaps()

 void TGeoNode::CheckOverlaps ( Double_t ovlp = 0.1, Option_t * option = "" )

Check overlaps bigger than OVLP hierarchically, starting with this node.

Definition at line 179 of file TGeoNode.cxx.

## ◆ CheckShapes()

 void TGeoNode::CheckShapes ( )

check for wrong parameters in shapes

Definition at line 303 of file TGeoNode.cxx.

## ◆ CopyOverlaps()

 void TGeoNode::CopyOverlaps ( Int_t * ovlp, Int_t novlp )
protected

Transient framework-defined extension to volumes.

Copy content of lst of overlaps from source array.

Definition at line 640 of file TGeoNode.cxx.

## ◆ CountDaughters()

 Int_t TGeoNode::CountDaughters ( Bool_t unique_volumes = kFALSE )

Returns the number of daughters.

Nodes pointing to same volume counted once if unique_volumes is set.

Definition at line 155 of file TGeoNode.cxx.

## ◆ DistancetoPrimitive()

 Int_t TGeoNode::DistancetoPrimitive ( Int_t px, Int_t py )
virtual

compute the closest distance of approach from point px,py to this node

Reimplemented from TObject.

Definition at line 237 of file TGeoNode.cxx.

## ◆ Draw()

 void TGeoNode::Draw ( Option_t * option = "" )
virtual

draw current node according to option

Reimplemented from TObject.

Definition at line 322 of file TGeoNode.cxx.

## ◆ DrawOnly()

 void TGeoNode::DrawOnly ( Option_t * option = "" )

draw only this node independently of its vis options

Definition at line 314 of file TGeoNode.cxx.

## ◆ DrawOverlaps()

 void TGeoNode::DrawOverlaps ( )

Method drawing the overlap candidates with this node.

Definition at line 335 of file TGeoNode.cxx.

## ◆ ExecuteEvent()

 void TGeoNode::ExecuteEvent ( Int_t event, Int_t px, Int_t py )
virtual

Execute mouse actions on this volume.

Reimplemented from TObject.

Definition at line 251 of file TGeoNode.cxx.

## ◆ FillIdArray()

 void TGeoNode::FillIdArray ( Int_t & ifree, Int_t & nodeid, Int_t * array ) const

Fill array with node id. Recursive on node branch.

Definition at line 358 of file TGeoNode.cxx.

## ◆ FindNode()

 Int_t TGeoNode::FindNode ( const TGeoNode * node, Int_t level )

Search for a node within the branch of this one.

Definition at line 377 of file TGeoNode.cxx.

## ◆ GetByteCount()

 virtual Int_t TGeoNode::GetByteCount ( ) const
inlinevirtual

Reimplemented in TGeoNodeMatrix.

Definition at line 84 of file TGeoNode.h.

## ◆ GetColour()

 Int_t TGeoNode::GetColour ( ) const
inline

Definition at line 88 of file TGeoNode.h.

## ◆ GetDaughter()

 TGeoNode * TGeoNode::GetDaughter ( Int_t ind ) const
inline

Definition at line 85 of file TGeoNode.h.

## ◆ GetFinder()

 virtual TGeoPatternFinder * TGeoNode::GetFinder ( ) const
inlinevirtual

Reimplemented in TGeoNodeOffset.

Definition at line 90 of file TGeoNode.h.

## ◆ GetFWExtension()

 TGeoExtension * TGeoNode::GetFWExtension ( ) const
inline

Definition at line 128 of file TGeoNode.h.

## ◆ GetIndex()

 virtual Int_t TGeoNode::GetIndex ( ) const
inlinevirtual

Reimplemented in TGeoNodeOffset.

Definition at line 89 of file TGeoNode.h.

## ◆ GetMatrix()

 virtual TGeoMatrix * TGeoNode::GetMatrix ( ) const
pure virtual

Implemented in TGeoNodeMatrix, and TGeoNodeOffset.

## ◆ GetMedium()

 TGeoMedium * TGeoNode::GetMedium ( ) const
inline

Definition at line 91 of file TGeoNode.h.

## ◆ GetMotherVolume()

 TGeoVolume * TGeoNode::GetMotherVolume ( ) const
inline

Definition at line 92 of file TGeoNode.h.

## ◆ GetNdaughters()

 Int_t TGeoNode::GetNdaughters ( ) const
inline

Definition at line 93 of file TGeoNode.h.

## ◆ GetNodes()

 TObjArray * TGeoNode::GetNodes ( ) const
inline

Definition at line 94 of file TGeoNode.h.

## ◆ GetNumber()

 Int_t TGeoNode::GetNumber ( ) const
inline

Definition at line 95 of file TGeoNode.h.

## ◆ GetObjectInfo()

 char * TGeoNode::GetObjectInfo ( Int_t px, Int_t py ) const
virtual

Get node info for the browser.

Reimplemented from TObject.

Definition at line 262 of file TGeoNode.cxx.

## ◆ GetOptimalVoxels()

 virtual Int_t TGeoNode::GetOptimalVoxels ( ) const
inlinevirtual

Reimplemented in TGeoNodeMatrix.

Definition at line 99 of file TGeoNode.h.

## ◆ GetOverlaps()

 Int_t * TGeoNode::GetOverlaps ( Int_t & novlp ) const
inline

Definition at line 96 of file TGeoNode.h.

## ◆ GetUserExtension()

 TGeoExtension * TGeoNode::GetUserExtension ( ) const
inline

Definition at line 127 of file TGeoNode.h.

## ◆ GetVolume()

 TGeoVolume * TGeoNode::GetVolume ( ) const
inline

Definition at line 97 of file TGeoNode.h.

## ◆ GrabFWExtension()

 TGeoExtension * TGeoNode::GrabFWExtension ( ) const

Get a copy of the framework extension pointer.

The user must call Release() on the copy pointer once this pointer is not needed anymore (equivalent to delete() after calling new())

Definition at line 499 of file TGeoNode.cxx.

## ◆ GrabUserExtension()

 TGeoExtension * TGeoNode::GrabUserExtension ( ) const

Get a copy of the user extension pointer.

The user must call Release() on the copy pointer once this pointer is not needed anymore (equivalent to delete() after calling new())

Definition at line 488 of file TGeoNode.cxx.

## ◆ InspectNode()

 void TGeoNode::InspectNode ( ) const

Inspect this node.

Definition at line 282 of file TGeoNode.cxx.

## ◆ IsCloned()

 Bool_t TGeoNode::IsCloned ( ) const
inline

Definition at line 101 of file TGeoNode.h.

## ◆ IsFolder()

 virtual Bool_t TGeoNode::IsFolder ( ) const
inlinevirtual

Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).

Reimplemented from TObject.

Reimplemented in TGeoNodeMatrix.

Definition at line 102 of file TGeoNode.h.

## ◆ IsOffset()

 Bool_t TGeoNode::IsOffset ( ) const
inline

Definition at line 103 of file TGeoNode.h.

## ◆ IsOnScreen()

 Bool_t TGeoNode::IsOnScreen ( ) const

check if this node is drawn. Assumes that this node is current

Definition at line 273 of file TGeoNode.cxx.

## ◆ IsOverlapping()

 Bool_t TGeoNode::IsOverlapping ( ) const
inline

Definition at line 105 of file TGeoNode.h.

## ◆ IsVirtual()

 Bool_t TGeoNode::IsVirtual ( ) const
inline

Definition at line 106 of file TGeoNode.h.

## ◆ IsVisDaughters()

 Bool_t TGeoNode::IsVisDaughters ( ) const
inline

Definition at line 108 of file TGeoNode.h.

## ◆ IsVisible()

 Bool_t TGeoNode::IsVisible ( ) const
inline

Definition at line 107 of file TGeoNode.h.

## ◆ LocalToMaster()

 void TGeoNode::LocalToMaster ( const Double_t * local, Double_t * master ) const
virtual

Convert the point coordinates from local reference system to mother reference.

Definition at line 534 of file TGeoNode.cxx.

## ◆ LocalToMasterVect()

 void TGeoNode::LocalToMasterVect ( const Double_t * local, Double_t * master ) const
virtual

Convert a vector from local reference system to mother reference.

Definition at line 542 of file TGeoNode.cxx.

## ◆ ls()

 void TGeoNode::ls ( Option_t * option = "" ) const
virtual

Print the path (A/B/C/...) to this node on stdout.

Reimplemented from TNamed.

Definition at line 550 of file TGeoNode.cxx.

## ◆ MakeCopyNode()

 virtual TGeoNode * TGeoNode::MakeCopyNode ( ) const
inlinevirtual

Reimplemented in TGeoNodeMatrix, and TGeoNodeOffset.

Definition at line 111 of file TGeoNode.h.

## ◆ MasterToLocal()

 void TGeoNode::MasterToLocal ( const Double_t * master, Double_t * local ) const
virtual

Convert the point coordinates from mother reference to local reference system.

Definition at line 518 of file TGeoNode.cxx.

## ◆ MasterToLocalVect()

 void TGeoNode::MasterToLocalVect ( const Double_t * master, Double_t * local ) const
virtual

Convert a vector from mother reference to local reference system.

Definition at line 526 of file TGeoNode.cxx.

## ◆ MayOverlap()

 Bool_t TGeoNode::MayOverlap ( Int_t iother ) const

Check the overlab between the bounding box of the node overlaps with the one the brother with index IOTHER.

Definition at line 508 of file TGeoNode.cxx.

## ◆ operator=()

 TGeoNode & TGeoNode::operator= ( const TGeoNode & )
privatedelete

## ◆ Paint()

 void TGeoNode::Paint ( Option_t * option = "" )
virtual

Paint this node and its content according to visualization settings.

Reimplemented from TObject.

Definition at line 557 of file TGeoNode.cxx.

## ◆ PrintCandidates()

 void TGeoNode::PrintCandidates ( ) const

print daughters candidates for containing current point

Definition at line 567 of file TGeoNode.cxx.

## ◆ PrintOverlaps()

 void TGeoNode::PrintOverlaps ( ) const

print possible overlapping nodes

Definition at line 616 of file TGeoNode.cxx.

## ◆ Safety()

 Double_t TGeoNode::Safety ( const Double_t * point, Bool_t in = kTRUE ) const

computes the closest distance from given point to this shape

Definition at line 630 of file TGeoNode.cxx.

## ◆ SaveAttributes()

 void TGeoNode::SaveAttributes ( std::ostream & out )

save attributes for this node

Definition at line 404 of file TGeoNode.cxx.

## ◆ SetAllInvisible()

 void TGeoNode::SetAllInvisible ( )
inline

Definition at line 122 of file TGeoNode.h.

## ◆ SetCloned()

 void TGeoNode::SetCloned ( Bool_t flag = kTRUE )
inline

Definition at line 117 of file TGeoNode.h.

## ◆ SetCurrentPoint()

 void TGeoNode::SetCurrentPoint ( Double_t x, Double_t y, Double_t z )
inline

Definition at line 114 of file TGeoNode.h.

## ◆ SetFWExtension()

 void TGeoNode::SetFWExtension ( TGeoExtension * ext )

Connect framework defined extension to the node.

The node "grabs" a copy, so the original object can be released by the producer. Release the previously connected extension if any.

NOTE: This interface is intended for the use by TGeo and the users should NOT connect extensions using this method

Definition at line 476 of file TGeoNode.cxx.

## ◆ SetInvisible()

 void TGeoNode::SetInvisible ( )
inline

Definition at line 121 of file TGeoNode.h.

## ◆ SetMotherVolume()

 void TGeoNode::SetMotherVolume ( TGeoVolume * mother )
inline

Definition at line 123 of file TGeoNode.h.

## ◆ SetNumber()

 void TGeoNode::SetNumber ( Int_t number )
inline

Definition at line 116 of file TGeoNode.h.

## ◆ SetOverlapping()

 void TGeoNode::SetOverlapping ( Bool_t flag = kTRUE )
inline

Definition at line 118 of file TGeoNode.h.

## ◆ SetOverlaps()

 void TGeoNode::SetOverlaps ( Int_t * ovlp, Int_t novlp )

set the list of overlaps for this node (ovlp must be created with operator new)

Definition at line 653 of file TGeoNode.cxx.

## ◆ SetUserExtension()

 void TGeoNode::SetUserExtension ( TGeoExtension * ext )

Connect user-defined extension to the node.

The node "grabs" a copy, so the original object can be released by the producer. Release the previously connected extension if any.

NOTE: This interface is intended for user extensions and is guaranteed not to be used by TGeo

Definition at line 461 of file TGeoNode.cxx.

## ◆ SetVirtual()

 void TGeoNode::SetVirtual ( )
inline

Definition at line 119 of file TGeoNode.h.

## ◆ SetVisibility()

 void TGeoNode::SetVisibility ( Bool_t vis = kTRUE )
virtual

Set visibility of the node (obsolete).

Reimplemented from TGeoAtt.

Definition at line 663 of file TGeoNode.cxx.

## ◆ SetVolume()

 void TGeoNode::SetVolume ( TGeoVolume * volume )
inline

Definition at line 115 of file TGeoNode.h.

## ◆ VisibleDaughters()

 void TGeoNode::VisibleDaughters ( Bool_t vis = kTRUE )

Set visibility of the daughters (obsolete).

Definition at line 674 of file TGeoNode.cxx.

## ◆ fFWExtension

 TGeoExtension* TGeoNode::fFWExtension = nullptr
protected

Transient user-defined extension to volumes.

Definition at line 49 of file TGeoNode.h.

## ◆ fMother

 TGeoVolume* TGeoNode::fMother = nullptr
protected

Definition at line 44 of file TGeoNode.h.

## ◆ fNovlp

 Int_t TGeoNode::fNovlp = 0
protected

Definition at line 46 of file TGeoNode.h.

## ◆ fNumber

 Int_t TGeoNode::fNumber = 0
protected

Definition at line 45 of file TGeoNode.h.

## ◆ fOverlaps

 Int_t* TGeoNode::fOverlaps = nullptr
protected

Definition at line 47 of file TGeoNode.h.

## ◆ fUserExtension

 TGeoExtension* TGeoNode::fUserExtension = nullptr
protected

Definition at line 48 of file TGeoNode.h.

## ◆ fVolume

 TGeoVolume* TGeoNode::fVolume = nullptr
protected

Definition at line 43 of file TGeoNode.h.

Libraries for TGeoNode:

The documentation for this class was generated from the following files: