Mantid
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
Mantid::Kernel::PropertyManagerProperty Class Referencefinal

#include <PropertyManagerProperty.h>

Inheritance diagram for Mantid::Kernel::PropertyManagerProperty:
Mantid::Kernel::PropertyWithValue< PropertyManager_sptr > Mantid::Kernel::Property

Public Types

using BaseClass = PropertyWithValue< PropertyManager_sptr >
 
using ValueType = PropertyManager_sptr
 

Public Member Functions

PropertyManagerPropertyclone () const override
 'Virtual copy constructor'
 
std::string getDefault () const override
 
PropertyManagerPropertyoperator= (const PropertyManagerProperty &)=default
 
 PropertyManagerProperty (const PropertyManagerProperty &)=default
 
 PropertyManagerProperty (const std::string &name, const ValueType &defaultValue, unsigned int direction=Direction::Input)
 Constructor taking an initial value.
 
 PropertyManagerProperty (const std::string &name, unsigned int direction=Direction::Input)
 Constructor with a default empty pointer.
 
std::string setValue (const std::string &strValue) override
 Overwrite the current value.
 
std::string setValueFromJson (const Json::Value &value) override
 Sets the value of the property from a Json object.
 
std::string value () const override
 
Json::Value valueAsJson () const override
 Create a Json::Value objectValue from the PropertyManager.
 
- Public Member Functions inherited from Mantid::Kernel::PropertyWithValue< PropertyManager_sptr >
std::vector< std::string > allowedValues () const override
 Returns the set of valid values for this property, if such a set exists.
 
PropertyWithValue< PropertyManager_sptr > * clone () const override
 'Virtual copy constructor'
 
std::string getDefault () const override
 Get the value the property was initialised with -its default value.
 
IValidator_sptr getValidator () const
 Returns the validator as a constant variable so it cannot be changed.
 
bool isDefault () const override
 Indicates if the property's value is the same as it was when it was set N.B.
 
bool isMultipleSelectionAllowed () override
 Returns the set of valid values for this property, if such a set exists.
 
std::string isValid () const override
 Check the value chosen for the property is OK, unless overidden it just calls the validator's isValid() N.B.
 
virtual operator const PropertyManager_sptr & () const
 Allows you to get the value of the property simply by typing its name.
 
bool operator!= (const PropertyWithValue< PropertyManager_sptr > &rhs) const
 Deep comparison (not equal).
 
virtual const PropertyManager_sptroperator() () const
 Allows you to get the value of the property via an expression like myProperty()
 
PropertyWithValueoperator+= (Property const *right) override
 Add the value of another property.
 
virtual PropertyWithValueoperator= (const PropertyManager_sptr &value)
 Assignment operator.
 
PropertyWithValueoperator= (const PropertyWithValue &right)
 Copy assignment operator assigns only the value and the validator not the name, default (initial) value, etc.
 
bool operator== (const PropertyWithValue< PropertyManager_sptr > &rhs) const
 Deep comparison.
 
 PropertyWithValue ()=delete
 
 PropertyWithValue (const PropertyWithValue< PropertyManager_sptr > &right)
 Copy constructor Note the default value of the copied object is the initial value of original.
 
 PropertyWithValue (const std::string &name, const PropertyManager_sptr &defaultValue, const std::string &defaultValueStr, IValidator_sptr validator, const unsigned int direction)
 Constructor.
 
 PropertyWithValue (std::string name, PropertyManager_sptr defaultValue, const unsigned int direction)
 Constructor.
 
 PropertyWithValue (std::string name, PropertyManager_sptr defaultValue, IValidator_sptr validator=IValidator_sptr(new NullValidator), const unsigned int direction=Direction::Input)
 Constructor.
 
virtual void replaceValidator (IValidator_sptr newValidator)
 Replace the current validator with the given one.
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
MANTID_KERNEL_DLL void saveProperty (Nexus::File *file)
 
void saveProperty (Nexus::File *file) override
 
std::string setDataItem (const std::shared_ptr< DataItem > &data) override
 Set a property value via a DataItem.
 
std::string setValue (const std::string &value) override
 Set the value of the property from a string representation.
 
std::string setValueFromJson (const Json::Value &value) override
 Set the value of the property from a Json representation.
 
int size () const override
 Get the size of the property.
 
std::string value () const override
 Get the value of the property as a string.
 
Json::Value valueAsJson () const override
 Attempt to construct a Json::Value object from the plain value.
 
std::string valueAsPrettyStr (const size_t maxLength=0, const bool collapseLists=true) const override
 Get the value of the property as a string.
 
- Public Member Functions inherited from Mantid::Kernel::Property
bool autoTrim () const
 Returns if the property is set to automatically trim string unput values of whitespace.
 
void clearSettings ()
 Deletes the PropertySettings object contained.
 
virtual const PropertyHistory createHistory () const
 Create a PropertyHistory object representing the current state of the Property.
 
void createTemporaryValue ()
 Create a temporary value for this property.
 
unsigned int direction () const
 returns the direction of the property
 
bool disableReplaceWSButton () const
 Returns if the property is set to disable the creation of the "Replace Workspace" button.
 
const std::string & documentation () const
 Get the property's documentation string.
 
const std::string & getGroup ()
 
virtual size_t getMemorySize () const
 
IPropertySettingsgetSettings ()
 
const IPropertySettingsgetSettings () const
 
bool hasTemporaryValue () const
 Property is using a temporary value for this property.
 
bool isDynamicDefault () const
 Returns a flag indicating that the property's value has been set programmatically, for example, if the property has a default value which depends on the value of an upstream property.
 
virtual bool isValueSerializable () const
 Whether the string returned by value() can be used for serialization.
 
virtual Propertymerge (Property *)
 Just returns the property (*this) unless overridden.
 
const std::string & name () const
 Get the property's name.
 
bool remember () const
 Whether to save input values.
 
void setAutoTrim (const bool &setting)
 Sets if the property is set to automatically trim string unput values of whitespace.
 
void setDisableReplaceWSButton (const bool &disable)
 Sets the property to disable the creation of the "Replace Workspace" button.
 
void setDocumentation (const std::string &documentation)
 Sets the user level description of the property.
 
void setGroup (const std::string &group)
 Set the group this property belongs to.
 
void setIsDynamicDefault (const bool &flag)
 Set or clear the flag indicating whether or not the property's value has been set programmatically.
 
void setName (const std::string &name)
 Set the property's name.
 
void setRemember (bool)
 Set wheter to remeber this property input.
 
void setSettings (std::unique_ptr< IPropertySettings > settings)
 Set the PropertySettings object.
 
virtual void setUnits (const std::string &unit)
 Sets the units of the property, as a string.
 
const std::string type () const
 Returns the type of the property as a string.
 
const std::type_info * type_info () const
 Get the property type_info.
 
virtual const std::string & units () const
 Returns the units of the property, if any, as a string.
 
virtual ~Property ()
 Virtual destructor.
 

Private Attributes

std::string m_dataServiceKey
 
std::string m_defaultAsStr
 

Additional Inherited Members

- Protected Member Functions inherited from Mantid::Kernel::Property
 Property (const Property &right)
 Copy constructor.
 
 Property (std::string name, const std::type_info &type, const unsigned int &direction=Direction::Input)
 Constructor.
 
- Protected Attributes inherited from Mantid::Kernel::PropertyWithValue< PropertyManager_sptr >
PropertyManager_sptr m_initialValue
 the property's default value which is also its initial value
 
PropertyManager_sptr m_value
 The value of the property.
 
- Protected Attributes inherited from Mantid::Kernel::Property
std::string m_name
 The name of the property.
 

Detailed Description

Definition at line 15 of file PropertyManagerProperty.h.

Member Typedef Documentation

◆ BaseClass

Definition at line 18 of file PropertyManagerProperty.h.

◆ ValueType

Definition at line 19 of file PropertyManagerProperty.h.

Constructor & Destructor Documentation

◆ PropertyManagerProperty() [1/3]

Mantid::Kernel::PropertyManagerProperty::PropertyManagerProperty ( const std::string &  name,
unsigned int  direction = Direction::Input 
)

Constructor with a default empty pointer.

Parameters
nameThe name of the property
directionDirection of the property

Definition at line 26 of file PropertyManagerProperty.cpp.

◆ PropertyManagerProperty() [2/3]

Mantid::Kernel::PropertyManagerProperty::PropertyManagerProperty ( const std::string &  name,
const ValueType defaultValue,
unsigned int  direction = Direction::Input 
)

Constructor taking an initial value.

Parameters
nameThe name of the property
defaultValueA default value for the property
directionDirection of the property

Definition at line 35 of file PropertyManagerProperty.cpp.

References m_defaultAsStr, and Mantid::Kernel::Property::name().

◆ PropertyManagerProperty() [3/3]

Mantid::Kernel::PropertyManagerProperty::PropertyManagerProperty ( const PropertyManagerProperty )
default

Member Function Documentation

◆ clone()

PropertyManagerProperty * Mantid::Kernel::PropertyManagerProperty::clone ( ) const
inlineoverridevirtual

'Virtual copy constructor'

Implements Mantid::Kernel::Property.

Definition at line 29 of file PropertyManagerProperty.h.

◆ getDefault()

std::string Mantid::Kernel::PropertyManagerProperty::getDefault ( ) const
overridevirtual
Returns
The string representation of the default value

Implements Mantid::Kernel::Property.

Definition at line 65 of file PropertyManagerProperty.cpp.

References m_defaultAsStr.

◆ operator=()

PropertyManagerProperty & Mantid::Kernel::PropertyManagerProperty::operator= ( const PropertyManagerProperty )
default

◆ setValue()

std::string Mantid::Kernel::PropertyManagerProperty::setValue ( const std::string &  strValue)
overridevirtual

Overwrite the current value.

The string is expected to contain either:

  • the key to a PropertyManager stored in the PropertyManagerDataService
  • or json-serialized data, where the properties must already exist on the containing PropertyManager
    Parameters
    strValueA string assumed to contain serialized Json
    Returns
    If an error occurred then this contains an error message, otherwise an empty string

Implements Mantid::Kernel::Property.

Definition at line 76 of file PropertyManagerProperty.cpp.

References m_dataServiceKey.

◆ setValueFromJson()

std::string Mantid::Kernel::PropertyManagerProperty::setValueFromJson ( const Json::Value &  value)
overridevirtual

Sets the value of the property from a Json object.

Parameters
valueA Json objectValue
Returns
An empty string indicating success otherwise a help message indicating what error has occurred

Implements Mantid::Kernel::Property.

Definition at line 117 of file PropertyManagerProperty.cpp.

References Mantid::Kernel::createPropertyManager(), std::to_string(), and value().

◆ value()

std::string Mantid::Kernel::PropertyManagerProperty::value ( ) const
overridevirtual
Returns
The value of the property represented as a string

Implements Mantid::Kernel::Property.

Definition at line 48 of file PropertyManagerProperty.cpp.

References m_dataServiceKey.

Referenced by setValueFromJson().

◆ valueAsJson()

Json::Value Mantid::Kernel::PropertyManagerProperty::valueAsJson ( ) const
overridevirtual

Create a Json::Value objectValue from the PropertyManager.

Implements Mantid::Kernel::Property.

Definition at line 59 of file PropertyManagerProperty.cpp.

Member Data Documentation

◆ m_dataServiceKey

std::string Mantid::Kernel::PropertyManagerProperty::m_dataServiceKey
private

Definition at line 38 of file PropertyManagerProperty.h.

Referenced by setValue(), and value().

◆ m_defaultAsStr

std::string Mantid::Kernel::PropertyManagerProperty::m_defaultAsStr
private

Definition at line 39 of file PropertyManagerProperty.h.

Referenced by getDefault(), and PropertyManagerProperty().


The documentation for this class was generated from the following files: