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

Main handle class to hold an alignment object. More...

#include <Alignments.h>

Inheritance diagram for dd4hep::Alignment:
dd4hep::Handle< detail::AlignmentObject >

Classes

class  Processor
 Abstract base for processing callbacks to container objects. More...
 

Public Member Functions

 Alignment ()=default
 Default constructor. More...
 
 Alignment (Object *p)
 Default constructor. More...
 
template<typename Q >
 Alignment (const Handle< Q > &e)
 Constructor to be used when reading the already parsed object. More...
 
 Alignment (const std::string &name)
 Object constructor for pure alignment objects. More...
 
AlignmentDatadata ()
 Data accessor for the use of decorators. More...
 
const AlignmentDatadata () const
 Data accessor for the use of decorators. More...
 
const Deltadelta () const
 Access the delta value of the object. More...
 
const TGeoHMatrix & worldTransformation () const
 Create cached matrix to transform to world coordinates. More...
 
const TGeoHMatrix & detectorTransformation () const
 Access the alignment/placement matrix with respect to the world. More...
 
const std::vector< PlacedVolume > & nodes () const
 Access to the node list. More...
 
void localToWorld (const Position &local, Position &global) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
void localToWorld (const Double_t local[3], Double_t global[3]) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
Position localToWorld (const Position &local) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
Position localToWorld (const Double_t local[3]) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
void worldToLocal (const Position &global, Position &local) const
 Transformation from world coordinates of the local placed volume coordinates. More...
 
void worldToLocal (const Double_t global[3], Double_t local[3]) const
 Transformation from world coordinates of the local placed volume coordinates. More...
 
Position worldToLocal (const Position &global) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
Position worldToLocal (const Double_t global[3]) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
void localToDetector (const Position &local, Position &detector) const
 Transformation from local coordinates of the placed volume to the detector system. More...
 
void localToDetector (const Double_t local[3], Double_t detector[3]) const
 Transformation from local coordinates of the placed volume to the detector system. More...
 
Position localToDetector (const Position &local) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
Position localToDetector (const Double_t local[3]) const
 Transformation from local coordinates of the placed volume to the world system. More...
 
void detectorToLocal (const Position &detector, Position &local) const
 Transformation from detector element coordinates to the local placed volume coordinates. More...
 
void detectorToLocal (const Double_t detector[3], Double_t local[3]) const
 Transformation from detector element coordinates to the local placed volume coordinates. More...
 
Position detectorToLocal (const Position &detector) const
 Transformation from detector element coordinates to the local placed volume coordinates. More...
 
Position detectorToLocal (const Double_t det[3]) const
 Transformation from detector element coordinates to the local placed volume coordinates. More...
 
- Public Member Functions inherited from dd4hep::Handle< detail::AlignmentObject >
 Handle ()=default
 Default constructor. More...
 
 Handle (Handle< detail::AlignmentObject > &&element)=default
 Copy constructor. More...
 
 Handle (const Handle< detail::AlignmentObject > &element)=default
 Copy constructor. More...
 
 Handle (detail::AlignmentObject *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< detail::AlignmentObject > & operator= (Handle< detail::AlignmentObject > &&element)=default
 Assignment move operator. More...
 
Handle< detail::AlignmentObject > & operator= (const Handle< detail::AlignmentObject > &element)=default
 Assignment copy operator. More...
 
bool operator== (const Handle< detail::AlignmentObject > &element) const
 Boolean operator == used for RB tree insertions. More...
 
bool operator< (const Handle< detail::AlignmentObject > &element) const
 Boolean operator < used for RB tree insertions. More...
 
bool operator> (const Handle< detail::AlignmentObject > &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< detail::AlignmentObject > & clear ()
 Release the object held by the handle. More...
 
detail::AlignmentObjectoperator-> () const
 Access the held object using the -> operator. More...
 
 operator detail::AlignmentObject & () const
 Automatic type conversion to an object references. More...
 
detail::AlignmentObjectoperator* () const
 Access the held object using the * operator. More...
 
detail::AlignmentObjectptr () 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...
 
detail::AlignmentObjectaccess () 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< detail::AlignmentObject >
typedef detail::AlignmentObject Object
 Extern accessible definition of the contained element type. More...
 
typedef Handle< detail::AlignmentObjectBase
 Self type: used by sub-classes. More...
 
- Static Public Member Functions inherited from dd4hep::Handle< detail::AlignmentObject >
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< detail::AlignmentObject >
detail::AlignmentObjectm_element
 Single and only data member: Reference to the actual element. More...
 

Detailed Description

Main handle class to hold an alignment object.

Author
M.Frank
Version
1.0

Definition at line 115 of file Alignments.h.

Constructor & Destructor Documentation

◆ Alignment() [1/4]

dd4hep::Alignment::Alignment ( )
default

Default constructor.

◆ Alignment() [2/4]

dd4hep::Alignment::Alignment ( Object p)
inline

Default constructor.

Definition at line 137 of file Alignments.h.

◆ Alignment() [3/4]

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

Constructor to be used when reading the already parsed object.

Definition at line 139 of file Alignments.h.

◆ Alignment() [4/4]

Alignment::Alignment ( const std::string &  name)

Object constructor for pure alignment objects.

Initializing constructor to create a new object (Specialized for AlignmentNamedObject)

Definition at line 37 of file Alignments.cpp.

Member Function Documentation

◆ data() [1/2]

AlignmentData & Alignment::data ( )

Data accessor for the use of decorators.

Definition at line 53 of file Alignments.cpp.

◆ data() [2/2]

const AlignmentData & Alignment::data ( ) const

Data accessor for the use of decorators.

Definition at line 58 of file Alignments.cpp.

◆ delta()

const Delta & Alignment::delta ( ) const

Access the delta value of the object.

Definition at line 63 of file Alignments.cpp.

◆ detectorToLocal() [1/4]

Position dd4hep::Alignment::detectorToLocal ( const Double_t  det[3]) const
inline

Transformation from detector element coordinates to the local placed volume coordinates.

Definition at line 196 of file Alignments.h.

◆ detectorToLocal() [2/4]

void Alignment::detectorToLocal ( const Double_t  detector[3],
Double_t  local[3] 
) const

Transformation from detector element coordinates to the local placed volume coordinates.

Definition at line 132 of file Alignments.cpp.

◆ detectorToLocal() [3/4]

Position Alignment::detectorToLocal ( const Position detector) const

Transformation from detector element coordinates to the local placed volume coordinates.

Definition at line 137 of file Alignments.cpp.

◆ detectorToLocal() [4/4]

void Alignment::detectorToLocal ( const Position detector,
Position local 
) const

Transformation from detector element coordinates to the local placed volume coordinates.

Aliases for the transformation from the next DetElement to local coordinates

Definition at line 127 of file Alignments.cpp.

◆ detectorTransformation()

const TGeoHMatrix & Alignment::detectorTransformation ( ) const

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

Definition at line 73 of file Alignments.cpp.

◆ localToDetector() [1/4]

Position dd4hep::Alignment::localToDetector ( const Double_t  local[3]) const
inline

Transformation from local coordinates of the placed volume to the world system.

Definition at line 185 of file Alignments.h.

◆ localToDetector() [2/4]

void Alignment::localToDetector ( const Double_t  local[3],
Double_t  detector[3] 
) const

Transformation from local coordinates of the placed volume to the detector system.

Definition at line 117 of file Alignments.cpp.

◆ localToDetector() [3/4]

Position Alignment::localToDetector ( const Position local) const

Transformation from local coordinates of the placed volume to the world system.

Definition at line 122 of file Alignments.cpp.

◆ localToDetector() [4/4]

void Alignment::localToDetector ( const Position local,
Position detector 
) const

Transformation from local coordinates of the placed volume to the detector system.

Aliases for the transformation from local coordinates to the next DetElement system

Definition at line 112 of file Alignments.cpp.

◆ localToWorld() [1/4]

Position dd4hep::Alignment::localToWorld ( const Double_t  local[3]) const
inline

Transformation from local coordinates of the placed volume to the world system.

Definition at line 163 of file Alignments.h.

◆ localToWorld() [2/4]

void Alignment::localToWorld ( const Double_t  local[3],
Double_t  global[3] 
) const

Transformation from local coordinates of the placed volume to the world system.

Definition at line 88 of file Alignments.cpp.

◆ localToWorld() [3/4]

Position Alignment::localToWorld ( const Position local) const

Transformation from local coordinates of the placed volume to the world system.

Definition at line 92 of file Alignments.cpp.

◆ localToWorld() [4/4]

void Alignment::localToWorld ( const Position local,
Position global 
) const

Transformation from local coordinates of the placed volume to the world system.

Aliases for the transformation from local coordinates to the world system

Definition at line 83 of file Alignments.cpp.

◆ nodes()

const std::vector< PlacedVolume > & Alignment::nodes ( ) const

Access to the node list.

Definition at line 78 of file Alignments.cpp.

◆ worldToLocal() [1/4]

Position dd4hep::Alignment::worldToLocal ( const Double_t  global[3]) const
inline

Transformation from local coordinates of the placed volume to the world system.

Definition at line 174 of file Alignments.h.

◆ worldToLocal() [2/4]

void Alignment::worldToLocal ( const Double_t  global[3],
Double_t  local[3] 
) const

Transformation from world coordinates of the local placed volume coordinates.

Definition at line 102 of file Alignments.cpp.

◆ worldToLocal() [3/4]

Position Alignment::worldToLocal ( const Position global) const

Transformation from local coordinates of the placed volume to the world system.

Definition at line 107 of file Alignments.cpp.

◆ worldToLocal() [4/4]

void Alignment::worldToLocal ( const Position global,
Position local 
) const

Transformation from world coordinates of the local placed volume coordinates.

Aliases for the transformation from world coordinates to the local volume

Definition at line 97 of file Alignments.cpp.

◆ worldTransformation()

const TGeoHMatrix & Alignment::worldTransformation ( ) const

Create cached matrix to transform to world coordinates.

Definition at line 68 of file Alignments.cpp.


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