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 ()
 
 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 &) const
 True if the point is within the region where the concrete field. More...
 
 MagneticField ()
 
 MagneticField (const MagneticField &orig)
 
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 20 of file NavVolume.h.

Member Typedef Documentation

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

Definition at line 27 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 23 of file NavVolume.h.

24  :
25  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 31 of file NavVolume.h.

31 {}

Member Function Documentation

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

Implemented in NavVolume6Faces.

virtual bool NavVolume::isIron ( ) const
pure virtual

Implemented in NavVolume6Faces.

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.