Mantid
Loading...
Searching...
No Matches
ImplicitFunctionParserFactory.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2007 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
21#include "MantidAPI/DllConfig.h"
24
25namespace Mantid {
26namespace API {
27class MANTID_API_DLL ImplicitFunctionParserFactoryImpl : public Kernel::DynamicFactory<ImplicitFunctionParser> {
28public:
31 std::shared_ptr<ImplicitFunctionParser> create(const std::string &xmlString) const override;
32 ImplicitFunctionParser *createImplicitFunctionParserFromXML(const std::string &functionXML) const;
33
34 ImplicitFunctionParser *createImplicitFunctionParserFromXML(Poco::XML::Element *functionElement) const;
35
36private:
38
43};
44
46} // namespace API
47} // namespace Mantid
48
49namespace Mantid {
50namespace Kernel {
51EXTERN_MANTID_API template class MANTID_API_DLL
53}
54} // namespace Mantid
ImplicitFunctionParserFactoryImpl()=default
Private Constructor for singleton class.
~ImplicitFunctionParserFactoryImpl() override=default
Private Destructor.
ImplicitFunctionParserFactoryImpl(const ImplicitFunctionParserFactoryImpl &)=delete
ImplicitFunctionParserFactoryImpl & operator=(const ImplicitFunctionParserFactoryImpl &)=delete
XML Parser for function types.
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...