#include </usr1/tp517/Tumble/trunk/src/tumble/cell.h>
Inheritance diagram for FaceCell:
Public Types | |
typedef vector::iterator | edge_iterator |
typedef vector::const_iterator | edge_const_iterator |
Public Member Functions | |
FaceCell (PersistantStore &) | |
Generate an empty FaceCell. | |
virtual | ~FaceCell () |
Delete edges array. | |
void | add_edge (EdgeCell *e) |
Add an EdgeCell to list of edges that are sub-cells. | |
void | delete_edge (EdgeCell *e) |
Delete an EdgeCell from the list of edges that are sub-cells. | |
bool | has_vertex (const VertexCell *v) const |
Check if this FaceCell has given VertexCell as a sub-cell. | |
bool | has_edge (const EdgeCell *e) const |
Check if this FaceCell has given EdgeCell as a sub-cell. | |
int | num_edges () const |
edge_iterator | begin_edges () |
edge_const_iterator | begin_edges () const |
edge_iterator | end_edges () |
edge_const_iterator | end_edges () const |
EdgeCell * | get_canon_edge () |
const EdgeCell * | get_canon_edge () const |
Private Types | |
typedef PersistantVector< EdgeCell * > | vector |
Private Member Functions | |
FaceCell (const FaceCell &) | |
FaceCell & | operator= (const FaceCell &o) |
Private Attributes | |
vector | edges_ |
The FaceCell keeps track of which EdgeCell's are sub-cells of itself. Since there may be arbirarily many, the set of EdgeCell's is kept in a size-doubling array.
Definition at line 242 of file cell.h.
typedef PersistantVector<EdgeCell*> FaceCell::vector [private] |
typedef vector::iterator FaceCell::edge_iterator |
typedef vector::const_iterator FaceCell::edge_const_iterator |
FaceCell::FaceCell | ( | PersistantStore & | store | ) |
FaceCell::FaceCell | ( | const FaceCell & | ) | [private] |
void FaceCell::add_edge | ( | EdgeCell * | e | ) |
Add an EdgeCell to list of edges that are sub-cells.
If edges is too small, then double its size.
e | The EdgeCell to add |
Definition at line 283 of file cell.C.
References edges_, and has_edge().
Here is the call graph for this function:
void FaceCell::delete_edge | ( | EdgeCell * | e | ) |
Delete an EdgeCell from the list of edges that are sub-cells.
e | The EdgeCell to delete |
Definition at line 295 of file cell.C.
References begin_edges(), edges_, and end_edges().
Here is the call graph for this function:
bool FaceCell::has_vertex | ( | const VertexCell * | v | ) | const |
Check if this FaceCell has given VertexCell as a sub-cell.
Definition at line 311 of file cell.C.
References begin_edges(), and end_edges().
Here is the call graph for this function:
bool FaceCell::has_edge | ( | const EdgeCell * | e | ) | const |
Check if this FaceCell has given EdgeCell as a sub-cell.
Definition at line 317 of file cell.C.
References begin_edges(), and end_edges().
Referenced by add_edge().
Here is the call graph for this function:
int FaceCell::num_edges | ( | ) | const [inline] |
edge_iterator FaceCell::begin_edges | ( | ) | [inline] |
Definition at line 266 of file cell.h.
References edges_.
Referenced by delete_edge(), get_canon_edge(), BezierTriangle::get_edge(), has_edge(), has_vertex(), and operator<<().
edge_const_iterator FaceCell::begin_edges | ( | ) | const [inline] |
edge_iterator FaceCell::end_edges | ( | ) | [inline] |
Definition at line 269 of file cell.h.
References edges_.
Referenced by delete_edge(), has_edge(), has_vertex(), and operator<<().
edge_const_iterator FaceCell::end_edges | ( | ) | const [inline] |
EdgeCell * FaceCell::get_canon_edge | ( | ) |
Definition at line 327 of file cell.C.
References begin_edges(), and num_edges().
Here is the call graph for this function:
const EdgeCell * FaceCell::get_canon_edge | ( | ) | const |
Definition at line 322 of file cell.C.
References begin_edges(), and num_edges().
Here is the call graph for this function:
vector FaceCell::edges_ [private] |
Definition at line 245 of file cell.h.
Referenced by add_edge(), begin_edges(), delete_edge(), end_edges(), FaceCell(), and num_edges().