Mantid
|
Interface class for detector objects. More...
#include <IDetector.h>
Public Member Functions | |
virtual IDetector * | cloneParameterized (const ParameterMap *map) const =0 |
Create a cloned instance with a parameter map applied. More... | |
double | getDistance (const IComponent &comp) const override=0 |
Get the distance of this detector object from another Component. More... | |
virtual detid_t | getID () const =0 |
Get the detector ID. More... | |
virtual double | getPhi () const =0 |
Gives the phi of this detector object in radians. More... | |
virtual double | getPhiOffset (const double &offset) const =0 |
Gives the phi of this detector offset from y=0 by offset. More... | |
virtual double | getSignedTwoTheta (const Kernel::V3D &observer, const Kernel::V3D &axis, const Kernel::V3D &instrumentUp) const =0 |
Gives the signed angle of this detector object with respect to an axis. More... | |
virtual det_topology | getTopology (Kernel::V3D ¢er) const =0 |
returns the geometry of detectors, meaningful for groups, rectangular for single; returns the centre of a detector More... | |
virtual double | getTwoTheta (const Kernel::V3D &observer, const Kernel::V3D &axis) const =0 |
Gives the angle of this detector object with respect to an axis. More... | |
IDetector () | |
(Empty) Constructor. More... | |
virtual size_t | index () const =0 |
Helper for legacy access mode. Returns the index of the detector. More... | |
virtual std::size_t | nDets () const =0 |
Get the number of physical detectors this object represents. More... | |
virtual const ParameterMap & | parameterMap () const =0 |
Helper for legacy access mode. Returns a reference to the ParameterMap. More... | |
Public Member Functions inherited from Mantid::Geometry::IObjComponent | |
IComponent * | clone () const override=0 |
Virtual Copy Constructor. More... | |
virtual void | draw () const =0 |
Draws the objcomponent. More... | |
virtual void | drawObject () const =0 |
Draws the Object. More... | |
virtual int | getPointInObject (Kernel::V3D &point) const =0 |
Try to find a point that lies within (or on) the object. More... | |
GeometryHandler * | Handle () const |
Gets the GeometryHandler. More... | |
virtual void | initDraw () const =0 |
Initializes the ObjComponent for rendering, this function should be called before rendering. More... | |
virtual int | interceptSurface (Track &track) const =0 |
Checks whether the track given will pass through this Component. More... | |
IObjComponent () | |
IObjComponent (const IObjComponent &) | |
Copy constructor. More... | |
IObjComponent (GeometryHandler *the_handler) | |
Constructor, specifying the GeometryHandler (renderer engine) for this IObjComponent. More... | |
virtual bool | isOnSide (const Kernel::V3D &point) const =0 |
Does the point given lie on the surface of this object component? More... | |
virtual bool | isValid (const Kernel::V3D &point) const =0 |
Does the point given lie within this object component? More... | |
virtual const Kernel::Material | material () const =0 |
Returns the material of the Object. More... | |
IObjComponent & | operator= (const IObjComponent &rhs) |
Assignment operator. More... | |
virtual const std::shared_ptr< const IObject > | shape () const =0 |
Returns the shape of the Object. More... | |
virtual double | solidAngle (const Kernel::V3D &observer) const =0 |
Finds the approximate solid angle covered by the component when viewed from the point given. More... | |
std::string | type () const override |
type string More... | |
~IObjComponent () override | |
Public Member Functions inherited from Mantid::Geometry::IComponent | |
virtual IComponent * | clone () const =0 |
Return a clone to the current object. More... | |
virtual std::vector< std::shared_ptr< const IComponent > > | getAncestors () const =0 |
Return an array of all ancestors, the nearest first. More... | |
virtual const IComponent * | getBareParent () const =0 |
Returns the bare pointer to the IComponent parent. More... | |
virtual IComponent const * | getBaseComponent () const =0 |
Returns const pointer to base component if this component is parametrized. More... | |
virtual void | getBoundingBox (BoundingBox &boundingBox) const =0 |
Get the bounding box for this component and store it in the given argument. More... | |
virtual ComponentID | getComponentID () const =0 |
Returns the ComponentID - a unique identifier of the component. More... | |
virtual double | getDistance (const IComponent &) const =0 |
Get the distance to another IComponent. More... | |
virtual std::string | getFullName () const =0 |
Get the IComponent full path name. More... | |
virtual std::string | getName () const =0 |
Get the IComponent name. More... | |
virtual std::shared_ptr< const IComponent > | getParent () const =0 |
Return a pointer to the current parent. More... | |
virtual Kernel::V3D | getPos () const =0 |
Get the position of the IComponent. Tree structure is traverse through the. More... | |
virtual Kernel::V3D | getRelativePos () const =0 |
Get the position relative to the parent IComponent (absolute if no parent) More... | |
virtual Kernel::Quat | getRelativeRot () const =0 |
Get the relative Orientation. More... | |
virtual Kernel::Quat | getRotation () const =0 |
Get the absolute orientation of the IComponent. More... | |
virtual Kernel::V3D | getScaleFactor () const |
Gets the scaling factor of the object for the Object Component. More... | |
virtual void | rotate (const Kernel::Quat &)=0 |
Rotate the IComponent. This is relative to parent. More... | |
virtual void | rotate (double, const Kernel::V3D &)=0 |
Rotate the IComponent by an angle in degrees with respect to an axis. More... | |
virtual void | setName (const std::string &)=0 |
Set the IComponent name. More... | |
virtual void | setParent (IComponent *)=0 |
Assign a parent IComponent. Previous parent link is lost. More... | |
virtual void | setPos (const Kernel::V3D &)=0 |
Set the position of the component The position is with respect to the parent component. More... | |
virtual void | setPos (double, double, double)=0 |
Set the IComponent position, x, y, z respective to parent (if present) More... | |
virtual void | setRot (const Kernel::Quat &)=0 |
Set the orientation Kernel::Quaternion relative to parent (if present) More... | |
virtual void | translate (const Kernel::V3D &)=0 |
Copy the Rotation from another IComponent. More... | |
virtual void | translate (double, double, double)=0 |
Translate the IComponent (x,y,z form). This is relative to parent if. More... | |
virtual std::string | type () const |
Returns a string representation of the IComponent type. More... | |
virtual | ~IComponent ()=default |
Destructor. More... | |
virtual std::set< std::string > | getParameterNames (bool recursive=true) const =0 |
Return the names of the parameters for this component. More... | |
virtual std::map< std::string, ComponentID > | getParameterNamesByComponent () const =0 |
return the parameter names and the component they are from More... | |
virtual bool | hasParameter (const std::string &name, bool recursive=true) const =0 |
Returns a boolean indicating if the component has the named parameter. More... | |
virtual std::string | getParameterType (const std::string &pname, bool recursive=true) const =0 |
virtual std::vector< double > | getNumberParameter (const std::string &pname, bool recursive=true) const =0 |
Get a parameter defined as a double. More... | |
virtual std::vector< Kernel::V3D > | getPositionParameter (const std::string &pname, bool recursive=true) const =0 |
Get a parameter defined as a Kernel::V3D. More... | |
virtual std::vector< Kernel::Quat > | getRotationParameter (const std::string &pname, bool recursive=true) const =0 |
Get a parameter defined as a Kernel::Quaternion. More... | |
virtual std::vector< std::string > | getStringParameter (const std::string &pname, bool recursive=true) const =0 |
Get a parameter defined as a string. More... | |
virtual std::vector< int > | getIntParameter (const std::string &pname, bool recursive=true) const =0 |
Get a parameter defined as an integer. More... | |
virtual std::vector< bool > | getBoolParameter (const std::string &pname, bool recursive=true) const =0 |
Get a parameter defined as a boolean. More... | |
virtual std::string | getParameterAsString (const std::string &pname, bool recursive=true) const =0 |
get a string representation of a parameter More... | |
virtual bool | getParameterVisible (const std::string &pname, bool recursive=true) const =0 |
get visibility attribute of a parameter More... | |
virtual void | printSelf (std::ostream &) const =0 |
Prints a text representation of itself. More... | |
virtual bool | isParametrized () const =0 |
Returns true if the Component is parametrized (has a parameter map) More... | |
virtual size_t | registerContents (class ComponentVisitor &component) const =0 |
Additional Inherited Members | |
Protected Member Functions inherited from Mantid::Geometry::IObjComponent | |
void | setGeometryHandler (GeometryHandler *h) |
Reset the current geometry handler. More... | |
|
inline |
(Empty) Constructor.
prevent Warning C4436 and many failing unit tests on MSVC 2015.
Definition at line 96 of file IDetector.h.
|
pure virtual |
Create a cloned instance with a parameter map applied.
Implemented in Mantid::Geometry::DetectorGroup, Mantid::Geometry::Detector, and Mantid::Geometry::GridDetectorPixel.
Referenced by Mantid::Geometry::ParComponentFactory::createDetector().
|
overridepure virtual |
Get the distance of this detector object from another Component.
comp | :: The component to give the distance to |
Implements Mantid::Geometry::IComponent.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
Referenced by Mantid::Algorithms::VesuvioL1ThetaResolution::calculateDetector().
|
pure virtual |
Get the detector ID.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
Referenced by Mantid::Geometry::ParameterMap::asString(), Mantid::DataHandling::FindDetectorsPar::calcDetPar(), Mantid::Algorithms::TimeAtSampleStrategyIndirect::calculate(), Mantid::DataHandling::SaveParameterFile::exec(), export_IDetector(), Mantid::Algorithms::He3TubeEfficiency::getDetectorGeometry(), Mantid::Algorithms::ConvertSpectrumAxis::getEfixed(), Mantid::API::WorkspaceNearestNeighbourInfo::getNeighbours(), Mantid::Geometry::Instrument::markAsDetector(), Mantid::Geometry::Instrument::markAsDetectorIncomplete(), Mantid::Geometry::Instrument::markAsMonitor(), Mantid::Geometry::InstrumentVisitor::registerDetector(), Mantid::Geometry::Instrument::removeDetector(), and Mantid::Crystal::FindSXPeaksHelper::SXPeak::SXPeak().
|
pure virtual |
Gives the phi of this detector object in radians.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
Referenced by Mantid::Algorithms::AbsorptionCorrection::calculateDistances(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::calculateDistances(), Mantid::Algorithms::MultipleScatteringCorrection::calculateL2Ds(), Mantid::Crystal::FindSXPeaksHelper::PeakFindingStrategy::calculatePhi(), Mantid::Algorithms::AddPeak::exec(), and export_IDetector().
|
pure virtual |
Gives the phi of this detector offset from y=0 by offset.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
|
pure virtual |
Gives the signed angle of this detector object with respect to an axis.
observer | :: The point to calculate the angle relative to (typically the sample position) |
axis | :: The axis to which the required angle is relative |
instrumentUp | :: Direction corresponding to the instrument up direction. Used to determine signs. |
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
Referenced by Mantid::API::MatrixWorkspace::detectorSignedTwoTheta().
|
pure virtual |
returns the geometry of detectors, meaningful for groups, rectangular for single; returns the centre of a detector
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
|
pure virtual |
Gives the angle of this detector object with respect to an axis.
observer | :: The point to calculate the angle relative to (typically the sample position) |
axis | :: The axis to which the required angle is relative |
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
Referenced by Mantid::Algorithms::AbsorptionCorrection::calculateDistances(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::calculateDistances(), Mantid::MDAlgorithms::IntegrateEllipsoidsTwoStep::calculateE1(), Mantid::MDAlgorithms::IntegrateEllipsoidsV1::calculateE1(), Mantid::MDAlgorithms::IntegrateEllipsoidsV2::calculateE1(), Mantid::MDAlgorithms::IntegratePeaksMD2::calculateE1(), Mantid::Algorithms::MultipleScatteringCorrection::calculateL2Ds(), Mantid::API::MatrixWorkspace::detectorTwoTheta(), and export_IDetector().
|
pure virtual |
Helper for legacy access mode. Returns the index of the detector.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
|
pure virtual |
Get the number of physical detectors this object represents.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.
Referenced by Mantid::DataHandling::FindDetectorsPar::calcDetPar(), Mantid::Algorithms::AbsorptionCorrection::calculateDistances(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::calculateDistances(), and Mantid::Algorithms::MultipleScatteringCorrection::calculateL2Ds().
|
pure virtual |
Helper for legacy access mode. Returns a reference to the ParameterMap.
Implemented in Mantid::Geometry::Detector, and Mantid::Geometry::DetectorGroup.