NumeRe v1.1.4
NumeRe: Framework für Numerische Rechnungen
memory.hpp
Go to the documentation of this file.
1/*****************************************************************************
2 NumeRe: Framework fuer Numerische Rechnungen
3 Copyright (C) 2018 Erik Haenel et al.
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17******************************************************************************/
18
19#include <string>
20#include <vector>
21
22#include "table.hpp"
23#include "sorter.hpp"
24#include "tablecolumn.hpp"
25#include "../maths/filtering.hpp"
26
27#ifndef MEMORY_HPP
28#define MEMORY_HPP
29
30// forward declaration for using the memory manager as friend
31class MemoryManager;
32class Matrix;
33struct StatsLogic;
34
40{
46};
47
48namespace NumeRe
49{
50 class FileAdapter;
51}
52
53
58typedef std::vector<std::string> ValueVector;
59
60
67class Memory : public Sorter
68{
69 public:
70 enum AppDir
71 {
72 ALL = 0x0,
73 LINES = 0x1,
74 COLS = 0x2,
75 GRID = 0x4
76 };
77
79 {
83 };
84
85 private:
86 friend class MemoryManager;
87 friend class NumeRe::FileAdapter;
88
91
92 mutable int nCalcLines;
93
96
97
98 bool Allocate(size_t _nNCols, bool shrink = false);
99 void createTableHeaders();
100 bool clear();
101 Boundary findValidBoundary(const VectorIndex& _vLine, const VectorIndex& _vCol, int i, int j) const;
102 bool retouch1D(const VectorIndex& _vLine, const VectorIndex& _vCol, AppDir Direction);
103 bool retouch2D(const VectorIndex& _vLine, const VectorIndex& _vCol);
104 bool onlyValidValues(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
105 void reorderColumn(const VectorIndex& vIndex, int i1, int i2, int j1 = 0);
106 virtual int compare(int i, int j, int col) override;
107 virtual bool isValue(int line, int col) override;
108 void smoothingWindow1D(const VectorIndex& _vLine, const VectorIndex& _vCol, size_t i, size_t j, NumeRe::Filter* _filter, bool smoothLines);
109 void smoothingWindow2D(const VectorIndex& _vLine, const VectorIndex& _vCol, size_t i, size_t j, NumeRe::Filter* _filter);
110 void calculateStats(const VectorIndex& _vLine, const VectorIndex& _vCol, std::vector<StatsLogic>& operation) const;
111
112 public:
113 Memory();
114 Memory(size_t _nCols);
115 ~Memory();
116
117 Memory& operator=(const Memory& other);
118
119 bool resizeMemory(size_t _nLines, size_t _nCols);
120 bool isValid() const;
121 bool isValidElement(size_t _nLine, size_t _nCol) const;
122 bool shrink();
123 void convert();
124 bool convertColumns(const VectorIndex& _vCol, const std::string& _sType);
125 bool setCategories(const VectorIndex& _vCol, const std::vector<std::string>& vCategories);
126 int getLines(bool _bFull = false) const;
127 int getElemsInColumn(size_t col) const;
128 int getFilledElemsInColumn(size_t col) const;
129 int getCols(bool _bFull = false) const;
130 size_t getSize() const;
131
132
133 // READ ACCESS METHODS
134 mu::value_type readMem(size_t _nLine, size_t _nCol) const;
135 mu::value_type readMemInterpolated(double _dLine, double _dCol) const;
136 std::vector<mu::value_type> readMem(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
137 Matrix readMemAsMatrix(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
138 ValueVector readMixedMem(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
139 ValueVector readMemAsString(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
140 TableColumn::ColumnType getType(const VectorIndex& _vCol) const;
141 ValueVector getCategoryList(const VectorIndex& _vCol) const;
142 Memory* extractRange(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
143 void copyElementsInto(std::vector<mu::value_type>* vTarget, const VectorIndex& _vLine, const VectorIndex& _vCol) const;
144 std::string getHeadLineElement(size_t _i) const;
145 std::vector<std::string> getHeadLineElement(const VectorIndex& _vCol) const;
146 size_t getAppendedZeroes(size_t _i) const;
147 size_t getHeadlineCount() const;
148 std::string getComment() const;
150
151 // WRITE ACCESS METHODS
152 void writeSingletonData(Indices& _idx, const mu::value_type& _dData);
153 void writeSingletonData(Indices& _idx, const std::string& _sValue);
154 void writeData(int _nLine, int _nCol, const mu::value_type& _dData);
155 void writeDataDirect(int _nLine, int _nCol, const mu::value_type& _dData);
156 void writeDataDirectUnsafe(int _nLine, int _nCol, const mu::value_type& _dData);
157 void writeData(int _nLine, int _nCol, const std::string& sValue);
158 void writeData(Indices& _idx, mu::value_type* _dData, unsigned int _nNum);
159 void writeData(Indices& _idx, const ValueVector& _values);
160 bool setHeadLineElement(size_t _i, const std::string& _sHead);
161 void writeComment(const std::string& comment);
162 void setMetaData(const NumeRe::TableMetaData& meta);
163 void markModified();
164
165 bool save(std::string _sFileName, const std::string& sTableName, unsigned short nPrecision);
166 bool getSaveStatus() const;
167 void setSaveStatus(bool _bIsSaved);
168 long long int getLastSaved() const;
169 std::vector<int> sortElements(int i1, int i2, int j1 = 0, int j2 = 0, const std::string& sSortingExpression = "");
170 void deleteEntry(int _nLine, int _nCol);
171 void deleteBulk(const VectorIndex& _vLine, const VectorIndex& _vCol);
172 NumeRe::Table extractTable(const std::string& _sTable, const VectorIndex& lines, const VectorIndex& cols);
173 void importTable(NumeRe::Table _table, const VectorIndex& lines, const VectorIndex& cols);
174
175 // MAFIMPLEMENTATIONS
176 mu::value_type std(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
177 mu::value_type avg(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
178 mu::value_type max(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
179 mu::value_type min(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
180 mu::value_type prd(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
181 mu::value_type sum(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
182 mu::value_type num(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
183 mu::value_type and_func(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
184 mu::value_type or_func(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
185 mu::value_type xor_func(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
186 mu::value_type cnt(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
187 mu::value_type norm(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
188 mu::value_type cmp(const VectorIndex& _vLine, const VectorIndex& _vCol, mu::value_type dRef = 0.0, int _nType = 0) const;
189 mu::value_type med(const VectorIndex& _vLine, const VectorIndex& _vCol) const;
190 mu::value_type pct(const VectorIndex& _vLine, const VectorIndex& _vCol, mu::value_type dPct = 0.5) const;
191 std::vector<mu::value_type> size(const VectorIndex& _vIndex, int dir) const;
192 std::vector<mu::value_type> minpos(const VectorIndex& _vIndex, int dir) const;
193 std::vector<mu::value_type> maxpos(const VectorIndex& _vIndex, int dir) const;
194 std::vector<mu::value_type> findCols(const std::vector<std::string>& vColNames) const;
195 std::vector<mu::value_type> countIfEqual(const VectorIndex& _vCols, const std::vector<mu::value_type>& vValues, const std::vector<std::string>& vStringValues) const;
196 std::vector<mu::value_type> getIndex(size_t col, const std::vector<mu::value_type>& vValues, const std::vector<std::string>& vStringValues) const;
197 AnovaResult getOneWayAnova(size_t colCategories, size_t colValues, const VectorIndex& _vIndex, double significance) const;
198 mu::value_type getCovariance(size_t col1, const VectorIndex& _vIndex1, size_t col2, const VectorIndex& _vIndex2) const;
199 mu::value_type getPearsonCorr(size_t col1, const VectorIndex& _vIndex1, size_t col2, const VectorIndex& _vIndex2) const;
200 mu::value_type getSpearmanCorr(size_t col1, const VectorIndex& _vIndex1, size_t col2, const VectorIndex& _vIndex2) const;
201 std::vector<mu::value_type> getRank(size_t col, const VectorIndex& _vIndex, RankingStrategy _strat) const;
202 std::vector<mu::value_type> getZScore(size_t col, const VectorIndex& _vIndex) const;
203 std::vector<mu::value_type> getBins(size_t col, size_t nBins) const;
204
205 bool smooth(VectorIndex _vLine, VectorIndex _vCol, NumeRe::FilterSettings _settings, AppDir Direction = ALL);
206 bool retouch(VectorIndex _vLine, VectorIndex _vCol, AppDir Direction = ALL);
207 bool resample(VectorIndex _vLine, VectorIndex _vCol, std::pair<size_t,size_t> samples, AppDir Direction = ALL, std::string sFilter = "lanczos3");
208
209};
210
211#endif
212
This class defines a dynamic size 2D matrix with a single 1D internal buffer. If the internal buffer ...
This class represents a single table in memory, or a - so to say - single memory page to be handled b...
Definition: memory.hpp:68
void writeDataDirect(int _nLine, int _nCol, const mu::value_type &_dData)
This member function provides an unsafe but direct way of writing data to the table....
Definition: memory.cpp:1249
ValueVector readMixedMem(const VectorIndex &_vLine, const VectorIndex &_vCol) const
This member function returns the elements stored at the selected positions.
Definition: memory.cpp:554
std::vector< mu::value_type > size(const VectorIndex &_vIndex, int dir) const
Implementation of the SIZE multi argument function.
Definition: memory.cpp:2873
size_t getHeadlineCount() const
This member function returns the number of lines needed for the table column headline of the selected...
Definition: memory.cpp:1153
~Memory()
Memory class destructor, which will free the allocated memory.
Definition: memory.cpp:73
NumeRe::Table extractTable(const std::string &_sTable, const VectorIndex &lines, const VectorIndex &cols)
Create a copy-efficient table object from the data contents.
Definition: memory.cpp:1803
bool getSaveStatus() const
Returns, whether the contents of the current table are already saved into either a usual file or into...
Definition: memory.cpp:1009
bool retouch(VectorIndex _vLine, VectorIndex _vCol, AppDir Direction=ALL)
This method is the retouching main method. It will redirect the control into the specialized member f...
Definition: memory.cpp:3680
std::vector< mu::value_type > getBins(size_t col, size_t nBins) const
Calculate the number of elements per bin in the selected column.
Definition: memory.cpp:3602
bool bSaveMutex
Definition: memory.hpp:94
std::vector< mu::value_type > countIfEqual(const VectorIndex &_vCols, const std::vector< mu::value_type > &vValues, const std::vector< std::string > &vStringValues) const
Counts all values in the selected columns, which match to the passed values (either numerically or st...
Definition: memory.cpp:3172
int getFilledElemsInColumn(size_t col) const
Returns the number of filled elements in the selected column without the trailing but with the intern...
Definition: memory.cpp:311
mu::value_type num(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the NUM multi argument function.
Definition: memory.cpp:2288
bool retouch1D(const VectorIndex &_vLine, const VectorIndex &_vCol, AppDir Direction)
This member function retouches single dimension data (along columns or rows).
Definition: memory.cpp:3744
void writeComment(const std::string &comment)
Update the comment associated with this table.
Definition: memory.cpp:1094
mu::value_type readMemInterpolated(double _dLine, double _dCol) const
This member function returns a (bilinearily) interpolated element at the selected double positions.
Definition: memory.cpp:398
std::string getComment() const
Return the comment associated with this table.
Definition: memory.cpp:1189
mu::value_type sum(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the SUM multi argument function.
Definition: memory.cpp:2254
int getLines(bool _bFull=false) const
This member function will return the number of lines, which are currently available in this table.
Definition: memory.cpp:258
bool convertColumns(const VectorIndex &_vCol, const std::string &_sType)
This member function tries to convert the selected columns to the target column type,...
Definition: memory.cpp:916
mu::value_type xor_func(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the XOR multi argument function.
Definition: memory.cpp:2446
NumeRe::TableMetaData getMetaData() const
Return the internal meta data structure.
Definition: memory.cpp:1202
mu::value_type std(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the STD multi argument function.
Definition: memory.cpp:2099
void markModified()
Mark this table as modified.
Definition: memory.cpp:1121
int getCols(bool _bFull=false) const
This member function will return the number of columns, which are currently available in this table.
Definition: memory.cpp:241
TableColumnArray memArray
Definition: memory.hpp:89
bool isValid() const
Returns true, if at least a single valid value is available in this table.
Definition: memory.cpp:833
std::vector< mu::value_type > getZScore(size_t col, const VectorIndex &_vIndex) const
Calculate the standardized values of the selected column.
Definition: memory.cpp:3575
mu::value_type norm(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the NORM multi argument function.
Definition: memory.cpp:2551
mu::value_type min(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the MIN multi argument function.
Definition: memory.cpp:2185
mu::value_type cmp(const VectorIndex &_vLine, const VectorIndex &_vCol, mu::value_type dRef=0.0, int _nType=0) const
Implementation for the CMP multi argument function.
Definition: memory.cpp:2587
Memory()
Default constructor.
Definition: memory.cpp:48
void writeData(int _nLine, int _nCol, const mu::value_type &_dData)
This member function writes the passed value to the selected position. The table is automatically enl...
Definition: memory.cpp:1219
mu::value_type pct(const VectorIndex &_vLine, const VectorIndex &_vCol, mu::value_type dPct=0.5) const
Implementation for the PCT multi argument function.
Definition: memory.cpp:2803
bool retouch2D(const VectorIndex &_vLine, const VectorIndex &_vCol)
This member function retouches two dimensional data (using a specialized filter class instance).
Definition: memory.cpp:3866
virtual bool isValue(int line, int col) override
Override for the virtual Sorter class member function. Returns true, if the selected element is a val...
Definition: memory.cpp:1786
size_t getSize() const
Returns the overall used number of bytes for this table.
Definition: memory.cpp:327
mu::value_type prd(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the PRD multi argument function.
Definition: memory.cpp:2220
void importTable(NumeRe::Table _table, const VectorIndex &lines, const VectorIndex &cols)
Import data from a copy-efficient table object. Completely replaces the contents, which were in the i...
Definition: memory.cpp:1834
long long int getLastSaved() const
This member function returns the time- point, where the table was saved last time.
Definition: memory.cpp:1534
bool isValidElement(size_t _nLine, size_t _nCol) const
Returns true, if the element at the selected positions is valid. Only checks internally,...
Definition: memory.cpp:817
void writeDataDirectUnsafe(int _nLine, int _nCol, const mu::value_type &_dData)
This member function provides an even more unsafe but direct way of writing data to the table....
Definition: memory.cpp:1271
void reorderColumn(const VectorIndex &vIndex, int i1, int i2, int j1=0)
This member function simply reorders the contents of the selected column using the passed index vecto...
Definition: memory.cpp:1744
bool clear()
This member function frees the internally used memory block completely.
Definition: memory.cpp:141
mu::value_type readMem(size_t _nLine, size_t _nCol) const
This member function returns the element stored at the selected position.
Definition: memory.cpp:350
Boundary findValidBoundary(const VectorIndex &_vLine, const VectorIndex &_vCol, int i, int j) const
This member function finds the smallest possible boundary around a set of invalid values to be used a...
Definition: memory.cpp:3949
AppDir
Definition: memory.hpp:71
@ GRID
Definition: memory.hpp:75
@ LINES
Definition: memory.hpp:73
@ COLS
Definition: memory.hpp:74
@ ALL
Definition: memory.hpp:72
mu::value_type avg(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the AVG multi argument function.
Definition: memory.cpp:2132
Matrix readMemAsMatrix(const VectorIndex &_vLine, const VectorIndex &_vCol) const
This member function returns the elements stored at the selected positions as a Matrix.
Definition: memory.cpp:497
mu::value_type or_func(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the OR multi argument function.
Definition: memory.cpp:2394
std::vector< mu::value_type > minpos(const VectorIndex &_vIndex, int dir) const
Implementation of the MINPOS multi argument function.
Definition: memory.cpp:2946
void setSaveStatus(bool _bIsSaved)
This member function changes the saved state to the passed value.
Definition: memory.cpp:1518
mu::value_type getSpearmanCorr(size_t col1, const VectorIndex &_vIndex1, size_t col2, const VectorIndex &_vIndex2) const
Implements the scorr() table method and calculates the spearman correlation coefficient of the two se...
Definition: memory.cpp:3437
AnovaResult getOneWayAnova(size_t colCategories, size_t colValues, const VectorIndex &_vIndex, double significance) const
Calculates the simples form of a ANOVA F test.
Definition: memory.cpp:3288
bool smooth(VectorIndex _vLine, VectorIndex _vCol, NumeRe::FilterSettings _settings, AppDir Direction=ALL)
This member function smoothes the data described by the passed VectorIndex indices using the passed F...
Definition: memory.cpp:4138
mu::value_type getCovariance(size_t col1, const VectorIndex &_vIndex1, size_t col2, const VectorIndex &_vIndex2) const
Implements the cov() table method and calculates the covariance of the two selected columns.
Definition: memory.cpp:3380
bool onlyValidValues(const VectorIndex &_vLine, const VectorIndex &_vCol) const
This method is a wrapper for detecting, whether a row or column does only contain valid values (no Na...
Definition: memory.cpp:3930
void writeSingletonData(Indices &_idx, const mu::value_type &_dData)
This member function writes multiple copies of a single value to a range in the table....
Definition: memory.cpp:1394
std::vector< mu::value_type > maxpos(const VectorIndex &_vIndex, int dir) const
Implementation of the MAXPOS multi argument function.
Definition: memory.cpp:3027
std::vector< mu::value_type > getRank(size_t col, const VectorIndex &_vIndex, RankingStrategy _strat) const
Rank the selected column according the selected ranking strategy.
Definition: memory.cpp:3501
mu::value_type med(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the MED multi argument function.
Definition: memory.cpp:2736
mu::value_type getPearsonCorr(size_t col1, const VectorIndex &_vIndex1, size_t col2, const VectorIndex &_vIndex2) const
Implements the pcorr() table method and calculates the pearson correlation coefficient of the two sel...
Definition: memory.cpp:3413
mu::value_type cnt(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the CNT multi argument function.
Definition: memory.cpp:2508
void copyElementsInto(std::vector< mu::value_type > *vTarget, const VectorIndex &_vLine, const VectorIndex &_vCol) const
This member function will copy the selected elements into the passed vector instance....
Definition: memory.cpp:768
int getElemsInColumn(size_t col) const
Returns the number of elements in the selected column (but might contain invalid values).
Definition: memory.cpp:293
TableColumn::ColumnType getType(const VectorIndex &_vCol) const
Returns the "common" type of the selected columns.
Definition: memory.cpp:657
Memory & operator=(const Memory &other)
Assignment operator.
Definition: memory.cpp:160
bool resizeMemory(size_t _nLines, size_t _nCols)
This member function will handle all memory grow operations by doubling the base size,...
Definition: memory.cpp:221
size_t getAppendedZeroes(size_t _i) const
Returns the number of empty cells at the end of the selected columns.
Definition: memory.cpp:1136
virtual int compare(int i, int j, int col) override
Override for the virtual Sorter class member function. Returns 0, if both elements are equal,...
Definition: memory.cpp:1767
bool Allocate(size_t _nNCols, bool shrink=false)
This member function is the Memory class allocator. It will handle all memory allocations.
Definition: memory.cpp:89
ValueVector getCategoryList(const VectorIndex &_vCol) const
Returns a key-value list containing the categories and their respective index.
Definition: memory.cpp:685
void deleteEntry(int _nLine, int _nCol)
This member function deletes a single entry from the memory table.
Definition: memory.cpp:1952
std::vector< int > sortElements(int i1, int i2, int j1=0, int j2=0, const std::string &sSortingExpression="")
This member function is the interface function for the Sorter class. It will pre- evaluate the passed...
Definition: memory.cpp:1555
void smoothingWindow2D(const VectorIndex &_vLine, const VectorIndex &_vCol, size_t i, size_t j, NumeRe::Filter *_filter)
This private member function realizes the application of a smoothing window to 2D data sets.
Definition: memory.cpp:4069
mu::value_type max(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the MAX multi argument function.
Definition: memory.cpp:2150
RankingStrategy
Definition: memory.hpp:79
@ RANK_DENSE
Definition: memory.hpp:80
@ RANK_COMPETETIVE
Definition: memory.hpp:81
@ RANK_FRACTIONAL
Definition: memory.hpp:82
mu::value_type and_func(const VectorIndex &_vLine, const VectorIndex &_vCol) const
Implementation for the AND multi argument function.
Definition: memory.cpp:2334
bool setCategories(const VectorIndex &_vCol, const std::vector< std::string > &vCategories)
Updates the categories of a categorical column and switches the column type if necessary.
Definition: memory.cpp:963
void calculateStats(const VectorIndex &_vLine, const VectorIndex &_vCol, std::vector< StatsLogic > &operation) const
Driver code for simplifying the calculation of various stats using OpenMP, if possible.
Definition: memory.cpp:2021
bool shrink()
This member function shrinks the table memory to the smallest possible dimensions reachable in powers...
Definition: memory.cpp:847
void setMetaData(const NumeRe::TableMetaData &meta)
Update the internal meta data with the passed one.
Definition: memory.cpp:1109
std::vector< mu::value_type > findCols(const std::vector< std::string > &vColNames) const
Finds the columns IDs, whose headlines match to the passed strings. Can return multiple column IDs pe...
Definition: memory.cpp:3140
Memory * extractRange(const VectorIndex &_vLine, const VectorIndex &_vCol) const
This member function extracts a range of this table and returns it as a new Memory instance.
Definition: memory.cpp:723
ValueVector readMemAsString(const VectorIndex &_vLine, const VectorIndex &_vCol) const
This member function returns the elements stored at the selected positions.
Definition: memory.cpp:606
NumeRe::TableMetaData m_meta
Definition: memory.hpp:90
bool save(std::string _sFileName, const std::string &sTableName, unsigned short nPrecision)
This member function is used for saving the contents of this memory page into a file....
Definition: memory.cpp:1897
void createTableHeaders()
This member function creates the column headlines, if they are empty.
Definition: memory.cpp:121
bool setHeadLineElement(size_t _i, const std::string &_sHead)
Writes a new table column headline to the selected column.
Definition: memory.cpp:1068
void convert()
This member function tries to convert all string columns to value columns, if it is possible.
Definition: memory.cpp:888
bool bSortCaseInsensitive
Definition: memory.hpp:95
bool resample(VectorIndex _vLine, VectorIndex _vCol, std::pair< size_t, size_t > samples, AppDir Direction=ALL, std::string sFilter="lanczos3")
This member function resamples the data described by the passed coordinates using the new samples nSa...
Definition: memory.cpp:4315
void smoothingWindow1D(const VectorIndex &_vLine, const VectorIndex &_vCol, size_t i, size_t j, NumeRe::Filter *_filter, bool smoothLines)
This private member function realizes the application of a smoothing window to 1D data sets.
Definition: memory.cpp:4004
int nCalcLines
Definition: memory.hpp:92
std::vector< mu::value_type > getIndex(size_t col, const std::vector< mu::value_type > &vValues, const std::vector< std::string > &vStringValues) const
Determines the positions of all elements, which correspond to the passed values (either numerically o...
Definition: memory.cpp:3233
void deleteBulk(const VectorIndex &_vLine, const VectorIndex &_vCol)
This member function deletes a whole range of entries from the memory table.
Definition: memory.cpp:1982
std::string getHeadLineElement(size_t _i) const
Returns the table column headline for the selected column. Will return a default headline,...
Definition: memory.cpp:1025
This class represents the central memory managing instance. It will handle all tables and clusters,...
This class represents the file input and output adapter for the MemoryManager class,...
Definition: fileadapter.hpp:39
This is an abstract base class for any type of a data filter. Requires some methods to be implemented...
Definition: filtering.hpp:117
This data container is a copy- efficient table to interchange data between Kernel and GUI.
Definition: table.hpp:87
Abstract parent class to implement the sorting functionality (using Quicksort) on a more generic leve...
Definition: sorter.hpp:31
This class abstracts all the index logics, i.e. the logical differences between single indices and in...
Definition: structures.hpp:42
std::vector< std::string > ValueVector
This type defines a generic value vector.
Definition: memory.hpp:58
MUP_BASETYPE value_type
The numeric datatype used by the parser.
Definition: muParserDef.h:251
Contains the relevant results of the ANOVA F test.
Definition: memory.hpp:40
mu::value_type m_FRatio
Definition: memory.hpp:41
mu::value_type m_significance
Definition: memory.hpp:43
mu::value_type m_significanceVal
Definition: memory.hpp:42
bool m_isSignificant
Definition: memory.hpp:44
size_t m_numCategories
Definition: memory.hpp:45
This structure contains the information of a two-dimensional boundary.
This structure is central for managing the indices of a table or cluster read or write data access....
This structure contains the necessary information to create an instance of one of the following filte...
Definition: filtering.hpp:40
Encapsulating structure to gather all table meta data information.
Definition: table.hpp:32
Simplify the creation of some statistics by externalizing the operation code and unifying the driver ...
Definition: statslogic.hpp:30
std::vector< TblColPtr > TableColumnArray
This typedef represents the actual table, which is implemented using a std::vector.