#include <DetDesc/IGeometryInfo.h>
Inheritance diagram for IGeometryInfo:
Public Types | |
typedef std::vector< IGeometryInfo * > | IGIChildrens |
type of vector of daughter elements | |
typedef IGeometryInfo::IGIChildrens::iterator | IGIChildrenIterator |
typedef IGeometryInfo::IGIChildrens::const_iterator | IGIChildrenConstIterator |
SUCCESS | |
NO_INTERFACE | |
VERSMISMATCH | |
LAST_ERROR | |
enum | Status |
Public Member Functions | |
virtual StatusCode | cache ()=0 |
virtual StatusCode | updateChildren ()=0 |
virtual bool | hasLVolume () const =0 |
Is the GeometryInfo object associated with Logical Volume? This is to distinguish the Ghost case from the others. | |
virtual bool | hasSupport () const =0 |
Has the GeometryInfo object support in Geometry tree? distinguish "regular" from others. | |
virtual const AlignmentCondition * | alignmentCondition () const =0 |
Access to this IGeometryInfo condition. | |
virtual const Gaudi::Transform3D & | toLocalMatrix () const =0 |
Full transformation matrix from Global Reference System to the local reference system of this Geometry Info object, including misalignments. | |
virtual const Gaudi::Transform3D & | toLocalMatrixNominal () const =0 |
Ideal transformation matrix from Global Reference System to the local reference system of this Geometry Info object, excluding misalignments. | |
virtual const Gaudi::Transform3D & | toGlobalMatrixNominal () const =0 |
Ideal transformation matrix from local Reference System to the global reference system of this Geometry Info object, excluding misalignments. | |
virtual const Gaudi::Transform3D & | ownToLocalMatrixNominal () const =0 |
Ideal transformation matrix from parent Reference System to the local reference system of this Geometry Info object, excluding misalignment. | |
virtual const Gaudi::Transform3D & | ownToNominalMatrix () const =0 |
Transformation that takes this IGeometryInfoPlus from an off-nominal position within a its parent to the nominal one. | |
virtual Gaudi::Transform3D | ownToOffNominalMatrix () const =0 |
Transformation that takes this IGeometryInfoPlus from a nominal position within a its parent to the off-nominal one. | |
virtual Gaudi::Transform3D | ownMatrix () const =0 |
Transformation from this reference frame to the reference frame of the parent. | |
virtual StatusCode | ownToOffNominalMatrix (const Gaudi::Transform3D &)=0 |
Upate the nominal-> off-nominal 3D transformation of this IGeometryInfo. | |
virtual StatusCode | ownToOffNominalParams (const std::vector< double > &trans, const std::vector< double > &rot, const std::vector< double > &pivot=std::vector< double >(3))=0 |
Update the transformation parametrs describing the nominal->off-nominal 3D transformation of this GeometryInfo. | |
virtual const Gaudi::Transform3D & | toGlobalMatrix () const =0 |
transformation matrix from Local Reference System to the Global Reference System of this IGeometryInfo. | |
virtual Gaudi::XYZPoint | toLocal (const Gaudi::XYZPoint &globalPoint) const =0 |
Perform transformation of point from the Global Reference System to Local Reference System of Geometry Info object. | |
virtual Gaudi::XYZPoint | toGlobal (const Gaudi::XYZPoint &localPoint) const =0 |
perform transformation of point from the LocalReference System to Global Reference System | |
virtual Gaudi::XYZVector | toLocal (const Gaudi::XYZVector &globalDirection) const =0 |
Perform transformation a vector from the Global Reference System to Local Reference System of Geometry Info object. | |
virtual Gaudi::XYZVector | toGlobal (const Gaudi::XYZVector &localDirection) const =0 |
Perform transformation of a vector from the Local Reference System to the Global Reference System. | |
virtual bool | isInside (const Gaudi::XYZPoint &globalPoint) const =0 |
Check for given 3D-point - "Is inside the volume?"
| |
virtual std::string | belongsToPath (const Gaudi::XYZPoint &globalPoint)=0 |
To which daughter the given global point belongs to? "Find daughter by point" family If we are clever enough to define *isInside(. | |
virtual IGeometryInfo * | belongsTo (const Gaudi::XYZPoint &globalPoint)=0 |
To which daughter the given global point belongs to? "Find daughter by point" family If we are clever enough to define *isInside(. | |
virtual std::string | belongsToPath (const Gaudi::XYZPoint &globalPoint, const int level)=0 |
To which daughter the given global point belongs to? "Find daughter by point" family If we are clever enough to define *isInside(. | |
virtual IGeometryInfo * | belongsTo (const Gaudi::XYZPoint &globalPoint, const int level)=0 |
To which daughter the given global point belongs to? "Find daughter by point" family If we are clever enough to define *isInside(. | |
virtual StatusCode | fullGeoInfoForPoint (const Gaudi::XYZPoint &point, const int level, IGeometryInfo *&start, ILVolume::PVolumePath &volumePath)=0 |
find full geometry information for given point | |
virtual StatusCode | fullGeoInfoForPoint (const Gaudi::XYZPoint &point, const int level, IGeometryInfo *&start, ILVolume::ReplicaPath &replicaPath)=0 |
find full geometry information for given point | |
virtual StatusCode | fullGeoInfoForPoint (const Gaudi::XYZPoint &point, const int level, std::string &start, ILVolume::PVolumePath &volumePath)=0 |
find full geometry information for given point | |
virtual StatusCode | fullGeoInfoForPoint (const Gaudi::XYZPoint &point, const int level, std::string &start, ILVolume::ReplicaPath &replicaPath)=0 |
find full geometry information for given point | |
virtual const std::string & | lvolumeName () const =0 |
the name of associated Logical Volume | |
virtual const ILVolume * | lvolume () const =0 |
associated Logical Volume | |
virtual StatusCode | location (IGeometryInfo *&start, ILVolume::ReplicaPath &replicaPath) const =0 |
the information about the support | |
virtual StatusCode | location (std::string &start, ILVolume::ReplicaPath &replicaPath) const =0 |
the information about the support | |
virtual std::string | lvolumePath (const std::string &start, const ILVolume::ReplicaPath &replicaPath)=0 |
the name of Logical Volume, addressed by start and Replica Path | |
virtual const ILVolume * | lvolume (const std::string &start, const ILVolume::ReplicaPath &replicaPath)=0 |
the Logical Volume, addressed by start and Replica Path | |
virtual std::string | lvolumePath (IGeometryInfo *start, const ILVolume::ReplicaPath &replicaPath)=0 |
the name of Logical Volume, addressed by start and Replica Path | |
virtual const ILVolume * | lvolume (IGeometryInfo *start, const ILVolume::ReplicaPath &replicaPath)=0 |
the Logical Volume, addressed by start and Replica Path | |
virtual const ILVolume::ReplicaPath & | supportPath () const =0 |
retrive reference to replica path (mistrerious "rpath" or "npath") | |
virtual IGeometryInfo * | parentIGeometryInfo ()=0 |
pointer to the parent IGeometryInfo | |
virtual const IGeometryInfo * | parentIGeometryInfo () const =0 |
pointer to the parent IGeometryInfo (const version) | |
virtual IGeometryInfo * | supportIGeometryInfo () const =0 |
virtual IGeometryInfo::IGIChildrens & | childIGeometryInfos ()=0 |
(reference to) container of children IGeometryInfo return reference to container of children IGeometryInfo | |
virtual const IGeometryInfo::IGIChildrens & | childIGeometryInfos () const =0 |
(reference to) container of children IGeometryInfo (const version) return reference to container of children IGeometryInfo | |
virtual IGeometryInfo::IGIChildrens::iterator | childBegin ()=0 |
"begin" iterator for manipulation of daughter elements return "begin" iterator | |
virtual IGeometryInfo::IGIChildrens::const_iterator | childBegin () const =0 |
"begin" iterator for manipulation of daughter elements (const version) return "begin" iterator | |
virtual IGeometryInfo::IGIChildrens::iterator | childEnd ()=0 |
"end" iterator for manipulation of daughter elements return "end" iterator | |
virtual IGeometryInfo::IGIChildrens::const_iterator | childEnd () const =0 |
"end" iterator for manipulation of daughter elements (const version) return "end" iterator | |
virtual std::ostream & | printOut (std::ostream &os=std::cout) const =0 |
printOut to STD/STL stream | |
virtual MsgStream & | printOut (MsgStream &) const =0 |
printOut to Message stream return reference to Message stream | |
virtual IGeometryInfo * | reset ()=0 |
reset to the initial state, clear cache | |
virtual | ~IGeometryInfo () |
The virtual destructor. | |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvInterface)=0 |
virtual unsigned long | addRef ()=0 |
virtual unsigned long | release ()=0 |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
retrieve the uniqie interface identifier | |
Public Attributes | |
SUCCESS | |
NO_INTERFACE | |
VERSMISMATCH | |
LAST_ERROR |
Juan Palacios juancho@nikhef.nl
Definition at line 34 of file IGeometryInfo.h.
typedef std::vector<IGeometryInfo*> IGeometryInfo::IGIChildrens |
typedef IGeometryInfo::IGIChildrens::iterator IGeometryInfo::IGIChildrenIterator |
Definition at line 40 of file IGeometryInfo.h.
typedef IGeometryInfo::IGIChildrens::const_iterator IGeometryInfo::IGIChildrenConstIterator |
Definition at line 41 of file IGeometryInfo.h.
virtual IGeometryInfo::~IGeometryInfo | ( | ) | [virtual] |
The virtual destructor.
static const InterfaceID& IGeometryInfo::interfaceID | ( | ) | [inline, static] |
retrieve the uniqie interface identifier
Reimplemented from IInterface.
Definition at line 45 of file IGeometryInfo.h.
00045 { return IID_IGeometryInfo; }
virtual StatusCode IGeometryInfo::cache | ( | ) | [pure virtual] |
Implemented in GeometryInfoPlus.
virtual StatusCode IGeometryInfo::updateChildren | ( | ) | [pure virtual] |
Implemented in GeometryInfoPlus.
virtual bool IGeometryInfo::hasLVolume | ( | ) | const [pure virtual] |
Is the GeometryInfo object associated with Logical Volume? This is to distinguish the Ghost case from the others.
A Detector Element ( or any arbitrary "Geometry Object") can be associated with Logical Volume in a Geometry Tree almost all behaviour of all other functions depends on the fact of this association.
There can be 3 types of such "association":
Implemented in GeometryInfoPlus.
virtual bool IGeometryInfo::hasSupport | ( | ) | const [pure virtual] |
Has the GeometryInfo object support in Geometry tree? distinguish "regular" from others.
Implemented in GeometryInfoPlus.
virtual const AlignmentCondition* IGeometryInfo::alignmentCondition | ( | ) | const [pure virtual] |
virtual const std::string& IGeometryInfo::lvolumeName | ( | ) | const [pure virtual] |
the name of associated Logical Volume
Implemented in GeometryInfoPlus.
virtual const ILVolume* IGeometryInfo::lvolume | ( | ) | const [pure virtual] |
associated Logical Volume
Implemented in GeometryInfoPlus.
virtual StatusCode IGeometryInfo::location | ( | IGeometryInfo *& | start, | |
ILVolume::ReplicaPath & | replicaPath | |||
) | const [pure virtual] |
the information about the support
start | "start" geometry info | |
replicaPath | replica path |
Implemented in GeometryInfoPlus.
virtual StatusCode IGeometryInfo::location | ( | std::string & | start, | |
ILVolume::ReplicaPath & | replicaPath | |||
) | const [pure virtual] |
the information about the support
start | "start" geometry info | |
replicaPath | replica path |
Implemented in GeometryInfoPlus.
virtual IGeometryInfo* IGeometryInfo::reset | ( | ) | [pure virtual] |