SimG4CMS
Muon
src
MuonRPCFrameRotation.cc
Go to the documentation of this file.
1
#include "
SimG4CMS/Muon/interface/MuonRPCFrameRotation.h
"
2
#include "
SimG4CMS/Muon/interface/MuonG4Numbering.h
"
3
#include "
Geometry/MuonNumbering/interface/MuonGeometryConstants.h
"
4
#include "
Geometry/MuonNumbering/interface/MuonBaseNumber.h
"
5
6
#include "G4Step.hh"
7
8
MuonRPCFrameRotation::MuonRPCFrameRotation
(
const
MuonGeometryConstants
& muonConstants)
9
:
MuonFrameRotation
::
MuonFrameRotation
() {
10
g4numbering
=
new
MuonG4Numbering
(muonConstants);
11
int
theLevelPart = muonConstants.
getValue
(
"level"
);
12
theRegion
= muonConstants.
getValue
(
"mr_region"
) / theLevelPart;
13
}
14
15
MuonRPCFrameRotation::~MuonRPCFrameRotation
() {
delete
g4numbering
; }
16
17
Local3DPoint
MuonRPCFrameRotation::transformPoint
(
const
Local3DPoint
&
point
,
const
G4Step* aStep)
const
{
18
//check if endcap
19
MuonBaseNumber
num
=
g4numbering
->
PhysicalVolumeToBaseNumber
(aStep);
20
bool
endcap_muon = (
num
.getSuperNo(
theRegion
) != 1);
21
return
(endcap_muon) ?
Local3DPoint
(
point
.x(),
point
.z(), -
point
.y()) :
Local3DPoint
(
point
.x(),
point
.y(),
point
.z());
22
}
MuonRPCFrameRotation::~MuonRPCFrameRotation
~MuonRPCFrameRotation() override
Definition:
MuonRPCFrameRotation.cc:15
MuonGeometryConstants
Definition:
MuonGeometryConstants.h:20
MuonRPCFrameRotation::g4numbering
MuonG4Numbering * g4numbering
Definition:
MuonRPCFrameRotation.h:28
MuonG4Numbering.h
MuonGeometryConstants.h
MuonG4Numbering
Definition:
MuonG4Numbering.h:25
MuonRPCFrameRotation::transformPoint
Local3DPoint transformPoint(const Local3DPoint &, const G4Step *) const override
Definition:
MuonRPCFrameRotation.cc:17
Point3DBase< float, LocalTag >
MuonBaseNumber.h
MuonRPCFrameRotation::theRegion
int theRegion
Definition:
MuonRPCFrameRotation.h:29
MuonGeometryConstants::getValue
int getValue(const std::string &name) const
Definition:
MuonGeometryConstants.cc:8
MuonG4Numbering::PhysicalVolumeToBaseNumber
MuonBaseNumber PhysicalVolumeToBaseNumber(const G4Step *aStep)
Definition:
MuonG4Numbering.cc:43
EgammaValidation_cff.num
num
Definition:
EgammaValidation_cff.py:34
MuonBaseNumber
Definition:
MuonBaseNumber.h:21
MuonFrameRotation
Definition:
MuonFrameRotation.h:17
point
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition:
invegas.h:5
MuonRPCFrameRotation.h
Local3DPoint
Point3DBase< float, LocalTag > Local3DPoint
Definition:
LocalPoint.h:9
MuonRPCFrameRotation::MuonRPCFrameRotation
MuonRPCFrameRotation(const MuonGeometryConstants &constants)
Definition:
MuonRPCFrameRotation.cc:8
Generated for CMSSW Reference Manual by
1.8.16