24 #define TTABLE_COLUMN_DELETE_AS_REMOVE
139 unsigned int AddTuple(
const std::vector<std::string>& tuple =
140 std::vector<std::string>());
179 const std::vector<std::string>& tuple = std::vector<std::string>());
182 std::vector<std::string>::const_iterator tupleBeg,
183 std::vector<std::string>::const_iterator tupleEnd);
218 void FillTuple(
const unsigned int tupleIndex,
219 const std::vector<std::string>& tuple,
220 const unsigned int fromColIndex = 0);
222 void GetTuple(std::vector<std::string>& tuple,
223 const unsigned int tupleIndex,
224 const unsigned int fromColIndex,
unsigned int toColIndex);
226 const std::vector<std::string>&
GetTuple(
const unsigned int tupleIndex);
244 void ClearTuple(
const unsigned int tupleIndex);
307 unsigned int AddColumn(
const std::vector<std::string>& col =
308 std::vector<std::string>());
352 unsigned int InsertColumn(
const unsigned int atColIndex,
353 const std::vector<std::string>& col = std::vector<std::string>());
356 std::vector<std::string>::const_iterator colBeg,
357 std::vector<std::string>::const_iterator colEnd);
384 const std::vector<std::string>& col,
385 const unsigned int fromTupleIndex = 0);
388 std::vector<std::string>::const_iterator colBeg,
389 std::vector<std::string>::const_iterator colEnd,
390 const unsigned int fromTupleIndex = 0);
431 void GetColumn(std::vector<std::string>& col,
const unsigned int colIndex,
432 const unsigned int fromTupleIndex,
unsigned int toTupleIndex);
491 std::string&
operator()(
const unsigned int tupleIndex,
492 const unsigned int colIndex);
515 const std::string&
operator()(
const unsigned int tupleIndex,
516 const unsigned int colIndex)
const;
522 unsigned int _numCols;
524 std::vector<std::vector<std::string>*> _tuples;
526 inline unsigned int IntColIndex(
const unsigned int colIndex)
const;
528 #ifndef TTABLE_COLUMN_DELETE_AS_REMOVE
529 unsigned int _numDelCols;
530 std::vector<unsigned int> _delColMap;
532 void EnlargeColMap(
const unsigned int numCols);
533 void ReduceColMap(
const unsigned int numCols);
534 void MarkColDeleted(
const unsigned int colIndex);
535 void UnMarkColDeleted(
const unsigned int colIndex);
546 return(_tuples.size());
552 #ifndef TTABLE_COLUMN_DELETE_AS_REMOVE
553 return(_numCols - _numDelCols);
559 inline unsigned int TTable::IntColIndex(
const unsigned int colIndex)
const
563 #ifndef TTABLE_COLUMN_DELETE_AS_REMOVE
564 return(_delColMap[colIndex]);