Mantid
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
Mantid::API::IndexProperty Class Reference

IndexProperty : Implementation of a property type which returns a SpectrumIndexSet provided an input vector of integers or a string. More...

#include <IndexProperty.h>

Inheritance diagram for Mantid::API::IndexProperty:
Mantid::Kernel::ArrayProperty< int64_t > Mantid::Kernel::PropertyWithValue< TYPE > Mantid::Kernel::Property

Public Member Functions

IndexPropertyclone () const override
 'Virtual copy constructor' More...
 
Indexing::IndexInfo getFilteredIndexInfo () const
 Return IndexInfo created from workspace but containing selected spectra. More...
 
Indexing::SpectrumIndexSet getIndices () const
 
 IndexProperty (const IndexProperty &)=default
 
 IndexProperty (const std::string &name, const IWorkspaceProperty &workspaceProp, const IndexTypeProperty &indexTypeProp, const Kernel::IValidator_sptr &validator=Kernel::IValidator_sptr(new Kernel::NullValidator))
 
bool isDefault () const override
 Overriden function that returns if property has the same value that it was initialised with, if applicable. More...
 
std::string isValid () const override
 Overridden function that checks whether the property, if not overriden returns "". More...
 
 operator Indexing::SpectrumIndexSet () const
 
IndexPropertyoperator= (const IndexProperty &)=delete
 
IndexPropertyoperator= (const std::string &rhs)
 
- Public Member Functions inherited from Mantid::Kernel::ArrayProperty< int64_t >
 ArrayProperty (const ArrayProperty &)
 
 ArrayProperty (const std::string &name, const IValidator_sptr &validator, const unsigned int direction=Direction::Input)
 Constructor Will lead to the property having a default-constructed (i.e. More...
 
 ArrayProperty (const std::string &name, const std::string &values, const IValidator_sptr &validator=IValidator_sptr(new NullValidator), const unsigned int direction=Direction::Input)
 Constructor from which you can set the property's values through a string: More...
 
 ArrayProperty (const std::string &name, const unsigned int direction=Direction::Input)
 Constructor that's useful for output properties or inputs with an empty default and no validator. More...
 
 ArrayProperty (const std::string &name, std::vector< int64_t > vec, const IValidator_sptr &validator=IValidator_sptr(new NullValidator), const unsigned int direction=Direction::Input)
 Constructor. More...
 
ArrayProperty< int64_t > * clone () const override
 'Virtual copy constructor' More...
 
std::string setValue (const std::string &value) override
 Sets the values stored in the ArrayProperty from a string representation. More...
 
std::string value () const override
 Returns the values stored in the ArrayProperty. More...
 
- Public Member Functions inherited from Mantid::Kernel::PropertyWithValue< TYPE >
std::vector< std::string > allowedValues () const override
 Returns the set of valid values for this property, if such a set exists. More...
 
PropertyWithValue< TYPE > * clone () const override
 'Virtual copy constructor' More...
 
std::string getDefault () const override
 Get the default value for the property which is the value the property was initialised with. More...
 
IValidator_sptr getValidator () const
 
bool isDefault () const override
 Overriden function that returns if property has the same value that it was initialised with, if applicable. More...
 
bool isMultipleSelectionAllowed () override
 Is Multiple Selection Allowed. More...
 
std::string isValid () const override
 Overridden function that checks whether the property, if not overriden returns "". More...
 
virtual operator const TYPE & () const
 
bool operator!= (const PropertyWithValue< TYPE > &rhs) const
 
virtual const TYPEoperator() () const
 
PropertyWithValueoperator+= (Property const *right) override
 Add to this. More...
 
PropertyWithValueoperator= (const PropertyWithValue &right)
 
virtual PropertyWithValueoperator= (const TYPE &value)
 
bool operator== (const PropertyWithValue< TYPE > &rhs) const
 
 PropertyWithValue (const PropertyWithValue< TYPE > &right)
 
 PropertyWithValue (const std::string &name, TYPE defaultValue, const std::string &defaultValueStr, IValidator_sptr validator, const unsigned int direction)
 
 PropertyWithValue (std::string name, TYPE defaultValue, const unsigned int direction)
 
 PropertyWithValue (std::string name, TYPE defaultValue, IValidator_sptr validator=IValidator_sptr(new NullValidator), const unsigned int direction=Direction::Input)
 
virtual void replaceValidator (IValidator_sptr newValidator)
 
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 the value of the property via a DataItem pointer. More...
 
std::string setValue (const std::string &value) override
 Set the value of the property via a string. More...
 
std::string setValueFromJson (const Json::Value &value) override
 Set the value of the property via a Json object. More...
 
int size () const override
 Return the size of this property. More...
 
std::string value () const override
 Returns the value of the property as a string. More...
 
Json::Value valueAsJson () const override
 Returns the value of the property as a Json::Value. More...
 
std::string valueAsPrettyStr (const size_t maxLength=0, const bool collapseLists=true) const override
 Returns the value of the property as a pretty printed string. More...
 
- Public Member Functions inherited from Mantid::Kernel::Property
virtual std::vector< std::string > allowedValues () const
 Returns the set of valid values for this property, if such a set exists. More...
 
bool autoTrim () const
 Returns if the property is set to automatically trim string unput values of whitespace. More...
 
void clearSettings ()
 Deletes the PropertySettings object contained. More...
 
virtual Propertyclone () const =0
 'Virtual copy constructor' More...
 
virtual const PropertyHistory createHistory () const
 Create a PropertyHistory object representing the current state of the Property. More...
 
void createTemporaryValue ()
 Create a temporary value for this property. More...
 
unsigned int direction () const
 returns the direction of the property More...
 
const std::string & documentation () const
 Get the property's documentation string. More...
 
virtual void filterByTime (const Types::Core::DateAndTime &start, const Types::Core::DateAndTime &stop)
 Filter out a property by time. More...
 
virtual std::string getDefault () const =0
 Get the default value for the property which is the value the property was initialised with. More...
 
const std::string & getGroup ()
 
virtual size_t getMemorySize () const
 
IPropertySettingsgetSettings ()
 
bool hasTemporaryValue () const
 Property is using a temporary value for this property. More...
 
virtual bool isDefault () const =0
 Overriden function that returns if property has the same value that it was initialised with, if applicable. More...
 
virtual bool isMultipleSelectionAllowed ()
 Is Multiple Selection Allowed. More...
 
virtual std::string isValid () const
 Overridden function that checks whether the property, if not overriden returns "". More...
 
virtual bool isValueSerializable () const
 Whether the string returned by value() can be used for serialization. More...
 
virtual Propertymerge (Property *)
 Just returns the property (*this) unless overridden. More...
 
const std::string & name () const
 Get the property's name. More...
 
virtual Propertyoperator+= (Property const *rhs)=0
 Add to this. More...
 
bool remember () const
 Whether to save input values. More...
 
virtual void saveProperty (::NeXus::File *)
 
void setAutoTrim (const bool &setting)
 Sets if the property is set to automatically trim string unput values of whitespace. More...
 
virtual std::string setDataItem (const std::shared_ptr< DataItem > &)=0
 Set the value of the property via a DataItem pointer. More...
 
void setDocumentation (const std::string &documentation)
 Sets the user level description of the property. More...
 
void setGroup (const std::string &group)
 Set the group this property belongs to. More...
 
void setRemember (bool)
 Set wheter to remeber this property input. More...
 
void setSettings (std::unique_ptr< IPropertySettings > settings)
 Set the PropertySettings object. More...
 
virtual void setUnits (const std::string &unit)
 Sets the units of the property, as a string. More...
 
virtual std::string setValue (const std::string &)=0
 Set the value of the property via a string. More...
 
virtual std::string setValueFromJson (const Json::Value &)=0
 Set the value of the property via a Json object. More...
 
virtual std::string setValueFromProperty (const Property &right)=0
 Set the value of the property via a reference to another property. More...
 
virtual int size () const
 Return the size of this property. More...
 
virtual void splitByTime (std::vector< SplittingInterval > &splitter, std::vector< Property * > outputs, bool isProtonCharge=true) const
 Split a property by time. More...
 
const std::string type () const
 Returns the type of the property as a string. More...
 
const std::type_info * type_info () const
 Get the property type_info. More...
 
virtual const std::string & units () const
 Returns the units of the property, if any, as a string. More...
 
virtual std::string value () const =0
 Returns the value of the property as a string. More...
 
virtual Json::Value valueAsJson () const =0
 Returns the value of the property as a Json::Value. More...
 
virtual std::string valueAsPrettyStr (const size_t maxLength=0, const bool collapseLists=true) const
 Returns the value of the property as a pretty printed string. More...
 
virtual ~Property ()
 Virtual destructor. More...
 

Static Public Member Functions

static std::string generatePropertyName (const std::string &name="")
 

Private Member Functions

const Indexing::IndexInfo & getIndexInfoFromWorkspace () const
 

Private Attributes

const IndexTypePropertym_indexTypeProp
 
Indexing::SpectrumIndexSet m_indices
 
bool m_indicesExtracted
 
std::string m_validString
 
const IWorkspacePropertym_workspaceProp
 

Additional Inherited Members

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

Detailed Description

IndexProperty : Implementation of a property type which returns a SpectrumIndexSet provided an input vector of integers or a string.

The constructor accepts a WorkspaceProperty and an IndexTypeProperty which are used to validate user input and access the IndexInfo which manages spectrum index information within the workspace.

Author
Lamar Moore
Date
1/7/2017

Definition at line 30 of file IndexProperty.h.

Constructor & Destructor Documentation

◆ IndexProperty() [1/2]

Mantid::API::IndexProperty::IndexProperty ( const std::string &  name,
const IWorkspaceProperty workspaceProp,
const IndexTypeProperty indexTypeProp,
const Kernel::IValidator_sptr validator = Kernel::IValidator_sptr(new Kernel::NullValidator) 
)

Definition at line 17 of file IndexProperty.cpp.

◆ IndexProperty() [2/2]

Mantid::API::IndexProperty::IndexProperty ( const IndexProperty )
default

Member Function Documentation

◆ clone()

IndexProperty * Mantid::API::IndexProperty::clone ( ) const
overridevirtual

'Virtual copy constructor'

Implements Mantid::Kernel::Property.

Definition at line 22 of file IndexProperty.cpp.

◆ generatePropertyName()

std::string Mantid::API::IndexProperty::generatePropertyName ( const std::string &  name = "")
static

Definition at line 112 of file IndexProperty.cpp.

References Mantid::Kernel::Property::name().

◆ getFilteredIndexInfo()

Indexing::IndexInfo Mantid::API::IndexProperty::getFilteredIndexInfo ( ) const

Return IndexInfo created from workspace but containing selected spectra.

The selected spectra are the same as in the SpectrumIndexSet returned by this property and the order is guaranteed to be consistent. That is, if the Nth entry in the SpectrumIndexSet is M, the spectrum with index M in the input workspace is equal to the spectrum with index N in the returned IndexInfo.

Definition at line 96 of file IndexProperty.cpp.

References getIndexInfoFromWorkspace(), m_indexTypeProp, Mantid::Kernel::PropertyWithValue< TYPE >::m_value, Mantid::API::IndexTypeProperty::selectedType(), Mantid::API::SpectrumNum, and Mantid::API::WorkspaceIndex.

◆ getIndexInfoFromWorkspace()

const Indexing::IndexInfo & Mantid::API::IndexProperty::getIndexInfoFromWorkspace ( ) const
private

◆ getIndices()

Indexing::SpectrumIndexSet Mantid::API::IndexProperty::getIndices ( ) const

◆ isDefault()

bool Mantid::API::IndexProperty::isDefault ( ) const
overridevirtual

Overriden function that returns if property has the same value that it was initialised with, if applicable.

Implements Mantid::Kernel::Property.

Definition at line 24 of file IndexProperty.cpp.

References Mantid::Kernel::PropertyWithValue< TYPE >::m_value.

◆ isValid()

std::string Mantid::API::IndexProperty::isValid ( ) const
overridevirtual

Overridden function that checks whether the property, if not overriden returns "".

Overridden functions checks whether the property has a valid value.

Returns
empty string ""

Reimplemented from Mantid::Kernel::Property.

Definition at line 26 of file IndexProperty.cpp.

References error, getIndices(), Mantid::API::IWorkspaceProperty::getWorkspace(), and m_workspaceProp.

◆ operator Indexing::SpectrumIndexSet()

Mantid::API::IndexProperty::operator Indexing::SpectrumIndexSet ( ) const

Definition at line 51 of file IndexProperty.cpp.

◆ operator=() [1/2]

IndexProperty & Mantid::API::IndexProperty::operator= ( const IndexProperty )
delete

◆ operator=() [2/2]

IndexProperty & Mantid::API::IndexProperty::operator= ( const std::string &  rhs)

Definition at line 46 of file IndexProperty.cpp.

References rhs, and Mantid::Kernel::ArrayProperty< int64_t >::setValue().

Member Data Documentation

◆ m_indexTypeProp

const IndexTypeProperty& Mantid::API::IndexProperty::m_indexTypeProp
private

Definition at line 58 of file IndexProperty.h.

Referenced by getFilteredIndexInfo(), and getIndices().

◆ m_indices

Indexing::SpectrumIndexSet Mantid::API::IndexProperty::m_indices
mutableprivate

Definition at line 59 of file IndexProperty.h.

Referenced by getIndices().

◆ m_indicesExtracted

bool Mantid::API::IndexProperty::m_indicesExtracted
mutableprivate

Definition at line 60 of file IndexProperty.h.

Referenced by getIndices().

◆ m_validString

std::string Mantid::API::IndexProperty::m_validString
private

Definition at line 61 of file IndexProperty.h.

◆ m_workspaceProp

const IWorkspaceProperty& Mantid::API::IndexProperty::m_workspaceProp
private

Definition at line 57 of file IndexProperty.h.

Referenced by getIndexInfoFromWorkspace(), and isValid().


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