|
Mantid
|
VectorColumn : table column type capable of storing vectors of primitive types. More...
#include <VectorColumn.h>
Public Member Functions | |
| VectorColumn * | clone () const override |
| Create another copy of the column. More... | |
| const std::vector< std::vector< Type > > & | data () const |
| Reference to the data. More... | |
| bool | equals (const Column &otherColumn, double tolerance) const override |
| bool | equalsRelErr (const Column &otherColumn, double tolerance) const override |
| void | fromDouble (size_t i, double value) override |
| Assign from double. More... | |
| const std::type_info & | get_pointer_type_info () const override |
| Returns typeid for the pointer type to the data element in the column. More... | |
| const std::type_info & | get_type_info () const override |
| Returns typeid for the data in the column. More... | |
| bool | isBool () const override |
| Specialized type check. More... | |
| bool | isNumber () const override |
| Are elements of the column interpretable as a number? More... | |
| void | print (size_t index, std::ostream &s) const override |
| Print specified item to the stream. More... | |
| void | read (const size_t index, std::istringstream &in) override |
| Set item from a stream. More... | |
| void | read (size_t index, const std::string &text) override |
| Set item from a string value. More... | |
| size_t | size () const override |
| Number of individual elements in the column. More... | |
| long int | sizeOfData () const override |
| Overall memory size taken by the column (bytes) More... | |
| double | toDouble (size_t i) const override |
| Cast to double. More... | |
| VectorColumn () | |
Public Member Functions inherited from Mantid::API::Column | |
| template<class T > | |
| T & | cell (size_t index) |
| Templated method for returning a value. No type checks are done. More... | |
| template<class T > | |
| const T & | cell (size_t index) const |
| Templated method for returning a value (const version). More... | |
| virtual Column * | clone () const =0 |
| Virtual constructor. Fully clone any column. More... | |
| Column () | |
| virtual bool | equals (const Column &, double) const |
| virtual bool | equalsRelErr (const Column &, double) const |
| virtual void | fromDouble (size_t index, double value)=0 |
| Assign an element from double if possible. More... | |
| virtual const std::type_info & | get_pointer_type_info () const =0 |
| Returns typeid for the pointer type to the data element in the column. More... | |
| virtual const std::type_info & | get_type_info () const =0 |
| Returns typeid for the data in the column. More... | |
| int | getLinkedYCol () const |
| int | getPlotType () const |
| get plot type More... | |
| virtual bool | getReadOnly () const |
| Returns column read-only flag. More... | |
| virtual bool | isBool () const =0 |
| Specialized type check. More... | |
| virtual bool | isNumber () const =0 |
| Are elements of the column interpretable as a number? More... | |
| template<class T > | |
| bool | isType () const |
| Type check. More... | |
| template<> | |
| bool | isType () const |
| const std::string & | name () const |
| Name (caption) of the column. More... | |
| template<class T = double> | |
| std::vector< T > | numeric_fill (size_t maxSize=std::numeric_limits< size_t >::max()) const |
| Fills a std vector with values from the column if the types are compatible. More... | |
| virtual double | operator[] (size_t i) const |
| return value casted to double (should be pure virtual) More... | |
| virtual void | print (size_t index, std::ostream &s) const =0 |
| Prints out the value to a stream. More... | |
| virtual void | read (const size_t index, std::istringstream &in) |
| Read in from stream and set the value at the given index. More... | |
| virtual void | read (size_t index, const std::string &text) |
| Read in a string and set the value at the given index. More... | |
| void | setLinkedYCol (const int yCol) |
| void | setName (const std::string &str) |
| Renames the column. More... | |
| void | setPlotType (int t) |
| Set plot type where. More... | |
| void | setReadOnly (bool isReadOnly) |
| Sets column read-only flag. More... | |
| virtual size_t | size () const =0 |
| Number of individual elements in the column. More... | |
| virtual long int | sizeOfData () const =0 |
| Must return overall memory size taken by the column. More... | |
| virtual void | sortIndex (bool ascending, size_t start, size_t end, std::vector< size_t > &indexVec, std::vector< std::pair< size_t, size_t > > &equalRanges) const |
| Sort all or part of a vector of indices according to values in corresponding cells of this column. More... | |
| virtual void | sortValues (const std::vector< size_t > &indexVec) |
| Re-arrange values in this column according to indices in indexVec. More... | |
| virtual double | toDouble (size_t index) const =0 |
| Cast an element to double if possible. More... | |
| const std::string & | type () const |
| Type of the column data. More... | |
| virtual | ~Column ()=default |
| Virtual destructor. More... | |
Protected Member Functions | |
| void | insert (size_t index) override |
| Inserts an item. More... | |
| void | remove (size_t index) override |
| Removes an item. More... | |
| void | resize (size_t count) override |
| Sets the new column size. More... | |
| const void * | void_pointer (size_t index) const override |
| Pointer to a data element. More... | |
| void * | void_pointer (size_t index) override |
| Pointer to a data element. More... | |
Protected Member Functions inherited from Mantid::API::Column | |
| virtual void | insert (size_t index)=0 |
| Inserts an item. More... | |
| bool | possibleToCompare (const Column &otherColumn) const |
| virtual void | remove (size_t index)=0 |
| Removes an item. More... | |
| virtual void | resize (size_t count)=0 |
| Sets the new column size. More... | |
| virtual const void * | void_pointer (size_t index) const =0 |
| Pointer to a data element. More... | |
| virtual void * | void_pointer (size_t index)=0 |
| Pointer to a data element. More... | |
Private Member Functions | |
| std::string | typeName () |
| Returns the name of the column with the given type. More... | |
Private Attributes | |
| std::vector< std::vector< Type > > | m_data |
| All the vectors stored. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Mantid::API::Column | |
| bool | m_isReadOnly |
| Column read-only flag. More... | |
| int | m_linkedYCol = -1 |
| For error columns - the index of the related data column. More... | |
| std::string | m_name |
| name More... | |
| int | m_plotType |
| plot type where None = 0 (means it has specifically been set to 'no plot type') NotSet = -1000 (this is the default and means plot style has not been set) X = 1, Y = 2, Z = 3, xErr = 4, yErr = 5, Label = 6 More... | |
| std::string | m_type |
| type More... | |
VectorColumn : table column type capable of storing vectors of primitive types.
Plese add more specializations to VectorColumn.cpp as you need them. I don't guarantee it will work correctly with complex or user types, but it might.
Definition at line 29 of file VectorColumn.h.
|
inline |
Definition at line 31 of file VectorColumn.h.
|
inlineoverridevirtual |
Create another copy of the column.
Implements Mantid::API::Column.
Definition at line 99 of file VectorColumn.h.
References m_data.
|
inline |
Reference to the data.
Definition at line 121 of file VectorColumn.h.
References m_data.
Referenced by Mantid::DataObjects::VectorColumn< Type >::equals(), and Mantid::DataObjects::VectorColumn< Type >::equalsRelErr().
|
inlineoverridevirtual |
Reimplemented from Mantid::API::Column.
Definition at line 123 of file VectorColumn.h.
References Mantid::DataObjects::VectorColumn< Type >::data(), fabs, m_data, Mantid::DataObjects::VectorColumn< Type >::size(), and tolerance.
|
inlineoverridevirtual |
Reimplemented from Mantid::API::Column.
Definition at line 142 of file VectorColumn.h.
References Mantid::DataObjects::VectorColumn< Type >::data(), fabs, m_data, Mantid::DataObjects::VectorColumn< Type >::size(), and tolerance.
|
inlineoverridevirtual |
Assign from double.
Implements Mantid::API::Column.
Definition at line 114 of file VectorColumn.h.
References UNUSED_ARG, and value.
|
inlineoverridevirtual |
Returns typeid for the pointer type to the data element in the column.
Implements Mantid::API::Column.
Definition at line 40 of file VectorColumn.h.
|
inlineoverridevirtual |
Returns typeid for the data in the column.
Implements Mantid::API::Column.
Definition at line 37 of file VectorColumn.h.
|
inlineoverrideprotectedvirtual |
|
inlineoverridevirtual |
Specialized type check.
Implements Mantid::API::Column.
Definition at line 83 of file VectorColumn.h.
|
inlineoverridevirtual |
Are elements of the column interpretable as a number?
Implements Mantid::API::Column.
Definition at line 85 of file VectorColumn.h.
|
inlineoverridevirtual |
Print specified item to the stream.
Implements Mantid::API::Column.
Definition at line 43 of file VectorColumn.h.
|
inlineoverridevirtual |
Set item from a stream.
Reimplemented from Mantid::API::Column.
Definition at line 76 of file VectorColumn.h.
References index.
|
inlineoverridevirtual |
Set item from a string value.
Reimplemented from Mantid::API::Column.
Definition at line 60 of file VectorColumn.h.
References index, m_data, and Mantid::Kernel::StringTokenizer::TOK_TRIM.
|
inlineoverrideprotectedvirtual |
|
inlineoverrideprotectedvirtual |
Sets the new column size.
Implements Mantid::API::Column.
Definition at line 167 of file VectorColumn.h.
|
inlineoverridevirtual |
Number of individual elements in the column.
Implements Mantid::API::Column.
Definition at line 34 of file VectorColumn.h.
References m_data.
Referenced by Mantid::DataObjects::VectorColumn< Type >::equals(), and Mantid::DataObjects::VectorColumn< Type >::equalsRelErr().
|
inlineoverridevirtual |
Overall memory size taken by the column (bytes)
Implements Mantid::API::Column.
Definition at line 88 of file VectorColumn.h.
References m_data.
|
inlineoverridevirtual |
Cast to double.
Implements Mantid::API::Column.
Definition at line 108 of file VectorColumn.h.
References UNUSED_ARG.
|
private |
Returns the name of the column with the given type.
Is specialized using DECLARE_VECTORCOLUMN
|
inlineoverrideprotectedvirtual |
Pointer to a data element.
Implements Mantid::API::Column.
Definition at line 182 of file VectorColumn.h.
|
inlineoverrideprotectedvirtual |
Pointer to a data element.
Implements Mantid::API::Column.
Definition at line 179 of file VectorColumn.h.
|
private |
All the vectors stored.
Definition at line 186 of file VectorColumn.h.