9#include <boost/python/class.hpp>
10#include <boost/python/register_ptr_to_python.hpp>
19 register_ptr_to_python<std::shared_ptr<IDetector>>();
20 register_ptr_to_python<std::shared_ptr<const IDetector>>();
22 class_<IDetector, bases<IObjComponent>, boost::noncopyable>(
"IDetector", no_init)
25 "Return the solid angle in steradians between this "
26 "detector and an observer")
28 "Calculate the angle between this detector, another component and "
30 .def(
"getPhi", &
IDetector::getPhi, arg(
"self"),
"Returns the azimuthal angle of this detector");
#define GET_POINTER_SPECIALIZATION(TYPE)
Interface class for detector objects.
virtual double getPhi() const =0
Gives the phi of this detector object in radians.
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.
virtual detid_t getID() const =0
Get the detector ID.
Object Component class, this class brings together the physical attributes of the component to the po...
virtual double solidAngle(const Kernel::V3D &observer) const =0
Finds the approximate solid angle covered by the component when viewed from the point given.