Mantid
Loading...
Searching...
No Matches
TransformScaleFactory.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2012 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
9#include "MantidAPI/DllConfig.h"
12
13namespace Mantid {
14//
15// Forward declarations
16//
17namespace Kernel {
18class IPropertyManager;
19}
20namespace API {
21//
22// Forward declarations
23//
24class ITransformScale;
25
30class MANTID_API_DLL TransformScaleFactoryImpl : public Kernel::DynamicFactory<ITransformScale> {
31public:
33 std::shared_ptr<ITransformScale> create(const std::string &type) const override;
36
37private:
39
42 ~TransformScaleFactoryImpl() override = default;
45 ITransformScale *createUnwrapped(const std::string &className) const override;
46
47 // Do not use default methods
48};
49
51
52} // namespace API
53} // namespace Mantid
54
55namespace Mantid {
56namespace Kernel {
57EXTERN_MANTID_API template class MANTID_API_DLL Mantid::Kernel::SingletonHolder<Mantid::API::TransformScaleFactoryImpl>;
58}
59} // namespace Mantid
Constructs a scaling transform object from a string.
~TransformScaleFactoryImpl() override=default
TransformScaleFactoryImpl(const TransformScaleFactoryImpl &)=delete
TransformScaleFactoryImpl()=default
Private Constructor for singleton class.
The dynamic factory is a base dynamic factory for serving up objects in response to requests from oth...
Manage the lifetime of a class intended to be a singleton.
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.
Policy class controlling creation of the singleton Implementation classes should mark their default c...