CMS 3D CMS Logo

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

#include <MuonEndcapFrameRotation.h>

Inheritance diagram for MuonEndcapFrameRotation:
MuonFrameRotation

Public Member Functions

virtual Local3DPoint transformPoint (Local3DPoint &, G4Step *) const
 
virtual ~MuonEndcapFrameRotation ()
 
- Public Member Functions inherited from MuonFrameRotation
 MuonFrameRotation (const DDCompactView &cpv)
 
 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

virtual MuonEndcapFrameRotation::~MuonEndcapFrameRotation ( )
inlinevirtual

Definition at line 20 of file MuonEndcapFrameRotation.h.

20 {};

Member Function Documentation

Local3DPoint MuonEndcapFrameRotation::transformPoint ( Local3DPoint point,
G4Step *  s = 0 
) const
virtual

Implements MuonFrameRotation.

Definition at line 6 of file MuonEndcapFrameRotation.cc.

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

6  {
7  if (s) {
8  G4StepPoint * preStepPoint = s->GetPreStepPoint();
9  G4TouchableHistory * theTouchable=(G4TouchableHistory *)
10  (preStepPoint->GetTouchable());
11  const G4ThreeVector trans=theTouchable->GetTranslation();
12 
13  if (trans.z()<0) {
14  // return Local3DPoint(point.x(),-point.z(),point.y());
15  // return Local3DPoint(-point.x(),point.z(),-point.y());
16  return Local3DPoint(-point.x(),-point.z(),-point.y());
17  } else {
18  // return Local3DPoint(point.x(),point.z(),-point.y());
19  return Local3DPoint(point.x(),point.z(),-point.y());
20  }
21  } else {
22  return Local3DPoint(0.,0.,0.);
23  }
24 }
T y() const
Definition: PV3DBase.h:62
T z() const
Definition: PV3DBase.h:63
Point3DBase< float, LocalTag > Local3DPoint
Definition: LocalPoint.h:9
T x() const
Definition: PV3DBase.h:61