MeVisLabToolboxReference
ml::PageBuffer Struct Reference

PageBuffer is a helper structure to manage one page of input data of the VirtualVolume class and it also handles the most important properties of the page. More...

#include <mlVirtualVolume.h>

List of all members.

Public Types

typedef void *(* ReturnPageFunc )(PageBuffer *toMePtr)
 Function to return the data page of the PageBuffer.

Public Member Functions

 PageBuffer ()
 Initialize the structure.

Public Attributes

VirtualVolume_virtVol
 Pointer to the virtual volume object.
SubImageBox _box
 Box of original image mapped in this page.
MLMemoryBlockHandle _memoryBlockHandle
 The memory block handle for holding the page data locked.
void * _page
 Pointer to the page data reduced by the offset to the page origin.
bool _locked
 If true this page contains written data and must not be removed.
ReturnPageFunc _getPageFkt
 Pointer to function to return the page managed by the PageBuffer.

Detailed Description

PageBuffer is a helper structure to manage one page of input data of the VirtualVolume class and it also handles the most important properties of the page.

It is an internal class and is not intended to be used by any application. It contains a pointer to a function which returns the virtual image data. The function pointer first points to a function which loads the page, later it points only to a function which returns the data. In this way the data access tests for page loading only once and has maximum performance later on.

Definition at line 536 of file mlVirtualVolume.h.


Member Typedef Documentation

typedef void*(* ml::PageBuffer::ReturnPageFunc)(PageBuffer *toMePtr)

Function to return the data page of the PageBuffer.

Definition at line 539 of file mlVirtualVolume.h.


Constructor & Destructor Documentation

ml::PageBuffer::PageBuffer ( ) [inline]

Initialize the structure.

Definition at line 542 of file mlVirtualVolume.h.


Member Data Documentation

Box of original image mapped in this page.

Definition at line 548 of file mlVirtualVolume.h.

Pointer to function to return the page managed by the PageBuffer.

Definition at line 562 of file mlVirtualVolume.h.

Referenced by ml::TVirtualVolume< DATATYPE >::_getVoxel1D(), ml::TVirtualVolume< DATATYPE >::_getVoxel1DE(), ml::TVirtualVolume< DATATYPE >::_getVoxel2D(), ml::TVirtualVolume< DATATYPE >::_getVoxel2DE(), ml::TVirtualVolume< DATATYPE >::_getVoxel3D(), ml::TVirtualVolume< DATATYPE >::_getVoxel3DE(), ml::TVirtualVolume< DATATYPE >::_getVoxel4D(), ml::TVirtualVolume< DATATYPE >::_getVoxel4DE(), ml::TVirtualVolume< DATATYPE >::_getVoxel5D(), ml::TVirtualVolume< DATATYPE >::_getVoxel5DE(), ml::TVirtualVolume< DATATYPE >::_getVoxel6D(), ml::TVirtualVolume< DATATYPE >::_getVoxel6DE(), ml::TVirtualVolume< DATATYPE >::_isMapped1D(), ml::TVirtualVolume< DATATYPE >::_isMapped1DE(), ml::TVirtualVolume< DATATYPE >::_isMapped2D(), ml::TVirtualVolume< DATATYPE >::_isMapped2DE(), ml::TVirtualVolume< DATATYPE >::_isMapped3D(), ml::TVirtualVolume< DATATYPE >::_isMapped3DE(), ml::TVirtualVolume< DATATYPE >::_isMapped4D(), ml::TVirtualVolume< DATATYPE >::_isMapped4DE(), ml::TVirtualVolume< DATATYPE >::_isMapped5D(), ml::TVirtualVolume< DATATYPE >::_isMapped5DE(), ml::TVirtualVolume< DATATYPE >::_isMapped6D(), ml::TVirtualVolume< DATATYPE >::_isMapped6DE(), ml::TVirtualVolume< DATATYPE >::_setVoxel1D(), ml::TVirtualVolume< DATATYPE >::_setVoxel1DE(), ml::TVirtualVolume< DATATYPE >::_setVoxel2D(), ml::TVirtualVolume< DATATYPE >::_setVoxel2DE(), ml::TVirtualVolume< DATATYPE >::_setVoxel3D(), ml::TVirtualVolume< DATATYPE >::_setVoxel3DE(), ml::TVirtualVolume< DATATYPE >::_setVoxel4D(), ml::TVirtualVolume< DATATYPE >::_setVoxel4DE(), ml::TVirtualVolume< DATATYPE >::_setVoxel5D(), ml::TVirtualVolume< DATATYPE >::_setVoxel5DE(), ml::TVirtualVolume< DATATYPE >::_setVoxel6D(), ml::TVirtualVolume< DATATYPE >::_setVoxel6DE(), ml::TVirtualVolume< DATATYPE >::getCursorValue(), and ml::TVirtualVolume< DATATYPE >::setCursorValue().

The memory block handle for holding the page data locked.

Definition at line 551 of file mlVirtualVolume.h.

Pointer to the page data reduced by the offset to the page origin.

So the page origin needs not to be subtracted from the voxel coordinates. It can be treated as a pointer to the origin of the virtual volume.

Definition at line 556 of file mlVirtualVolume.h.

Referenced by ml::VirtualVolume::_getPageCB().

Pointer to the virtual volume object.

Definition at line 545 of file mlVirtualVolume.h.


The documentation for this struct was generated from the following file: