The DejaVU Framework --
hush 3.1
-
[up]
[top] -
index
make
include
source
logic
grammar
scripts
html
configure
mx
slides
talks
scenes
reports
projects
<body bgcolor="#FFFFFF" text="#000000">
//=============================================================================
// table.h by Frank Luna (C) 2004 All Rights Reserved.
//=============================================================================
ifndef TABLE_H
define TABLE_H
include
include
template
<h4 align=right text=red> Table</h4><hr>
class Table
{
public:
Table()
: mRows(0), mCols(0)
{
}
Table(int m, int n)
: mRows(m), mCols(n), mMatrix(m*n)
{
}
Table(int m, int n, const T& value)
: mRows(m), mCols(n), mMatrix(m*n, value)
{
}
// For non-const objects
T& operator()(int i, int j)
{
return mMatrix[i*mCols+j];
}
// For const objects
const T& operator()(int i, int j)const
{
return mMatrix[i*mCols+j];
}
// Add typename to let compiler know type and not static variable.
typedef typename std::vector::iterator iter;
typedef typename std::vector::const_iterator citer;
// For non-const objects
iter begin(){ return mMatrix.begin(); }
iter end() { return mMatrix.end(); }
// For const objects
citer begin() const { return mMatrix.begin(); }
citer end() const { return mMatrix.end(); }
int numRows() const { return mRows; }
int numCols() const { return mCols; }
void resize(int m, int n)
{
mRows = m;
mCols = n;
mMatrix.resize(m*n);
}
void resize(int m, int n, const T& value)
{
mRows = m;
mCols = n;
mMatrix.resize(m*n, value);
}
private:
int mRows;
int mCols;
std::vector mMatrix;
};<hr>
endif // TABLE_H
<hr>
<style type="text/css">
div.mainnavigate {
margin: 20px 2px;
/*
background-color: #ffffff;
*/
border: 1px solid black;
}
</style>
<div class=xnavigate>
[]
<black>readme</black>
course(s)
preface
<black>I</black>
1
2
<black>II</black>
3
4
<black>III</black>
5
6
7
<black>IV</black>
8
9
10
<black>V</black>
11
12
afterthought(s)
<black>appendix</black>
reference(s)
example(s)
<black>resource(s)</black>
_
</div>
<hr>
(C) Æliens
20/2/2008
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.
</div>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-2780434-1";
urchinTracker();
</script>
</body>
</html>
<hr>
<hr>
<table cellpadding=10>
<tr>
<td>
<address>
Hush Online Technology
</address>
hush@cs.vu.nl
<br>04/07/09
</td><td>
</td>
<td></td><td></td><td></td><td></td><td></td><td></td><td></td>
<td>
</td>
</tr>
</table>