Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

mitkHEOoCTriangleMesh Class Reference

mitkHEOoCTriangleMesh - a concrete class for out-of-core triangle meshes represented by Half Edges More...

#include <mitkHEOoCTriangleMesh.h>

Inherits mitkHETriangleMesh.

Inheritance diagram for mitkHEOoCTriangleMesh:

Inheritance graph
[legend]
Collaboration diagram for mitkHEOoCTriangleMesh:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual void PrintSelf (ostream &os)
 mitkHEOoCTriangleMesh ()
void SetVertexBlockSize (unsigned int vn)
void SetEdgeBlockSize (unsigned int en)
void SetFaceBlockSize (unsigned int fn)
void SetVertexBufferSize (size_type s)
void SetEdgeBufferSize (size_type s)
void SetFaceBufferSize (size_type s)
void SetBufferedVertexBlockNum (unsigned int n)
unsigned int GetBufferedVertexBlockNum ()
void SetBufferedEdgeBlockNum (unsigned int n)
unsigned int GetBufferedEdgeBlockNum ()
void SetBufferedFaceBlockNum (unsigned int n)
unsigned int GetBufferedFaceBlockNum ()
void SetPathOfDiskBuffer (char const *path)
char const * GetPathOfDiskBuffer ()
virtual int GetDataObjectType () const
virtual void Initialize ()
virtual unsigned long long GetActualMemorySize () const
virtual void ShallowCopy (mitkDataObject *src)
virtual void DeepCopy (mitkDataObject *src)
virtual void SetVertexNumber (size_type number)
virtual void SetFaceNumber (size_type number)
virtual Vertex & GetVertex (VertexHandle v) const
virtual Edge & GetEdge (EdgeHandle e) const
virtual Edge & GetEdge (HalfEdgeHandle he) const
virtual HalfEdge & GetHalfEdge (HalfEdgeHandle he) const
virtual Face & GetFace (FaceHandle f) const
virtual Vertex const & GetVertexForRead (VertexHandle v) const
virtual Edge const & GetEdgeForRead (EdgeHandle e) const
virtual Edge const & GetEdgeForRead (HalfEdgeHandle he) const
virtual HalfEdge const & GetHalfEdgeForRead (HalfEdgeHandle he) const
virtual Face const & GetFaceForRead (FaceHandle f) const
virtual VertexHandle GetHandle (Vertex const &vert) const
virtual EdgeHandle GetHandle (Edge const &edge) const
virtual HalfEdgeHandle GetHandle (HalfEdge const &he) const
virtual FaceHandle GetHandle (Face const &face) const
virtual float * GetVertexData ()
virtual index_type * GetFaceData ()

Detailed Description

mitkHEOoCTriangleMesh - a concrete class for out-of-core triangle meshes represented by Half Edges

mitkHEOoCTriangleMesh is a concrete class for out-of-core triangle meshes represented by Half Edges. It can hold an out-of-core data set and provide the same access interfaces as mitkHETriangleMesh.

See also:
mitkHEMesh and mitkHETriangleMesh for access interfaces

mitkHEICTriangleMesh for in-core data set


Constructor & Destructor Documentation

mitkHEOoCTriangleMesh::mitkHEOoCTriangleMesh  ) 
 

Default constructor.


Member Function Documentation

virtual void mitkHEOoCTriangleMesh::DeepCopy mitkDataObject src  )  [virtual]
 

Deep copy.

Parameters:
src pointer to the source mitkDataObject

Reimplemented from mitkHEMesh.

virtual unsigned long long mitkHEOoCTriangleMesh::GetActualMemorySize  )  const [virtual]
 

Get the actual size of the data in bytes.

Returns:
Return the actual size of the data in bytes.

Implements mitkDataObject.

unsigned int mitkHEOoCTriangleMesh::GetBufferedEdgeBlockNum  ) 
 

Get the number of buffered edge blocks in memory.

Returns:
Return the number of buffered vertex blocks.

unsigned int mitkHEOoCTriangleMesh::GetBufferedFaceBlockNum  ) 
 

Get the number of buffered face blocks in memory.

Returns:
Return the number of buffered face blocks.

unsigned int mitkHEOoCTriangleMesh::GetBufferedVertexBlockNum  ) 
 

Get the number of buffered vertex blocks in memory.

Returns:
Return the number of buffered vertex blocks.

virtual int mitkHEOoCTriangleMesh::GetDataObjectType  )  const [inline, virtual]
 

Return what type of data object this is.

Returns:
Return the type of this data object.

Reimplemented from mitkHEMesh.

virtual Edge& mitkHEOoCTriangleMesh::GetEdge HalfEdgeHandle  he  )  const [virtual]
 

Get edge by half edge handle.

Parameters:
he one half edge handle of the required edge
Returns:
Return the reference to the required edge.
Note:
An edge is composed by two opposite half edges.

virtual Edge& mitkHEOoCTriangleMesh::GetEdge EdgeHandle  e  )  const [virtual]
 

Get edge by handle.

Parameters:
e the handle of the required edge
Returns:
Return the reference to the required edge.

virtual Edge const& mitkHEOoCTriangleMesh::GetEdgeForRead HalfEdgeHandle  he  )  const [virtual]
 

Get edge by half edge handle for read only.

Parameters:
he one half edge handle of the required edge
Returns:
Return the reference to the required edge.
Note:
An edge is composed by two opposite half edges.

virtual Edge const& mitkHEOoCTriangleMesh::GetEdgeForRead EdgeHandle  e  )  const [virtual]
 

Get edge by handle for read only.

Parameters:
e the handle of the required edge
Returns:
Return the reference to the required edge.

virtual Face& mitkHEOoCTriangleMesh::GetFace FaceHandle  f  )  const [virtual]
 

Get face by handle.

Parameters:
f the handle of the required face
Returns:
Return the reference to the required face.

virtual index_type* mitkHEOoCTriangleMesh::GetFaceData  )  [inline, virtual]
 

Get data pointer of this face data. This is for compatibility with mitkTriangleMesh which is used more frequently. For out-of-core data sets, it will always return NULL, because the impossibility of fitting an out-of-core data set into the main memory.

Returns:
Always return NULL.
Warning:
This function is obsolete and does nothing in this class. We strongly advise against using it in new codes;

Implements mitkMesh.

virtual Face const& mitkHEOoCTriangleMesh::GetFaceForRead FaceHandle  f  )  const [virtual]
 

Get face by handle for read only.

Parameters:
f the handle of the required face
Returns:
Return the reference to the required face.

virtual HalfEdge& mitkHEOoCTriangleMesh::GetHalfEdge HalfEdgeHandle  he  )  const [virtual]
 

Get half edge by handle.

Parameters:
he the handle of the required half edge
Returns:
Return the reference to the required half edge.

virtual HalfEdge const& mitkHEOoCTriangleMesh::GetHalfEdgeForRead HalfEdgeHandle  he  )  const [virtual]
 

Get half edge by handle for read only.

Parameters:
he the handle of the required half edge
Returns:
Return the reference to the required half edge.

virtual FaceHandle mitkHEOoCTriangleMesh::GetHandle Face const &  face  )  const [virtual]
 

Get the handle of a face.

Parameters:
face the reference to the face
Returns:
Return the handle of the face.

virtual HalfEdgeHandle mitkHEOoCTriangleMesh::GetHandle HalfEdge const &  he  )  const [inline, virtual]
 

Get the handle of a half edge.

Parameters:
he the reference to the half edge
Returns:
Return the handle of the half edge.

virtual EdgeHandle mitkHEOoCTriangleMesh::GetHandle Edge const &  edge  )  const [virtual]
 

Get the handle of an edge.

Parameters:
edge the reference to the edge
Returns:
Return the handle of the edge.

virtual VertexHandle mitkHEOoCTriangleMesh::GetHandle Vertex const &  vert  )  const [virtual]
 

Get the handle of a vertex.

Parameters:
vert the reference to the vertex
Returns:
Return the handle of the vertex.

char const* mitkHEOoCTriangleMesh::GetPathOfDiskBuffer  ) 
 

Get the full path of the disk buffer which contains all the data of the mesh.

Returns:
Return the full path of the disk buffer.

virtual Vertex& mitkHEOoCTriangleMesh::GetVertex VertexHandle  v  )  const [virtual]
 

Get vertex by handle.

Parameters:
v the handle of the required vertex
Returns:
Return the reference to the required vertex.

virtual float* mitkHEOoCTriangleMesh::GetVertexData  )  [inline, virtual]
 

Get data pointer of this vertex data. This is for compatibility with mitkTriangleMesh which is used more frequently. For out-of-core data sets, it will always return NULL, because the impossibility of fitting an out-of-core data set into the main memory.

Returns:
Always return NULL.
Warning:
This function is obsolete and does nothing in this class. We strongly advise against using it in new codes.

Implements mitkMesh.

virtual Vertex const& mitkHEOoCTriangleMesh::GetVertexForRead VertexHandle  v  )  const [virtual]
 

Get vertex by handle for read only.

Parameters:
v the handle of the required vertex
Returns:
Return the reference to the required vertex.

virtual void mitkHEOoCTriangleMesh::Initialize  )  [virtual]
 

Make the output data ready for new data to be inserted.

Reimplemented from mitkHETriangleMesh.

virtual void mitkHEOoCTriangleMesh::PrintSelf ostream &  os  )  [virtual]
 

Print the necessary information about this object for the debugging purpose.

Parameters:
os The specified ostream to output information.

Reimplemented from mitkHETriangleMesh.

void mitkHEOoCTriangleMesh::SetBufferedEdgeBlockNum unsigned int  n  ) 
 

Set the number of buffered edge blocks in memory.

Parameters:
n the number of buffered edge blocks
Note:
When calling this function, the buffer size is also calculated by (edge block size) * (vertex block number), so it is unnecessary to call SetEdgeBufferSize() again.

void mitkHEOoCTriangleMesh::SetBufferedFaceBlockNum unsigned int  n  ) 
 

Set the number of buffered face blocks in memory.

Parameters:
n the number of buffered face blocks
Note:
When calling this function, the buffer size is also calculated by (face block size) * (face block number), so it is unnecessary to call SetFaceBufferSize() again.

void mitkHEOoCTriangleMesh::SetBufferedVertexBlockNum unsigned int  n  ) 
 

Set the number of buffered vertex blocks in memory.

Parameters:
n the number of buffered vertex blocks
Note:
When calling this function, the buffer size is also calculated by (vertex block size) * (vertex block number), so it is unnecessary to call SetVertexBufferSize() again.

void mitkHEOoCTriangleMesh::SetEdgeBlockSize unsigned int  en  ) 
 

Set the size of the edge block (number of edges of one block).

Parameters:
en the number of edges of one block

void mitkHEOoCTriangleMesh::SetEdgeBufferSize size_type  s  ) 
 

Set the size of the memory buffer for containing cached edge blocks.

Parameters:
s the size of the buffer in bytes
Note:
When calling this function, the number of buffered edge blocks is also calculated by (buffer size) / (edge block size), so it is unnecessary to call SetBufferedEdgeBlockNum() again.

void mitkHEOoCTriangleMesh::SetFaceBlockSize unsigned int  fn  ) 
 

Set the size of the face block (number of triangles of one block).

Parameters:
fn the number of triangles of one block

void mitkHEOoCTriangleMesh::SetFaceBufferSize size_type  s  ) 
 

Set the size of the memory buffer for containing cached face blocks.

Parameters:
s the size of the buffer in bytes
Note:
When calling this function, the number of buffered slice is also calculated by (buffer size) / (face block size), so it is unnecessary to call SetBufferedFaceBlockNum() again.

virtual void mitkHEOoCTriangleMesh::SetFaceNumber size_type  number  )  [virtual]
 

Set the faces' number and allocate memory.

Parameters:
number the number of faces
Warning:
This function is obsolete. It is provided to keep old codes working. We strongly advise against using it in new codes.

Implements mitkMesh.

void mitkHEOoCTriangleMesh::SetPathOfDiskBuffer char const *  path  ) 
 

Set the full path of the disk buffer to contain all the data of the mesh.

Parameters:
path the full path of the disk buffer

void mitkHEOoCTriangleMesh::SetVertexBlockSize unsigned int  vn  ) 
 

Set the size of the vertex block (number of vertices of one block).

Parameters:
vn the number of vertices of one block

void mitkHEOoCTriangleMesh::SetVertexBufferSize size_type  s  ) 
 

Set the size of the memory buffer for containing cached vertex blocks.

Parameters:
s the size of the buffer in bytes
Note:
When calling this function, the number of buffered vertex blocks is also calculated by (buffer size) / (vertex block size), so it is unnecessary to call SetBufferedVertexBlockNum() again.

virtual void mitkHEOoCTriangleMesh::SetVertexNumber size_type  number  )  [virtual]
 

Set the vertices' number and allocate memory.

Parameters:
number the number of vertices
Note:
This function is obsolete. It is provided to keep old codes working. We strongly advise against using it in new codes.

Implements mitkMesh.

virtual void mitkHEOoCTriangleMesh::ShallowCopy mitkDataObject src  )  [virtual]
 

Shallowcopy.

Parameters:
src pointer to the source mitkDataObject

Reimplemented from mitkHEMesh.


The documentation for this class was generated from the following file:
Generated on Tue Feb 25 15:03:02 2014 for MITK (Medical Imaging ToolKit) by  doxygen 1.4.3