40 void declareProperty(std::unique_ptr<Property> p,
const std::string &doc =
"")
override;
43 void declareOrReplaceProperty(std::unique_ptr<Property> p,
const std::string &doc =
"")
override;
44 void resetProperties()
override;
45 using IPropertyManager::declareProperty;
48 void setProperties(
const std::string &propertiesJson,
49 const std::unordered_set<std::string> &ignoreProperties = std::unordered_set<std::string>(),
50 bool createMissing =
false)
override;
53 void setProperties(const ::Json::Value &jsonValue,
54 const std::unordered_set<std::string> &ignoreProperties = std::unordered_set<std::string>(),
55 bool createMissing =
false)
override;
58 void setPropertiesWithString(
59 const std::string &propertiesString,
60 const std::unordered_set<std::string> &ignoreProperties = std::unordered_set<std::string>())
override;
62 void setPropertyValue(
const std::string &name,
const std::string &
value)
override;
63 void setPropertyValueFromJson(
const std::string &name,
const Json::Value &
value)
override;
64 void setPropertyOrdinal(
const int &
index,
const std::string &
value)
override;
69 bool existsProperty(
const std::string &name)
const override;
70 bool validateProperties()
const override;
71 size_t propertyCount()
const override;
73 std::string getPropertyValue(
const std::string &name)
const override;
74 const std::vector<Property *> &getProperties()
const override;
75 std::vector<std::string> getDeclaredPropertyNames() const noexcept override;
78 TypedValue getProperty(const
std::
string &name) const override;
81 std::
string asString(
bool withDefaultValues = false) const override;
84 ::
Json::Value asJson(
bool withDefaultValues = false) const override;
86 bool isDefault(const
std::
string &name) const;
89 void removeProperty(const
std::
string &name, const
bool delproperty = true) override;
93 void clear() override;
97 void afterPropertySet(const
std::
string &) override;
99 void filterByTime(const Types::Core::DateAndTime & , const Types::Core::DateAndTime & )
override {
100 throw(std::runtime_error(
"Not yet implmented"));
103 std::vector<PropertyManager *> )
const override {
104 throw(std::runtime_error(
"Not yet implmented"));
109 throw(std::runtime_error(
"Not yet implmented"));
113 Property *getPointerToProperty(
const std::string &name)
const override;
114 Property *getPointerToPropertyOrdinal(
const int &
index)
const override;
double value
The value of the point.
std::map< DeltaEMode::Type, std::string > index
Interface to PropertyManager.
Kernel/PropertyManagerOwner.h.
void splitByTime(std::vector< SplittingInterval > &, std::vector< PropertyManager * >) const override
std::shared_ptr< PropertyManager > m_properties
Shared pointer to the 'real' property manager.
virtual void copyPropertiesFrom(const PropertyManagerOwner &po)
Make m_properties point to the same PropertyManager as po.
void filterByProperty(const TimeSeriesProperty< bool > &, const std::vector< std::string > &) override
Base class for properties.
A specialised Property class for holding a series of time-value pairs.
Helper class which provides the Collimation Length for SANS instruments.