CMS 3D CMS Logo

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

#include <NavVolume.h>

Inheritance diagram for NavVolume:
MagVolume GloballyPositioned< float > MagneticField NavVolume6Faces

Public Types

typedef std::vector
< SurfaceAndBounds
Container
 
- Public Types inherited from MagVolume
typedef GloballyPositioned< float > Base
 
typedef GloballyPositioned
< float >::GlobalPoint 
GlobalPoint
 
typedef GloballyPositioned
< float >::GlobalVector 
GlobalVector
 
typedef GloballyPositioned
< float >::LocalPoint 
LocalPoint
 
typedef GloballyPositioned
< float >::LocalVector 
LocalVector
 
- Public Types inherited from GloballyPositioned< float >
typedef Point3DBase< float,
GlobalTag
GlobalPoint
 
typedef Vector3DBase< float,
GlobalTag
GlobalVector
 
typedef Point3DBase< float,
LocalTag
LocalPoint
 
typedef Vector3DBase< float,
LocalTag
LocalVector
 
typedef Point3DBase< float,
GlobalTag
PositionType
 
typedef TkRotation< float > RotationType
 
typedef float Scalar
 

Public Member Functions

virtual VolumeCrossReturnType crossToNextVolume (const TrajectoryStateOnSurface &currentState, const Propagator &prop) const =0
 
virtual bool isIron () const =0
 
 NavVolume (const PositionType &pos, const RotationType &rot, DDSolidShape shape, const MagneticFieldProvider< float > *mfp)
 
virtual Container nextSurface (const LocalPoint &pos, const LocalVector &mom, double charge, PropagationDirection propDir=alongMomentum) const =0
 
virtual Container nextSurface (const LocalPoint &pos, const LocalVector &mom, double charge, PropagationDirection propDir, ConstReferenceCountingPointer< Surface > NotThisSurfaceP) const =0
 Same, giving lowest priority to the surface we are on now (=NotThisSurface) More...
 
virtual ~NavVolume ()
 
- Public Member Functions inherited from MagVolume
virtual const std::vector
< VolumeSide > & 
faces () const =0
 Access to volume faces. More...
 
LocalVector fieldInTesla (const LocalPoint &lp) const
 
GlobalVector fieldInTesla (const GlobalPoint &lp) const
 
virtual bool inside (const GlobalPoint &gp, double tolerance=0.) const =0
 
virtual bool inside (const LocalPoint &lp, double tolerance=0.) const
 
virtual ::GlobalVector inTesla (const ::GlobalPoint &gp) const
 
bool isIron () const
 Temporary hack to pass information on material. Will eventually be replaced! More...
 
 MagVolume (const PositionType &pos, const RotationType &rot, DDSolidShape shape, const MagneticFieldProvider< float > *mfp, double sf=1.)
 
void ownsFieldProvider (bool o)
 
const MagneticFieldProvider
< float > * 
provider () const
 
void setIsIron (bool iron)
 
DDSolidShape shapeType () const
 
virtual ~MagVolume ()
 
- Public Member Functions inherited from GloballyPositioned< float >
float eta () const
 
 GloballyPositioned (const PositionType &pos, const RotationType &rot)
 
void move (const GlobalVector &displacement)
 
float phi () const
 
const PositionTypeposition () const
 
void rotate (const RotationType &rotation)
 
const RotationTyperotation () const
 
GlobalPoint toGlobal (const LocalPoint &lp) const
 
Point3DBase< U, GlobalTagtoGlobal (const Point3DBase< U, LocalTag > &lp) const
 
GlobalVector toGlobal (const LocalVector &lv) const
 
Vector3DBase< U, GlobalTagtoGlobal (const Vector3DBase< U, LocalTag > &lv) const
 
LocalPoint toLocal (const GlobalPoint &gp) const
 
Point3DBase< U, LocalTagtoLocal (const Point3DBase< U, GlobalTag > &gp) const
 
LocalVector toLocal (const GlobalVector &gv) const
 
Vector3DBase< U, LocalTagtoLocal (const Vector3DBase< U, GlobalTag > &gv) const
 
virtual ~GloballyPositioned ()
 
- Public Member Functions inherited from MagneticField
virtual MagneticFieldclone () const
 
GlobalVector inInverseGeV (const GlobalPoint &gp) const
 Field value ad specified global point, in 1/Gev. More...
 
GlobalVector inKGauss (const GlobalPoint &gp) const
 Field value ad specified global point, in KGauss. More...
 
virtual GlobalVector inTesla (const GlobalPoint &gp) const =0
 Field value ad specified global point, in Tesla. More...
 
virtual GlobalVector inTeslaUnchecked (const GlobalPoint &gp) const
 
virtual bool isDefined (const GlobalPoint &gp) const
 True if the point is within the region where the concrete field. More...
 
 MagneticField ()
 
int nominalValue () const
 The nominal field value for this map in kGauss. More...
 
virtual ~MagneticField ()
 

Additional Inherited Members

- Static Public Member Functions inherited from GloballyPositioned< float >
static float iniEta ()
 
static float iniPhi ()
 

Detailed Description

Definition at line 17 of file NavVolume.h.

Member Typedef Documentation

typedef std::vector<SurfaceAndBounds> NavVolume::Container

Definition at line 24 of file NavVolume.h.

Constructor & Destructor Documentation

NavVolume::NavVolume ( const PositionType pos,
const RotationType rot,
DDSolidShape  shape,
const MagneticFieldProvider< float > *  mfp 
)
inline

Definition at line 20 of file NavVolume.h.

21  :
22  MagVolume(pos,rot,shape,mfp) {}
MagVolume(const PositionType &pos, const RotationType &rot, DDSolidShape shape, const MagneticFieldProvider< float > *mfp, double sf=1.)
Definition: MagVolume.h:23
virtual NavVolume::~NavVolume ( )
inlinevirtual

Definition at line 28 of file NavVolume.h.

28 {}

Member Function Documentation

virtual VolumeCrossReturnType NavVolume::crossToNextVolume ( const TrajectoryStateOnSurface currentState,
const Propagator prop 
) const
pure virtual

Implemented in NavVolume6Faces.

Referenced by NavPropagator::propagateWithPath().

virtual bool NavVolume::isIron ( ) const
pure virtual
virtual Container NavVolume::nextSurface ( const LocalPoint pos,
const LocalVector mom,
double  charge,
PropagationDirection  propDir = alongMomentum 
) const
pure virtual

Implemented in NavVolume6Faces.

virtual Container NavVolume::nextSurface ( const LocalPoint pos,
const LocalVector mom,
double  charge,
PropagationDirection  propDir,
ConstReferenceCountingPointer< Surface NotThisSurfaceP 
) const
pure virtual

Same, giving lowest priority to the surface we are on now (=NotThisSurface)

Implemented in NavVolume6Faces.