Mantid
Loading...
Searching...
No Matches
PeakShapeSphericalFactory.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2015 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
10
11namespace Mantid {
12namespace Geometry {
13// Forward declare
14class PeakShape;
15} // namespace Geometry
16namespace DataObjects {
17
22class MANTID_DATAOBJECTS_DLL PeakShapeSphericalFactory : public PeakShapeFactory {
23public:
25 Mantid::Geometry::PeakShape *create(const std::string &source) const override;
27 void setSuccessor(PeakShapeFactory_const_sptr successorFactory) override;
28
29private:
32};
33
34} // namespace DataObjects
35} // namespace Mantid
PeakShapeFactory : Factory for creating peak shapes.
PeakShapeSphericalFactory : Factory for spherical peak shapes for de-serializing from JSON.
PeakShapeFactory_const_sptr m_successor
Successor factory.
PeakShape : Abstract type to describes the shape of a peak.
Definition: PeakShape.h:20
std::shared_ptr< const PeakShapeFactory > PeakShapeFactory_const_sptr
Helper typedef.
std::unique_ptr< T > create(const P &parent, const IndexArg &indexArg, const HistArg &histArg)
This is the create() method that all the other create() methods call.
Helper class which provides the Collimation Length for SANS instruments.