Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
TrackPropagation
NavGeometry
interface
NavVolume.h
Go to the documentation of this file.
1
#ifndef NavVolume_H
2
#define NavVolume_H
3
4
#include "
MagneticField/VolumeGeometry/interface/MagVolume.h
"
5
#include "
DataFormats/TrajectorySeed/interface/PropagationDirection.h
"
6
#include "
DetectorDescription/Core/interface/DDSolidShapes.h
"
7
8
#include "
TrackPropagation/NavGeometry/interface/SurfaceAndBounds.h
"
9
#include "
TrackPropagation/NavGeometry/interface/VolumeCrossReturnType.h
"
10
11
#include <vector>
12
13
#include "
FWCore/Utilities/interface/GCC11Compatibility.h
"
14
15
16
class
NavSurface
;
17
class
Bounds
;
18
class
TrajectoryStateOnSurface
;
19
20
class
NavVolume
:
public
MagVolume
{
21
public
:
22
23
NavVolume
(
const
PositionType
&
pos
,
const
RotationType
&
rot
,
24
DDSolidShape
shape,
const
MagneticFieldProvider<float>
* mfp) :
25
MagVolume
(pos,rot,shape,mfp) {}
26
27
typedef
std::vector<SurfaceAndBounds>
Container
;
29
30
31
virtual
~NavVolume
() {}
32
33
virtual
Container
nextSurface
(
const
LocalPoint
&
pos
,
const
LocalVector
& mom,
double
charge
,
34
PropagationDirection
propDir =
alongMomentum
)
const
= 0;
35
37
virtual
Container
nextSurface
(
const
LocalPoint
&
pos
,
const
LocalVector
& mom,
double
charge
,
38
PropagationDirection
propDir,
39
ConstReferenceCountingPointer<Surface>
NotThisSurfaceP)
const
= 0;
40
41
virtual
VolumeCrossReturnType
crossToNextVolume
(
const
TrajectoryStateOnSurface
& currentState,
42
const
Propagator
& prop)
const
= 0;
43
44
virtual
bool
isIron
()
const
= 0;
45
46
};
47
48
#endif
49
pos
Definition:
Histograms.cc:18
ConstReferenceCountingPointer< Surface >
Vector3DBase
Definition:
Vector3DBase.h:9
DDSolidShape
DDSolidShape
Definition:
DDSolidShapes.h:6
NavVolume::nextSurface
virtual Container nextSurface(const LocalPoint &pos, const LocalVector &mom, double charge, PropagationDirection propDir=alongMomentum) const =0
alongMomentum
Definition:
PropagationDirection.h:4
NavVolume::crossToNextVolume
virtual VolumeCrossReturnType crossToNextVolume(const TrajectoryStateOnSurface ¤tState, const Propagator &prop) const =0
VolumeCrossReturnType.h
MagVolume.h
PropagationDirection
PropagationDirection
Definition:
PropagationDirection.h:4
TrajectoryStateOnSurface
Definition:
TrajectoryStateOnSurface.h:15
DeDxDiscriminatorTools::charge
double charge(const std::vector< uint8_t > &Ampls)
Definition:
DeDxDiscriminatorTools.cc:43
NavVolume::NavVolume
NavVolume(const PositionType &pos, const RotationType &rot, DDSolidShape shape, const MagneticFieldProvider< float > *mfp)
Definition:
NavVolume.h:23
NavVolume::Container
std::vector< SurfaceAndBounds > Container
Definition:
NavVolume.h:27
VolumeCrossReturnType
Definition:
VolumeCrossReturnType.h:9
MagVolume
Definition:
MagVolume.h:14
TkRotation< float >
DDSolidShapes.h
PropagationDirection.h
NavVolume
Definition:
NavVolume.h:20
Propagator
Definition:
Propagator.h:40
NavVolume::~NavVolume
virtual ~NavVolume()
Definition:
NavVolume.h:31
SurfaceAndBounds.h
NavVolume::isIron
virtual bool isIron() const =0
GCC11Compatibility.h
Point3DBase< float, GlobalTag >
Bounds
Definition:
Bounds.h:22
MagneticFieldProvider< float >
makeMuonMisalignmentScenario.rot
list rot
Definition:
makeMuonMisalignmentScenario.py:320
NavSurface
Definition:
NavSurface.h:16
Generated for CMSSW Reference Manual by
1.8.5