COOPY » Guide  version 0.6.5
Public Member Functions | Static Public Member Functions | Data Fields
coopy::store::SparseSheet< T > Class Template Reference

#include <SparseSheet.h>

Inheritance diagram for coopy::store::SparseSheet< T >:
coopy::store::DataSheet coopy::store::RefCount

Public Member Functions

 SparseSheet ()
const SparseSheetoperator= (const SparseSheet &alt)
bool resize (int w, int h, const T &zero)
bool nonDestructiveResize (int w, int h, const T &zero)
void reheight (int h)
void clear ()
int width () const
int height () const
const T * pcell_const (int x, int y) const
T * pcell (int x, int y)
const T & cell (int x, int y) const
const T & cell_const (int x, int y) const
T & cell (int x, int y)
bool remove (int x, int y)
const std::set< int > & getCellsInRow (int y) const
const std::set< int > & getCellsInCol (int x) const
virtual std::string getDescription () const
virtual ColumnRef insertColumn (const ColumnRef &base, const ColumnInfo &info)
virtual bool modifyColumn (const ColumnRef &base, const ColumnInfo &info)
virtual std::string cellString (int x, int y) const =0
virtual std::string cellString (int x, int y, bool &escaped) const
virtual bool cellString (int x, int y, const std::string &str)
 sets the contents of cell in column x, row y to a specified string value
virtual bool cellString (int x, int y, const std::string &str, bool escaped)
 sets the contents of cell in column x, row y to a specified string value, or to NULL if "escaped" is set.
virtual SheetCell cellSummary (int x, int y) const
virtual bool cellSummary (int x, int y, const SheetCell &c)
 sets the contents of cell in column x, row y to a specified value.
virtual bool canEscape () const
virtual SheetCell getCell (int x, int y) const
virtual bool setCell (int x, int y, const SheetCell &c)
 set contents of cell in column x, row y
std::string encode (const SheetStyle &style) const
 Render table as serialized text, using the specified style.
std::string toString () const
 Render table as serialized text, using a default style.
virtual bool clearCache ()
 Remove any cached values if used, e.g.
virtual SheetSchemagetSchema () const
virtual bool deleteColumn (const ColumnRef &column)
virtual ColumnRef insertColumn (const ColumnRef &base)
virtual ColumnRef moveColumn (const ColumnRef &src, const ColumnRef &base)
virtual bool deleteRow (const RowRef &src)
virtual bool deleteRows (const RowRef &first, const RowRef &last)
virtual bool deleteData (int offset=0)
virtual bool hasDimension () const
virtual bool forceWidth (int width)
virtual bool forceHeight (int height)
virtual RowRef insertRow (const RowRef &base)
virtual Poly< SheetRowinsertRow ()
virtual RowRef moveRow (const RowRef &src, const RowRef &base)
virtual bool copyData (const DataSheet &src)
virtual bool canWrite ()
virtual bool canResize ()
virtual bool hasExternalColumnNames () const
virtual bool resize (int w, int h)
virtual Poly< SheetRowinsertRowOrdered (const RowRef &base)
virtual bool applyRowCache (const RowCache &cache, int row, SheetCell *result)
virtual bool applySchema (const SheetSchema &ss)
virtual bool addedHeader ()
virtual std::vector< std::string > getNestedDescription () const
virtual std::string desc () const
virtual std::string getHash (bool cache=false) const
virtual std::string getRawHash () const
virtual DataSheettail ()
virtual const DataSheettail_const () const
virtual const DataSheetdataTail () const
virtual bool isSequential () const
virtual DataSheetgetNestedSheet (int x, int y)
virtual Poly< AppearancegetCellAppearance (int x, int y)
virtual Poly< AppearancegetRowAppearance (int y)
virtual Poly< AppearancegetColAppearance (int x)
virtual bool hasSheetName () const
virtual bool hasRowOffset () const
virtual bool setPool (Pool *pool)
virtual PoolgetPool () const
virtual void setMeta (SheetSchema *hint)
virtual SheetSchemagetMeta () const
virtual bool beginTransaction ()
virtual bool rollbackTransaction ()
virtual bool endTransaction ()
virtual void * getDatabase () const
virtual coopy::cmp::ComparegetComparisonMethod ()
int addReference ()
int removeReference ()
int getReferenceCount ()

Static Public Member Functions

static std::string encodeCell (const SheetCell &str, const SheetStyle &style)
 Encode a cell value as text using a specified style.

Data Fields

efficient_map< long long, T > data
efficient_map< long, std::set
< int > > 
row
efficient_map< long, std::set
< int > > 
col
int h
int w

Detailed Description

template<class T>
class coopy::store::SparseSheet< T >

Definition at line 23 of file SparseSheet.h.


Constructor & Destructor Documentation

template<class T>
coopy::store::SparseSheet< T >::SparseSheet ( ) [inline]

Definition at line 33 of file SparseSheet.h.


Member Function Documentation

virtual bool coopy::store::DataSheet::addedHeader ( ) [inline, virtual, inherited]
int coopy::store::RefCount::addReference ( ) [inline, inherited]
bool DataSheet::applyRowCache ( const RowCache cache,
int  row,
SheetCell result 
) [virtual, inherited]
virtual bool coopy::store::DataSheet::applySchema ( const SheetSchema ss) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::beginTransaction ( ) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::canEscape ( ) const [inline, virtual, inherited]
Returns:
true iff cells in this table may be NULL

Definition at line 139 of file DataSheet.h.

virtual bool coopy::store::DataSheet::canResize ( ) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::canWrite ( ) [inline, virtual, inherited]
template<class T>
T& coopy::store::SparseSheet< T >::cell ( int  x,
int  y 
) [inline]

Definition at line 117 of file SparseSheet.h.

template<class T>
const T& coopy::store::SparseSheet< T >::cell ( int  x,
int  y 
) const [inline]
template<class T>
const T& coopy::store::SparseSheet< T >::cell_const ( int  x,
int  y 
) const [inline]

Definition at line 109 of file SparseSheet.h.

Referenced by coopy::cmp::MeasurePass::flatten().

virtual std::string coopy::store::DataSheet::cellString ( int  x,
int  y 
) const [pure virtual, inherited]
virtual bool coopy::store::DataSheet::cellString ( int  x,
int  y,
const std::string &  str 
) [inline, virtual, inherited]
virtual std::string coopy::store::DataSheet::cellString ( int  x,
int  y,
bool &  escaped 
) const [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::cellString ( int  x,
int  y,
const std::string &  str,
bool  escaped 
) [inline, virtual, inherited]
virtual SheetCell coopy::store::DataSheet::cellSummary ( int  x,
int  y 
) const [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::cellSummary ( int  x,
int  y,
const SheetCell c 
) [inline, virtual, inherited]

sets the contents of cell in column x, row y to a specified value.

Reimplemented in coopy::fold::FoldedSheet, coopy::store::PolySheet, and coopy::store::gnumeric::GnumericSheet.

Definition at line 130 of file DataSheet.h.

References coopy::store::DataSheet::cellString(), coopy::store::SheetCell::escaped, and coopy::store::SheetCell::text.

template<class T>
void coopy::store::SparseSheet< T >::clear ( ) [inline]
virtual bool coopy::store::DataSheet::clearCache ( ) [inline, virtual, inherited]

Remove any cached values if used, e.g.

in proxies for remote tables.

Reimplemented in coopy::store::remotesql::RemoteSqlSheet, and coopy::store::sqlite::SqliteSheet.

Definition at line 191 of file DataSheet.h.

bool DataSheet::copyData ( const DataSheet src) [virtual, inherited]
virtual const DataSheet& coopy::store::DataSheet::dataTail ( ) const [inline, virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 329 of file DataSheet.h.

Referenced by coopy::store::PolySheet::dataTail(), and coopy::cmp::Patcher::getSheet().

virtual bool coopy::store::DataSheet::deleteColumn ( const ColumnRef column) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::deleteData ( int  offset = 0) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::deleteRow ( const RowRef src) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::deleteRows ( const RowRef first,
const RowRef last 
) [inline, virtual, inherited]
virtual std::string coopy::store::DataSheet::desc ( ) const [inline, virtual, inherited]
std::string DataSheet::encode ( const SheetStyle style) const [inherited]
std::string DataSheet::encodeCell ( const SheetCell str,
const SheetStyle style 
) [static, inherited]
virtual bool coopy::store::DataSheet::endTransaction ( ) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::forceHeight ( int  height) [inline, virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 246 of file DataSheet.h.

Referenced by coopy::store::PolySheet::forceHeight().

virtual bool coopy::store::DataSheet::forceWidth ( int  width) [inline, virtual, inherited]
virtual SheetCell coopy::store::DataSheet::getCell ( int  x,
int  y 
) const [inline, virtual, inherited]
Returns:
contents of cell in column x, row y

Definition at line 148 of file DataSheet.h.

References coopy::store::DataSheet::cellSummary().

Referenced by coopy::store::DataSheet::copyData().

virtual Poly<Appearance> coopy::store::DataSheet::getCellAppearance ( int  x,
int  y 
) [inline, virtual, inherited]
template<class T>
const std::set<int>& coopy::store::SparseSheet< T >::getCellsInCol ( int  x) const [inline]

Definition at line 147 of file SparseSheet.h.

Referenced by coopy::cmp::MeasureMan::compare1().

template<class T>
const std::set<int>& coopy::store::SparseSheet< T >::getCellsInRow ( int  y) const [inline]

Definition at line 138 of file SparseSheet.h.

Referenced by coopy::cmp::MeasureMan::compare1().

virtual Poly<Appearance> coopy::store::DataSheet::getColAppearance ( int  x) [inline, virtual, inherited]
virtual coopy::cmp::Compare* coopy::store::DataSheet::getComparisonMethod ( ) [inline, virtual, inherited]
virtual void* coopy::store::DataSheet::getDatabase ( ) const [inline, virtual, inherited]
template<class T>
virtual std::string coopy::store::SparseSheet< T >::getDescription ( ) const [inline, virtual]

Reimplemented from coopy::store::DataSheet.

Definition at line 156 of file SparseSheet.h.

std::string DataSheet::getHash ( bool  cache = false) const [virtual, inherited]
SheetSchema * DataSheet::getMeta ( ) const [virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 12 of file DataSheet.cpp.

Referenced by coopy::store::PolySheet::getMeta(), and coopy::cmp::Patcher::metaHint().

virtual std::vector<std::string> coopy::store::DataSheet::getNestedDescription ( ) const [inline, virtual, inherited]
virtual DataSheet* coopy::store::DataSheet::getNestedSheet ( int  x,
int  y 
) [inline, virtual, inherited]

Reimplemented in coopy::fold::FoldedSheet, and coopy::store::PolySheet.

Definition at line 338 of file DataSheet.h.

Referenced by coopy::store::PolySheet::getNestedSheet(), and writePart().

virtual Pool* coopy::store::DataSheet::getPool ( ) const [inline, virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 367 of file DataSheet.h.

Referenced by coopy::store::PolySheet::getPool().

virtual std::string coopy::store::DataSheet::getRawHash ( ) const [inline, virtual, inherited]
int coopy::store::RefCount::getReferenceCount ( ) [inline, inherited]

Definition at line 40 of file RefCount.h.

virtual Poly<Appearance> coopy::store::DataSheet::getRowAppearance ( int  y) [inline, virtual, inherited]
virtual SheetSchema* coopy::store::DataSheet::getSchema ( ) const [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::hasDimension ( ) const [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::hasExternalColumnNames ( ) const [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::hasRowOffset ( ) const [inline, virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 358 of file DataSheet.h.

Referenced by coopy::store::PolySheet::hasRowOffset(), and coopy::cmp::Patcher::metaHint().

virtual bool coopy::store::DataSheet::hasSheetName ( ) const [inline, virtual, inherited]

Reimplemented in coopy::store::CsvSheet, and coopy::store::PolySheet.

Definition at line 354 of file DataSheet.h.

Referenced by coopy::store::PolySheet::hasSheetName().

template<class T>
int coopy::store::SparseSheet< T >::height ( ) const [inline, virtual]
virtual ColumnRef coopy::store::DataSheet::insertColumn ( const ColumnRef base) [inline, virtual, inherited]
template<class T>
virtual ColumnRef coopy::store::SparseSheet< T >::insertColumn ( const ColumnRef base,
const ColumnInfo info 
) [inline, virtual]

Implements coopy::store::DataSheet.

Definition at line 160 of file SparseSheet.h.

virtual RowRef coopy::store::DataSheet::insertRow ( const RowRef base) [inline, virtual, inherited]
Poly< SheetRow > DataSheet::insertRow ( ) [virtual, inherited]
Poly< SheetRow > DataSheet::insertRowOrdered ( const RowRef base) [virtual, inherited]
virtual bool coopy::store::DataSheet::isSequential ( ) const [inline, virtual, inherited]
template<class T>
virtual bool coopy::store::SparseSheet< T >::modifyColumn ( const ColumnRef base,
const ColumnInfo info 
) [inline, virtual]

Implements coopy::store::DataSheet.

Definition at line 165 of file SparseSheet.h.

virtual ColumnRef coopy::store::DataSheet::moveColumn ( const ColumnRef src,
const ColumnRef base 
) [inline, virtual, inherited]
virtual RowRef coopy::store::DataSheet::moveRow ( const RowRef src,
const RowRef base 
) [inline, virtual, inherited]
template<class T>
bool coopy::store::SparseSheet< T >::nonDestructiveResize ( int  w,
int  h,
const T &  zero 
) [inline]

Definition at line 58 of file SparseSheet.h.

template<class T>
const SparseSheet& coopy::store::SparseSheet< T >::operator= ( const SparseSheet< T > &  alt) [inline]

Definition at line 38 of file SparseSheet.h.

template<class T>
T* coopy::store::SparseSheet< T >::pcell ( int  x,
int  y 
) [inline]

Definition at line 93 of file SparseSheet.h.

template<class T>
const T* coopy::store::SparseSheet< T >::pcell_const ( int  x,
int  y 
) const [inline]

Definition at line 85 of file SparseSheet.h.

template<class T>
void coopy::store::SparseSheet< T >::reheight ( int  h) [inline]

Definition at line 65 of file SparseSheet.h.

template<class T>
bool coopy::store::SparseSheet< T >::remove ( int  x,
int  y 
) [inline]

Definition at line 129 of file SparseSheet.h.

int coopy::store::RefCount::removeReference ( ) [inline, inherited]
virtual bool coopy::store::DataSheet::resize ( int  w,
int  h 
) [inline, virtual, inherited]
template<class T>
bool coopy::store::SparseSheet< T >::resize ( int  w,
int  h,
const T &  zero 
) [inline]

Definition at line 48 of file SparseSheet.h.

virtual bool coopy::store::DataSheet::rollbackTransaction ( ) [inline, virtual, inherited]
virtual bool coopy::store::DataSheet::setCell ( int  x,
int  y,
const SheetCell c 
) [inline, virtual, inherited]

set contents of cell in column x, row y

Definition at line 157 of file DataSheet.h.

References coopy::store::DataSheet::cellSummary().

Referenced by coopy::store::DataSheet::applyRowCache(), and coopy::store::DataSheet::copyData().

void DataSheet::setMeta ( SheetSchema hint) [virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 18 of file DataSheet.cpp.

References NULL.

Referenced by coopy::store::PolySheet::setMeta(), and coopy::store::DataSheet::~DataSheet().

virtual bool coopy::store::DataSheet::setPool ( Pool pool) [inline, virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 362 of file DataSheet.h.

Referenced by coopy::store::TextBook::applyPool(), and coopy::store::PolySheet::setPool().

virtual DataSheet& coopy::store::DataSheet::tail ( ) [inline, virtual, inherited]
virtual const DataSheet& coopy::store::DataSheet::tail_const ( ) const [inline, virtual, inherited]

Reimplemented in coopy::store::PolySheet.

Definition at line 325 of file DataSheet.h.

Referenced by coopy::store::PolySheet::tail_const().

std::string coopy::store::DataSheet::toString ( ) const [inline, inherited]

Render table as serialized text, using a default style.

Definition at line 173 of file DataSheet.h.

References coopy::store::DataSheet::encode().

Referenced by coopy::cmp::SheetPatcher::changeColumn(), main(), coopy::store::TextBook::toString(), and coopy::store::socialcalc::SocialCalcTextBook::write().

template<class T>
int coopy::store::SparseSheet< T >::width ( ) const [inline, virtual]

Field Documentation

template<class T>
efficient_map<long, std::set<int> > coopy::store::SparseSheet< T >::col
template<class T>
efficient_map<long long,T> coopy::store::SparseSheet< T >::data
template<class T>
int coopy::store::SparseSheet< T >::h
template<class T>
efficient_map<long, std::set<int> > coopy::store::SparseSheet< T >::row
template<class T>
int coopy::store::SparseSheet< T >::w

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines