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
const
MuonOffsetMap
* offMap,
10
bool
dd4hep
)
11
:
MuonFrameRotation
::
MuonFrameRotation
() {
12
g4numbering
=
new
MuonG4Numbering
(muonConstants, offMap,
dd4hep
);
13
int
theLevelPart = muonConstants.
getValue
(
"level"
);
14
theRegion
= muonConstants.
getValue
(
"mr_region"
) / theLevelPart;
15
}
16
17
MuonRPCFrameRotation::~MuonRPCFrameRotation
() {
delete
g4numbering
; }
18
19
Local3DPoint
MuonRPCFrameRotation::transformPoint
(
const
Local3DPoint
&
point
,
const
G4Step* aStep)
const
{
20
//check if endcap
21
MuonBaseNumber
num
=
g4numbering
->
PhysicalVolumeToBaseNumber
(aStep);
22
bool
endcap_muon = (
num
.getSuperNo(
theRegion
) != 1);
23
return
(endcap_muon) ?
Local3DPoint
(
point
.x(),
point
.z(), -
point
.y()) :
Local3DPoint
(
point
.x(),
point
.y(),
point
.z());
24
}
MuonRPCFrameRotation::~MuonRPCFrameRotation
~MuonRPCFrameRotation() override
Definition:
MuonRPCFrameRotation.cc:17
MuonGeometryConstants
Definition:
MuonGeometryConstants.h:20
MuonRPCFrameRotation::g4numbering
MuonG4Numbering * g4numbering
Definition:
MuonRPCFrameRotation.h:29
MuonG4Numbering.h
MuonGeometryConstants.h
MuonRPCFrameRotation::MuonRPCFrameRotation
MuonRPCFrameRotation(const MuonGeometryConstants &constants, const MuonOffsetMap *offMap, bool dd4hep)
Definition:
MuonRPCFrameRotation.cc:8
MuonG4Numbering
Definition:
MuonG4Numbering.h:26
MuonOffsetMap
Definition:
MuonOffsetMap.h:9
MuonRPCFrameRotation::transformPoint
Local3DPoint transformPoint(const Local3DPoint &, const G4Step *) const override
Definition:
MuonRPCFrameRotation.cc:19
Point3DBase< float, LocalTag >
MuonBaseNumber.h
MuonRPCFrameRotation::theRegion
int theRegion
Definition:
MuonRPCFrameRotation.h:30
MuonGeometryConstants::getValue
int getValue(const std::string &name) const
Definition:
MuonGeometryConstants.cc:8
MuonG4Numbering::PhysicalVolumeToBaseNumber
MuonBaseNumber PhysicalVolumeToBaseNumber(const G4Step *aStep)
Definition:
MuonG4Numbering.cc:47
EgammaValidation_cff.num
num
Definition:
EgammaValidation_cff.py:34
MuonBaseNumber
Definition:
MuonBaseNumber.h:21
dd4hep
Definition:
DDPlugins.h:8
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
Generated for CMSSW Reference Manual by
1.8.16