12#ifndef ROOT_TGeoPhysicalNode
13#define ROOT_TGeoPhysicalNode
122 TGeoPNEntry(
const char *unique_name,
const char *path);
#define ClassDef(name, id)
Matrix class used for computing global transformations Should NOT be used for node definition.
Geometrical transformation package.
Class providing navigation API for TGeo geometries.
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
The knowledge of the path to the objects that need to be misaligned is essential since there is no ot...
const TGeoHMatrix * GetMatrix() const
const TGeoHMatrix * fMatrix
TGeoPhysicalNode * GetPhysicalNode() const
TGeoHMatrix * GetGlobalOrig() const
void SetPhysicalNode(TGeoPhysicalNode *node)
Setter for the corresponding physical node.
TGeoHMatrix * fGlobalOrig
TGeoPNEntry()
Default constructor.
virtual ~TGeoPNEntry()
Destructor.
TGeoHMatrix * GetMatrixOrig() const
TGeoPNEntry(const TGeoPNEntry &pne)
TGeoPNEntry & operator=(const TGeoPNEntry &pne)
void SetMatrix(const TGeoHMatrix *matrix)
Set the additional matrix for this node entry.
const char * GetPath() const
Physical nodes are the actual 'touchable' objects in the geometry, representing a path of positioned ...
void SetBranchAsState()
Set node branch according to current state.
virtual ~TGeoPhysicalNode()
Destructor.
TGeoNode * GetMother(Int_t levup=1) const
Return parent at LEVUP generation.
TGeoNode * GetNode(Int_t level=-1) const
Return node in branch at LEVEL. If not specified, return last leaf.
void Refresh()
Refresh this physical node.
Bool_t SetPath(const char *path)
Specify the path for this node.
virtual void Print(Option_t *option="") const
Print info about this node.
void SetVisibility(Bool_t flag=kTRUE)
TGeoPhysicalNode()
Default constructor.
void SetAligned(Bool_t flag=kTRUE)
TGeoHMatrix * GetOriginalMatrix() const
void SetVisibleFull(Bool_t flag=kTRUE)
Bool_t IsVisibleFull() const
Bool_t IsMatchingState(TGeoNavigator *nav) const
Checks if a given navigator state matches this physical node.
void SetMatrixOrig(const TGeoMatrix *local)
Allows PN entries (or users) to preset the local original matrix for the last node pointed by the pat...
TGeoPhysicalNode & operator=(const TGeoPhysicalNode &)=delete
TGeoHMatrix * GetMatrix(Int_t level=-1) const
Return global matrix for node at LEVEL.
TGeoHMatrix * fMatrixOrig
Bool_t IsVolAttributes() const
Bool_t Align(TGeoMatrix *newmat=nullptr, TGeoShape *newshape=nullptr, Bool_t check=kFALSE, Double_t ovlp=0.001)
Align a physical node with a new relative matrix/shape.
virtual void Paint(Option_t *option="")
Paint this node and its content according to visualization settings.
TGeoPhysicalNode(const TGeoPhysicalNode &)=delete
TGeoVolume * GetVolume(Int_t level=-1) const
Return volume associated with node at LEVEL in the branch.
void SetIsVolAtt(Bool_t flag=kTRUE)
TGeoShape * GetShape(Int_t level=-1) const
Return shape associated with volume.
Base abstract class for all shapes.
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
The TNamed class is the base class for all named ROOT classes.
const char * GetTitle() const override
Returns title of object.
TNamed & operator=(const TNamed &rhs)
TNamed assignment operator.
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.