25#ifndef STRINGMEMORY_HPP
26#define STRINGMEMORY_HPP
35 void reorderColumn(
const std::vector<int>& vIndex,
long long int i1,
long long int i2,
long long int j1 = 0);
36 virtual int compare(
int i,
int j,
int col)
override;
37 virtual bool isValue(
int line,
int col)
override;
42 std::vector<std::vector<std::string> >
sStrings;
44 std::vector<int>
sortElements(
long long int i1,
long long int i2,
long long int j1,
long long int j2,
const std::string& sSortingExpression);
56 bool writeString(
const std::string& _sString,
unsigned int _nthString = std::string::npos,
unsigned int nCol = 0);
57 std::string
readString(
unsigned int _nthString = std::string::npos,
unsigned int nCol = 0);
59 std::string
maxString(
unsigned int i1 = 0,
unsigned int i2 = std::string::npos,
unsigned int nCol = 0);
61 std::string
minString(
unsigned int i1 = 0,
unsigned int i2 = std::string::npos,
unsigned int nCol = 0);
63 std::string
sumString(
unsigned int i1 = 0,
unsigned int i2 = std::string::npos,
unsigned int nCol = 0);
71 if (nCol == std::string::npos)
74 unsigned int nCnt = 0;
124 if (nCol == std::string::npos)
127 unsigned int nSize = 0;
159 inline std::vector<int>
sortStringElements(
long long int i1,
long long int i2,
long long int j1,
long long int j2,
const std::string& sSortingExpression)
Abstract parent class to implement the sorting functionality (using Quicksort) on a more generic leve...
bool bSortCaseInsensitive
virtual int compare(int i, int j, int col) override
std::vector< int > sortElements(long long int i1, long long int i2, long long int j1, long long int j2, const std::string &sSortingExpression)
std::vector< std::vector< std::string > > sStrings
virtual bool isValue(int line, int col) override
void reorderColumn(const std::vector< int > &vIndex, long long int i1, long long int i2, long long int j1=0)
bool writeString(const std::string &_sString, unsigned int _nthString=std::string::npos, unsigned int nCol=0)
StringInternalMemory _stringIntMem
std::string maxString(unsigned int i1=0, unsigned int i2=std::string::npos, unsigned int nCol=0)
int getStringSize(unsigned int nCol=std::string::npos) const
unsigned int getStringCols() const
unsigned int getStringElements(unsigned int nCol=std::string::npos) const
std::string readString(unsigned int _nthString=std::string::npos, unsigned int nCol=0)
bool clearStringElements()
std::string minString(unsigned int i1=0, unsigned int i2=std::string::npos, unsigned int nCol=0)
bool removeStringElements(unsigned int nCol=0)
std::vector< int > sortStringElements(long long int i1, long long int i2, long long int j1, long long int j2, const std::string &sSortingExpression)
std::string sumString(unsigned int i1=0, unsigned int i2=std::string::npos, unsigned int nCol=0)
This class abstracts all the index logics, i.e. the logical differences between single indices and in...