9#include "MantidGeometry/DllConfig.h"
11#include <boost/optional.hpp>
25 virtual std::string
toJSON()
const = 0;
35 enum RadiusType { Radius = 0, OuterRadius = 1, InnerRadius = 2 };
PeakShape : Abstract type to describes the shape of a peak.
virtual ~PeakShape()=default
Destructor.
virtual PeakShape * clone() const =0
Deep copy this.
virtual Mantid::Kernel::SpecialCoordinateSystem frame() const =0
Coordinte frame used upon creation.
RadiusType
For selecting different radius types.
virtual std::string toJSON() const =0
Serialize.
virtual int algorithmVersion() const =0
Algorithm Version.
virtual boost::optional< double > radius(RadiusType type) const =0
Radius.
virtual std::string shapeName() const =0
Shape name.
virtual std::string algorithmName() const =0
Algorithm.
std::shared_ptr< const PeakShape > PeakShape_const_sptr
std::shared_ptr< PeakShape > PeakShape_sptr
SpecialCoordinateSystem
Special coordinate systems for Q3D.
Helper class which provides the Collimation Length for SANS instruments.