DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | List of all members

Main handle class to hold a TGeo alignment object of type TGeoPhysicalNode. More...

#include <GlobalAlignment.h>

Inheritance diagram for dd4hep::align::GlobalAlignment:
dd4hep::Handle< TGeoPhysicalNode >

Public Member Functions

 GlobalAlignment ()=default
 Default constructor. More...
 
 GlobalAlignment (TGeoPhysicalNode *p)
 Default constructor. More...
 
 GlobalAlignment (const GlobalAlignment &c)=default
 Copy constructor. More...
 
template<typename Q >
 GlobalAlignment (const Handle< Q > &e)
 Constructor to be used when reading the already parsed object. More...
 
 GlobalAlignment (const std::string &path)
 Initializing constructor. More...
 
GlobalAlignmentoperator= (const GlobalAlignment &c)=default
 Assignment operator. More...
 
int numNodes () const
 Number of nodes in this branch (=depth of the placement hierarchy from the top level volume) More...
 
PlacedVolume placement () const
 Access the placement of this node. More...
 
PlacedVolume motherPlacement (int level_up=1) const
 Access the placement of the mother of this node. More...
 
PlacedVolume nodePlacement (int level=-1) const
 Access the placement of a node in the chain of placements for this branch. More...
 
Transform3D toGlobal (int level=-1) const
 Access the currently applied alignment/placement matrix with respect to the world. More...
 
Position toGlobal (const Position &localPoint, int level=-1) const
 Transform a point from local coordinates of a given level to global coordinates. More...
 
Position globalToLocal (const Position &globalPoint, int level=-1) const
 Transform a point from global coordinates to local coordinates of a given level. More...
 
Transform3D toMother (int level=-1) const
 Access the currently applied alignment/placement matrix with respect to mother volume. More...
 
Transform3D nominal () const
 Access the currently applied alignment/placement matrix (mother to daughter) More...
 
Transform3D delta () const
 Access the currently applied correction matrix (delta) (mother to daughter) More...
 
Transform3D invDelta () const
 Access the inverse of the currently applied correction matrix (delta) (mother to daughter) More...
 
- Public Member Functions inherited from dd4hep::Handle< TGeoPhysicalNode >
 Handle ()=default
 Default constructor. More...
 
 Handle (Handle< TGeoPhysicalNode > &&element)=default
 Copy constructor. More...
 
 Handle (const Handle< TGeoPhysicalNode > &element)=default
 Copy constructor. More...
 
 Handle (TGeoPhysicalNode *element)
 Initializing constructor from pointer. More...
 
 Handle (Q *element)
 Initializing constructor from unrelated pointer with type checking. More...
 
 Handle (const Handle< Q > &element)
 Initializing constructor from unrelated handle with type checking. More...
 
Handle< TGeoPhysicalNode > & operator= (Handle< TGeoPhysicalNode > &&element)=default
 Assignment move operator. More...
 
Handle< TGeoPhysicalNode > & operator= (const Handle< TGeoPhysicalNode > &element)=default
 Assignment copy operator. More...
 
bool operator== (const Handle< TGeoPhysicalNode > &element) const
 Boolean operator == used for RB tree insertions. More...
 
bool operator< (const Handle< TGeoPhysicalNode > &element) const
 Boolean operator < used for RB tree insertions. More...
 
bool operator> (const Handle< TGeoPhysicalNode > &element) const
 Boolean operator > used for RB tree insertions. More...
 
bool isValid () const
 Check the validity of the object held by the handle. More...
 
bool operator! () const
 Check the validity of the object held by the handle. More...
 
Handle< TGeoPhysicalNode > & clear ()
 Release the object held by the handle. More...
 
TGeoPhysicalNode * operator-> () const
 Access the held object using the -> operator. More...
 
 operator TGeoPhysicalNode & () const
 Automatic type conversion to an object references. More...
 
TGeoPhysicalNode & operator* () const
 Access the held object using the * operator. More...
 
TGeoPhysicalNode * ptr () const
 Access to the held object. More...
 
Q * _ptr () const
 Access to an unrelated object type. More...
 
Q * data () const
 Access to an unrelated object type. More...
 
Q & object () const
 Access to an unrelated object type. More...
 
TGeoPhysicalNode * access () const
 Checked object access. Throws invalid handle runtime exception if invalid handle. More...
 
const char * name () const
 Access the object name (or "" if not supported by the object) More...
 
const char * name () const
 
const char * name () const
 
void assign (Object *n, const std::string &nam, const std::string &title)
 Assign a new named object. Note: object references must be managed by the user. More...
 
void assign (_Segmentation *s, const std::string &n, const std::string &)
 
void assign (NamedObject *p, const std::string &n, const std::string &t)
 
void destroy ()
 Destroy the underlying object (be careful here: things are not reference counted)! More...
 

Additional Inherited Members

- Public Types inherited from dd4hep::Handle< TGeoPhysicalNode >
typedef TGeoPhysicalNode Object
 Extern accessible definition of the contained element type. More...
 
typedef Handle< TGeoPhysicalNode > Base
 Self type: used by sub-classes. More...
 
- Static Public Member Functions inherited from dd4hep::Handle< TGeoPhysicalNode >
static void bad_assignment (const std::type_info &from, const std::type_info &to)
 Helper routine called when unrelated types are assigned. More...
 
- Public Attributes inherited from dd4hep::Handle< TGeoPhysicalNode >
TGeoPhysicalNode * m_element
 Single and only data member: Reference to the actual element. More...
 

Detailed Description

Main handle class to hold a TGeo alignment object of type TGeoPhysicalNode.

See the ROOT documentation about the TGeoPhysicalNode for further details:

See also
http://root.cern.ch/root/html/TGeoPhysicalNode.html
Author
M.Frank
Version
1.0

Definition at line 38 of file GlobalAlignment.h.

Constructor & Destructor Documentation

◆ GlobalAlignment() [1/5]

dd4hep::align::GlobalAlignment::GlobalAlignment ( )
default

Default constructor.

◆ GlobalAlignment() [2/5]

dd4hep::align::GlobalAlignment::GlobalAlignment ( TGeoPhysicalNode *  p)
inline

Default constructor.

Definition at line 43 of file GlobalAlignment.h.

◆ GlobalAlignment() [3/5]

dd4hep::align::GlobalAlignment::GlobalAlignment ( const GlobalAlignment c)
default

Copy constructor.

◆ GlobalAlignment() [4/5]

template<typename Q >
dd4hep::align::GlobalAlignment::GlobalAlignment ( const Handle< Q > &  e)
inline

Constructor to be used when reading the already parsed object.

Definition at line 47 of file GlobalAlignment.h.

◆ GlobalAlignment() [5/5]

dd4hep::align::GlobalAlignment::GlobalAlignment ( const std::string &  path)

Initializing constructor.

Initializing constructor to create a new object.

Definition at line 33 of file GlobalAlignment.cpp.

Member Function Documentation

◆ delta()

dd4hep::Transform3D dd4hep::align::GlobalAlignment::delta ( ) const

Access the currently applied correction matrix (delta) (mother to daughter)

Access the currently applied correction matrix (delta)

Definition at line 109 of file GlobalAlignment.cpp.

◆ globalToLocal()

dd4hep::Position dd4hep::align::GlobalAlignment::globalToLocal ( const Position globalPoint,
int  level = -1 
) const

Transform a point from global coordinates to local coordinates of a given level.

Transform a point from local coordinates of a given level to global coordinates.

Definition at line 88 of file GlobalAlignment.cpp.

◆ invDelta()

dd4hep::Transform3D dd4hep::align::GlobalAlignment::invDelta ( ) const

Access the inverse of the currently applied correction matrix (delta) (mother to daughter)

Definition at line 120 of file GlobalAlignment.cpp.

◆ motherPlacement()

dd4hep::PlacedVolume dd4hep::align::GlobalAlignment::motherPlacement ( int  level_up = 1) const

Access the placement of the mother of this node.

Definition at line 61 of file GlobalAlignment.cpp.

◆ nodePlacement()

dd4hep::PlacedVolume dd4hep::align::GlobalAlignment::nodePlacement ( int  level = -1) const

Access the placement of a node in the chain of placements for this branch.

Remeber the special cases: nodePlacement(-1) == nodePlacement(numNodes()) = placement() nodePlacement(numNodes()-1) == motherPlacement() = TGeoPhysicalNode::GetMother() == direct mother of placement()

Definition at line 51 of file GlobalAlignment.cpp.

◆ nominal()

dd4hep::Transform3D dd4hep::align::GlobalAlignment::nominal ( ) const

Access the currently applied alignment/placement matrix (mother to daughter)

Access the currently applied alignment/placement matrix.

Definition at line 103 of file GlobalAlignment.cpp.

◆ numNodes()

int dd4hep::align::GlobalAlignment::numNodes ( ) const

Number of nodes in this branch (=depth of the placement hierarchy from the top level volume)

Number of nodes in this branch.

Definition at line 39 of file GlobalAlignment.cpp.

◆ operator=()

GlobalAlignment& dd4hep::align::GlobalAlignment::operator= ( const GlobalAlignment c)
default

Assignment operator.

◆ placement()

dd4hep::PlacedVolume dd4hep::align::GlobalAlignment::placement ( ) const

Access the placement of this node.

Definition at line 45 of file GlobalAlignment.cpp.

◆ toGlobal() [1/2]

dd4hep::Position dd4hep::align::GlobalAlignment::toGlobal ( const Position localPoint,
int  level = -1 
) const

Transform a point from local coordinates of a given level to global coordinates.

Definition at line 79 of file GlobalAlignment.cpp.

◆ toGlobal() [2/2]

dd4hep::Transform3D dd4hep::align::GlobalAlignment::toGlobal ( int  level = -1) const

Access the currently applied alignment/placement matrix with respect to the world.

Access the currently applied alignment/placement matrix.

Definition at line 73 of file GlobalAlignment.cpp.

◆ toMother()

dd4hep::Transform3D dd4hep::align::GlobalAlignment::toMother ( int  level = -1) const

Access the currently applied alignment/placement matrix with respect to mother volume.

Access the currently applied alignment/placement matrix.

Definition at line 97 of file GlobalAlignment.cpp.


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