Mantid
Loading...
Searching...
No Matches
PropertyManagerProperty.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2016 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
11
12namespace Mantid {
13namespace Kernel {
14
15class MANTID_KERNEL_DLL PropertyManagerProperty final : public PropertyWithValue<PropertyManager_sptr> {
16public:
17 // Convenience typedefs
20
21 PropertyManagerProperty(const std::string &name, unsigned int direction = Direction::Input);
22 PropertyManagerProperty(const std::string &name, const ValueType &defaultValue,
23 unsigned int direction = Direction::Input);
24
27 using BaseClass::operator=;
28
29 PropertyManagerProperty *clone() const override { return new PropertyManagerProperty(*this); }
30
31 std::string value() const override;
32 Json::Value valueAsJson() const override;
33 std::string getDefault() const override;
34 std::string setValue(const std::string &strValue) override;
35 std::string setValueFromJson(const Json::Value &value) override;
36
37private:
38 std::string m_dataServiceKey;
39 std::string m_defaultAsStr;
40};
41
42} // namespace Kernel
43} // namespace Mantid
double value
The value of the point.
Definition: FitMW.cpp:51
PropertyManagerProperty * clone() const override
'Virtual copy constructor'
PropertyManagerProperty & operator=(const PropertyManagerProperty &)=default
PropertyManagerProperty(const PropertyManagerProperty &)=default
The concrete, templated class for properties.
std::shared_ptr< PropertyManager > PropertyManager_sptr
Typedef for a shared pointer to a PropertyManager.
Helper class which provides the Collimation Length for SANS instruments.