CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
AlignTransform Class Reference

#include <AlignTransform.h>

Public Types

typedef CLHEP::HepEulerAngles EulerAngles
 
typedef CLHEP::HepRotation Rotation
 
typedef HepGeom::Transform3D Transform
 
typedef CLHEP::Hep3Vector Translation
 

Public Member Functions

 AlignTransform ()
 Default constructor. More...
 
 AlignTransform (const Translation &itranslation, const EulerAngles &ieulerAngles, align::ID irawId)
 Constructor from Euler angles. More...
 
 AlignTransform (const Translation &itranslation, const Rotation &irotation, align::ID irawId)
 Constructor from Rotation. More...
 
align::ID rawId () const
 Do not expose Euler angles since we may change its type later. More...
 
Rotation rotation () const
 
Transform transform () const
 
const Translationtranslation () const
 

Private Attributes

EulerAngles m_eulerAngles
 
align::ID m_rawId
 
Translation m_translation
 

Detailed Description

Class holding data for an Alignment transformation It contains the raw detector id, its global position and global orientation. It is optimized for storage.

Definition at line 13 of file AlignTransform.h.

Member Typedef Documentation

typedef CLHEP::HepEulerAngles AlignTransform::EulerAngles

Definition at line 16 of file AlignTransform.h.

typedef CLHEP::HepRotation AlignTransform::Rotation

Definition at line 18 of file AlignTransform.h.

typedef HepGeom::Transform3D AlignTransform::Transform

Definition at line 19 of file AlignTransform.h.

typedef CLHEP::Hep3Vector AlignTransform::Translation

Definition at line 17 of file AlignTransform.h.

Constructor & Destructor Documentation

AlignTransform::AlignTransform ( )
inline

Default constructor.

Definition at line 22 of file AlignTransform.h.

22 {}
AlignTransform::AlignTransform ( const Translation itranslation,
const EulerAngles ieulerAngles,
align::ID  irawId 
)
inline

Constructor from Euler angles.

Definition at line 25 of file AlignTransform.h.

27  :
28  m_translation(itranslation),
29  m_eulerAngles(ieulerAngles),
30  m_rawId(irawId) {}
EulerAngles m_eulerAngles
align::ID m_rawId
Translation m_translation
AlignTransform::AlignTransform ( const Translation itranslation,
const Rotation irotation,
align::ID  irawId 
)
inline

Constructor from Rotation.

Definition at line 33 of file AlignTransform.h.

35  :
36  m_translation(itranslation),
37  m_eulerAngles(irotation.eulerAngles()),
38  m_rawId(irawId) {}
EulerAngles m_eulerAngles
align::ID m_rawId
Translation m_translation

Member Function Documentation

align::ID AlignTransform::rawId ( ) const
inline

Do not expose Euler angles since we may change its type later.

Definition at line 43 of file AlignTransform.h.

References m_rawId.

Referenced by GlobalTrackerMuonAlignment::writeGlPosRcd().

43 { return m_rawId; }
align::ID m_rawId
Rotation AlignTransform::rotation ( void  ) const
inline

Definition at line 45 of file AlignTransform.h.

References m_eulerAngles.

Referenced by GeometryAligner::applyAlignments(), GeometryAligner::removeGlobalTransform(), transform(), and GlobalTrackerMuonAlignment::writeGlPosRcd().

46  { //std::cout<<"Inside aligntransform::rotation() with id="<<std::hex<<m_rawId<<std::dec<<std::endl ;
47  //std::cout<<" for e.a.="<<m_eulerAngles<<std::endl;
48  return Rotation(m_eulerAngles); }
EulerAngles m_eulerAngles
CLHEP::HepRotation Rotation
Transform AlignTransform::transform ( ) const
inline
const Translation& AlignTransform::translation ( void  ) const
inline

Member Data Documentation

EulerAngles AlignTransform::m_eulerAngles
private

Definition at line 55 of file AlignTransform.h.

Referenced by rotation().

align::ID AlignTransform::m_rawId
private

Definition at line 56 of file AlignTransform.h.

Referenced by rawId().

Translation AlignTransform::m_translation
private

Definition at line 54 of file AlignTransform.h.

Referenced by translation().