Mantid
|
Variation on the TableWorkspace with a set of pre-defined columns used to store diffs on Workspaces. More...
#include <MementoTableWorkspace.h>
Public Member Functions | |
std::unique_ptr< MementoTableWorkspace > | clone () const |
Returns a clone of the workspace. More... | |
std::unique_ptr< MementoTableWorkspace > | cloneEmpty () const |
Returns a default-initialized clone of the workspace. More... | |
MementoTableWorkspace (int nRows=0) | |
Constructor. More... | |
MementoTableWorkspace & | operator= (const MementoTableWorkspace &)=delete |
Public Member Functions inherited from Mantid::DataObjects::TableWorkspace | |
API::Column_sptr | addColumn (const std::string &type, const std::string &name) override |
Creates a new column. More... | |
template<class U > | |
U | cell_cast (size_t nRow, const std::string &col_name) const |
template<class U > | |
U | cell_cast (size_t nRow, size_t nCol) const |
Casts cells through converting their values to/from double without type checking; Can produce stuped results in case if the type is in any way not related to double. More... | |
std::unique_ptr< TableWorkspace > | clone () const |
Returns a clone of the workspace. More... | |
std::unique_ptr< TableWorkspace > | cloneEmpty () const |
Returns a default-initialized clone of the workspace. More... | |
size_t | columnCount () const override |
Number of columns in the workspace. More... | |
void | find (API::Boolean value, size_t &row, size_t col) override |
This method finds the row and column index of an API::Bollean value in a table workspace. More... | |
void | find (const Mantid::Kernel::V3D &value, size_t &row, size_t col) override |
This method finds the row and column index of an Mantid::Kernel::V3D cell value in a table workspace. More... | |
void | find (const std::string &value, size_t &row, size_t col) override |
This method finds the row and column index of an string cell value in a table workspace. More... | |
void | find (double value, size_t &row, size_t col) override |
This method finds the row and column index of an double cell value in a table workspace. More... | |
void | find (float value, size_t &row, size_t col) override |
This method finds the row and column index of an float value in a table workspace. More... | |
void | find (size_t value, size_t &row, size_t col) override |
This method finds the row and column index of an integer cell value in a table workspace. More... | |
template<class T > | |
T * | getColDataArray (const std::string &name) |
Non-throwing access to the pointer to the column data array for the column with given name. More... | |
template<class T > | |
T * | getColDataArray (const std::string &name) const |
Non-throwing const access to the pointer to the column data array for the column with given name. More... | |
API::Column_const_sptr | getColumn (const std::string &name) const override |
Gets the shared pointer to a column. More... | |
API::Column_sptr | getColumn (const std::string &name) override |
Gets the shared pointer to a column. More... | |
API::Column_const_sptr | getColumn (size_t index) const override |
Gets the shared pointer to a column by index - return none-modifyable column. More... | |
API::Column_sptr | getColumn (size_t index) override |
Gets the shared pointer to a column. More... | |
std::vector< std::string > | getColumnNames () const override |
Returns a vector of all column names. More... | |
template<class T > | |
std::vector< T > & | getColVector (const std::string &name) |
get access to the column vector for column with given name . More... | |
template<class T > | |
const std::vector< T > & | getColVector (const std::string &name) const |
get access to column vector for column with given name More... | |
template<class T > | |
std::vector< T > & | getColVector (size_t index) |
get access to column vector for index i. More... | |
template<class T > | |
const std::vector< T > & | getColVector (size_t index) const |
get constant access to column vector for index i. More... | |
API::LogManager_const_sptr | getLogs () const override |
Get constant access to shared pointer containing workspace porperties. More... | |
size_t | getMemorySize () const override |
Get the footprint in memory in KB. More... | |
const std::string | id () const override |
Return the workspace typeID. More... | |
size_t | insertRow (size_t index) override |
Inserts a row before row pointed to by index and fills it with default vales. More... | |
API::LogManager_sptr | logs () override |
Get access to shared pointer containing workspace porperties. More... | |
TableWorkspace & | operator= (const TableWorkspace &other)=delete |
void | removeColumn (const std::string &name) override |
Removes a column. More... | |
void | removeRow (size_t index) override |
Delets a row if it exists. More... | |
size_t | rowCount () const override |
Number of rows in the workspace. More... | |
void | setRowCount (size_t count) override |
Resizes the workspace. More... | |
void | sort (std::vector< std::pair< std::string, bool > > &criteria) override |
Sort this table. More... | |
TableWorkspace (size_t nrows=0) | |
Constructor. More... | |
Public Member Functions inherited from Mantid::API::ITableWorkspace | |
virtual Column_sptr | addColumn (const std::string &type, const std::string &name)=0 |
Creates a new column. More... | |
virtual bool | addColumns (const std::string &type, const std::string &name, size_t n) |
Creates n new columns of the same type. More... | |
TableRowHelper | appendRow () |
Appends a row. More... | |
Boolean & | Bool (size_t row, size_t col) |
Get the reference to the element in row row and column col if its type is bool . More... | |
template<class T > | |
T & | cell (size_t row, size_t col) |
Get the reference to the element in row row and column col . More... | |
ITableWorkspace_uptr | clone () const |
Returns a clone of the workspace. More... | |
ITableWorkspace_uptr | cloneColumns (const std::vector< std::string > &colNames) const |
Returns a clone of the workspace. More... | |
ITableWorkspace_uptr | cloneEmpty () const |
Returns a default-initialized clone of the workspace. More... | |
virtual size_t | columnCount () const =0 |
Number of columns in the workspace. More... | |
virtual bool | customSort () const |
Does this type of TableWorkspace need a custom sorting call (e.g. More... | |
double & | Double (size_t row, size_t col) |
Get the reference to the element in row row and column col if its type is double . More... | |
virtual void | find (API::Boolean value, size_t &row, size_t col)=0 |
find method to get the index of API::Boolean value cell in a table workspace More... | |
virtual void | find (const Mantid::Kernel::V3D &value, size_t &row, size_t col)=0 |
find method to get the index of Mantid::Kernel::V3D cell value in a table workspace More... | |
virtual void | find (const std::string &value, size_t &row, size_t col)=0 |
find method to get the index of cellstd::string value in a table workspace More... | |
virtual void | find (double value, size_t &row, size_t col)=0 |
find method to get the index of double cell value in a table workspace More... | |
virtual void | find (float value, size_t &row, size_t col)=0 |
find method to get the index of float cell value in a table workspace More... | |
virtual void | find (size_t value, size_t &row, size_t col)=0 |
find method to get the index of integer cell value in a table workspace More... | |
virtual Column_const_sptr | getColumn (const std::string &name) const =0 |
Gets the shared pointer to a column by name. More... | |
virtual Column_sptr | getColumn (const std::string &name)=0 |
Gets the shared pointer to a column by name. More... | |
virtual Column_const_sptr | getColumn (size_t index) const =0 |
Gets the shared pointer to a column by index - return none-modifyable column. More... | |
virtual Column_sptr | getColumn (size_t index)=0 |
Gets the shared pointer to a column by index. More... | |
virtual std::vector< std::string > | getColumnNames () const =0 |
Returns a vector of all column names. More... | |
TableRowHelper | getFirstRow () |
Creates a TableRow object for the first row (row == 0). More... | |
virtual API::LogManager_const_sptr | getLogs () const =0 |
Get constant access to shared pointer containing workspace properties. More... | |
template<class T > | |
T & | getRef (const std::string &name, size_t index) |
Get a reference to a data element. More... | |
TableRowHelper | getRow (size_t row) |
Creates a TableRow object for row row. More... | |
TableColumnHelper | getVector (const std::string &name) |
Access the column with name name trough a ColumnVector object. More... | |
TableConstColumnHelper | getVector (const std::string &name) const |
Access the column with name name trough a ColumnVector object. More... | |
const std::string | id () const override |
Return the workspace typeID. More... | |
virtual size_t | insertRow (size_t index)=0 |
Inserts a row before row pointed to by index and fills it with default vales. More... | |
int & | Int (size_t row, size_t col) |
Get the reference to the element in row row and column col if its type is int . More... | |
ITableWorkspace () | |
Constructor. More... | |
virtual API::LogManager_sptr | logs ()=0 |
Get access to shared pointer containing workspace properties. More... | |
void | modified () |
If the workspace is the AnalysisDataService sends AfterReplaceNotification. More... | |
ITableWorkspace & | operator= (const ITableWorkspace &)=delete |
virtual void | removeColumn (const std::string &name)=0 |
Removes a column. More... | |
virtual void | removeRow (size_t index)=0 |
Delets a row if it exists. More... | |
virtual size_t | rowCount () const =0 |
Number of rows in the workspace. More... | |
virtual void | setRowCount (size_t count)=0 |
Resizes the workspace. More... | |
virtual void | sort (std::vector< std::pair< std::string, bool > > &criteria) |
Overridable method to custom-sort the workspace. More... | |
std::string & | String (size_t row, size_t col) |
Get the reference to the element in row row and column col if its type is std::string . More... | |
const std::string | toString () const override |
Serializes the object to a string. More... | |
Public Member Functions inherited from Mantid::API::Workspace | |
Workspace_uptr | clone () const |
Returns a clone (copy) of the workspace with covariant return type in all derived classes. More... | |
Workspace_uptr | cloneEmpty () const |
Returns a default-initialized clone of the workspace. More... | |
const std::string & | getComment () const |
Get the workspace comment. More... | |
const WorkspaceHistory & | getHistory () const |
Returns a reference to the WorkspaceHistory const. More... | |
virtual size_t | getMemorySize () const =0 |
Get the footprint in memory in bytes. More... | |
std::string | getMemorySizeAsStr () const |
Returns the memory footprint in sensible units. More... | |
const std::string & | getName () const override |
Get the workspace name. More... | |
virtual const std::string | getTitle () const |
Get the workspace title. More... | |
WorkspaceHistory & | history () |
Returns a reference to the WorkspaceHistory. More... | |
bool | isDirty (const int n=1) const |
Check whether other algorithms have been applied to the workspace by checking the history length. More... | |
virtual bool | isGroup () const |
Workspace & | operator= (const Workspace &other)=delete |
void | setComment (const std::string &) |
Set the comment field of the workspace. More... | |
virtual void | setTitle (const std::string &) |
Set the title of the workspace. More... | |
Parallel::StorageMode | storageMode () const |
Returns the storage mode (used for MPI runs) More... | |
bool | threadSafe () const override |
Marks the workspace as safe for multiple threads to edit data simutaneously. More... | |
Workspace (const Parallel::StorageMode storageMode=Parallel::StorageMode::Cloned) | |
~Workspace () | |
Public Member Functions inherited from Mantid::Kernel::DataItem | |
DataItem () | |
Default constructor. More... | |
DataItem (const DataItem &other) | |
Copy constructor Always makes a unique lock. More... | |
virtual | ~DataItem () |
Destructor. More... | |
void | readLock () |
Acquires a read lock. More... | |
void | unlock () |
Static Public Member Functions | |
static bool | isMementoWorkspace (const Mantid::API::ITableWorkspace &candidate) |
Determines whether a given table workspace has columns in the same order, and exactly matching those for the MementoTableWorkspace schema. More... | |
Protected Member Functions | |
MementoTableWorkspace (const MementoTableWorkspace &)=default | |
Protected copy constructor. May be used by childs for cloning. More... | |
Protected Member Functions inherited from Mantid::DataObjects::TableWorkspace | |
TableWorkspace (const TableWorkspace &other) | |
Protected copy constructor. May be used by childs for cloning. More... | |
Protected Member Functions inherited from Mantid::API::ITableWorkspace | |
void | insertInColumn (Column *c, size_t index) |
Insert a new element into a column. More... | |
ITableWorkspace (const ITableWorkspace &)=default | |
Protected copy constructor. May be used by childs for cloning. More... | |
void | removeFromColumn (Column *c, size_t index) |
Remove an element from a column. More... | |
void | resizeColumn (Column *c, size_t size) |
Resize a column. More... | |
Protected Member Functions inherited from Mantid::API::Workspace | |
void | setStorageMode (Parallel::StorageMode mode) |
Sets the storage mode (used for MPI runs) More... | |
Workspace (const Workspace &) | |
Protected copy constructor. May be used by childs for cloning. More... | |
Protected Member Functions inherited from Mantid::Kernel::DataItem | |
Poco::RWLock * | getLock () const |
Private method to access the RWLock object. More... | |
Private Member Functions | |
MementoTableWorkspace * | doClone () const override |
Virtual clone method. Not implemented to force implementation in children. More... | |
MementoTableWorkspace * | doCloneEmpty () const override |
Virtual cloneEmpty method. More... | |
Static Private Member Functions | |
static bool | expectedColumn (const Mantid::API::Column_const_sptr &expected, const Mantid::API::Column_const_sptr &candidate) |
Determines whether the provided column has the same name and type as expected. More... | |
Variation on the TableWorkspace with a set of pre-defined columns used to store diffs on Workspaces.
Definition at line 22 of file MementoTableWorkspace.h.
Mantid::DataObjects::MementoTableWorkspace::MementoTableWorkspace | ( | int | nRows = 0 | ) |
Constructor.
Definition at line 57 of file MementoTableWorkspace.cpp.
References Mantid::DataObjects::TableWorkspace::addColumn().
|
protecteddefault |
Protected copy constructor. May be used by childs for cloning.
|
inline |
Returns a clone of the workspace.
Definition at line 29 of file MementoTableWorkspace.h.
|
inline |
Returns a default-initialized clone of the workspace.
Definition at line 32 of file MementoTableWorkspace.h.
|
inlineoverrideprivatevirtual |
Virtual clone method. Not implemented to force implementation in children.
Reimplemented from Mantid::API::ITableWorkspace.
Definition at line 41 of file MementoTableWorkspace.h.
|
inlineoverrideprivatevirtual |
Virtual cloneEmpty method.
Not implemented to force implementation in children.
Implements Mantid::API::ITableWorkspace.
Definition at line 43 of file MementoTableWorkspace.h.
|
staticprivate |
Determines whether the provided column has the same name and type as expected.
expected | : expected column name |
candidate | : ref to column to check |
Definition at line 23 of file MementoTableWorkspace.cpp.
Referenced by isMementoWorkspace().
|
static |
Determines whether a given table workspace has columns in the same order, and exactly matching those for the MementoTableWorkspace schema.
candidate | : ref to workspace to treat as a candidate for being a memento table workspace. |
Definition at line 42 of file MementoTableWorkspace.cpp.
References Mantid::API::ITableWorkspace::columnCount(), Mantid::DataObjects::TableWorkspace::columnCount(), expectedColumn(), Mantid::DataObjects::TableWorkspace::getColumn(), and Mantid::API::ITableWorkspace::getColumn().
|
delete |