21 register_ptr_to_python<std::shared_ptr<IObject>>();
24 using return_cloned_numpy = return_value_policy<Policies::MatrixRefToNumpy<Converters::Clone>>;
26 class_<IObject, boost::noncopyable>(
"IObject", no_init)
28 "Return the goniometer rotation baked into this shape.\n\n"
29 "This reports which frame the shape is in, not every rotation it has ever had. "
30 "Definition-frame rotations - the file-load orientation of :ref:`algm-LoadSampleShape`, "
31 "the sample environment spec, 'rotate-all' and per-primitive 'rotate' tags, and "
32 ":ref:`algm-RotateSampleShape` - re-express the shape within its own frame and are "
33 "excluded. The identity therefore means the shape is expressed in its own frame, however "
34 "much its definition has been rotated within that frame.");