CMS 3D CMS Logo

List of all members | Public Member Functions
MuonEndcapFrameRotation Class Reference

#include <MuonEndcapFrameRotation.h>

Inheritance diagram for MuonEndcapFrameRotation:
MuonFrameRotation

Public Member Functions

Local3DPoint transformPoint (const Local3DPoint &, const G4Step *) const override
 
 ~MuonEndcapFrameRotation () override
 
- Public Member Functions inherited from MuonFrameRotation
 MuonFrameRotation ()
 
virtual ~MuonFrameRotation ()
 

Detailed Description

implementation of FrameRotation for the muon endcap

Author
Arno Straessner, CERN arno..nosp@m.stra.nosp@m.essne.nosp@m.r@ce.nosp@m.rn.ch

Modification:

Definition at line 18 of file MuonEndcapFrameRotation.h.

Constructor & Destructor Documentation

MuonEndcapFrameRotation::~MuonEndcapFrameRotation ( )
inlineoverride

Definition at line 20 of file MuonEndcapFrameRotation.h.

References transformPoint().

20 {};

Member Function Documentation

Local3DPoint MuonEndcapFrameRotation::transformPoint ( const Local3DPoint point,
const G4Step *  step 
) const
overridevirtual

Reimplemented from MuonFrameRotation.

Definition at line 8 of file MuonEndcapFrameRotation.cc.

References PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by ~MuonEndcapFrameRotation().

8  {
9 
10  const G4StepPoint * preStepPoint = step->GetPreStepPoint();
11  const G4TouchableHistory * theTouchable = (const G4TouchableHistory *)preStepPoint->GetTouchable();
12  const G4ThreeVector& trans=theTouchable->GetTranslation();
13 
14  return (trans.z()<0)
15  ? Local3DPoint(-point.x(),-point.z(),-point.y())
16  : Local3DPoint(point.x(),point.z(),-point.y());
17 }
T y() const
Definition: PV3DBase.h:63
T z() const
Definition: PV3DBase.h:64
Point3DBase< float, LocalTag > Local3DPoint
Definition: LocalPoint.h:9
step
T x() const
Definition: PV3DBase.h:62