kdecore Library API Documentation

KVMAllocator Class Reference

KVMAllocator is a virtual memory allocator. More...

#include <kvmallocator.h>

List of all members.

Public Member Functions

 KVMAllocator ()
 Create a KVMAllocator.

 ~KVMAllocator ()
 Destruct the KVMAllocator and release all memory.

Block * allocate (size_t _size)
 Allocate a virtual memory block.

void free (Block *block)
 Free a virtual memory block.

void copy (void *dest, Block *src, int _offset=0, size_t length=0)
 Copy length bytes from _offset in the virtual memory block src to normal memory at address *dest.

void copy (Block *dest, void *src, int _offset=0, size_t length=0)
 Copy length bytes from normal memory at address src to _offset in the virtual memory block dest.

void * map (Block *block)
 Map a virtual memory block in memory.

void unmap (Block *block)
 Unmap a virtual memory block.


Detailed Description

KVMAllocator is a virtual memory allocator.

Memory is allocated block-wise in a tmp file.

Author:
Waldo Bastian <bastian@kde.org>
Version:
Id
kvmallocator.h,v 1.5 2002/09/14 17:15:10 tjansen Exp

Definition at line 39 of file kvmallocator.h.


Constructor & Destructor Documentation

KVMAllocator::KVMAllocator  ) 
 

Create a KVMAllocator.

Definition at line 63 of file kvmallocator.cpp.

KVMAllocator::~KVMAllocator  ) 
 

Destruct the KVMAllocator and release all memory.

Definition at line 73 of file kvmallocator.cpp.


Member Function Documentation

KVMAllocator::Block * KVMAllocator::allocate size_t  _size  ) 
 

Allocate a virtual memory block.

Parameters:
_size Size in bytes of the memory block.
Returns:
the allocated memory block

Definition at line 84 of file kvmallocator.cpp.

References QMap::size().

void KVMAllocator::free Block *  block  ) 
 

Free a virtual memory block.

Parameters:
block the block to free

Definition at line 132 of file kvmallocator.cpp.

void KVMAllocator::copy void *  dest,
Block *  src,
int  _offset = 0,
size_t  length = 0
 

Copy length bytes from _offset in the virtual memory block src to normal memory at address *dest.

Parameters:
dest the destination of the data
src the source block
_offset the offset in the source block
length the length of the data to copy

Definition at line 187 of file kvmallocator.cpp.

void KVMAllocator::copy Block *  dest,
void *  src,
int  _offset = 0,
size_t  length = 0
 

Copy length bytes from normal memory at address src to _offset in the virtual memory block dest.

Parameters:
dest the block to copy the data to
src the source location of the data
_offset the offset in the destination block
length the length of the data to copy

Definition at line 210 of file kvmallocator.cpp.

void * KVMAllocator::map Block *  block  ) 
 

Map a virtual memory block in memory.

Parameters:
block the block to map

Definition at line 233 of file kvmallocator.cpp.

void KVMAllocator::unmap Block *  block  ) 
 

Unmap a virtual memory block.

Parameters:
block the block to unmap

Definition at line 248 of file kvmallocator.cpp.


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.4.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Sun Feb 27 22:14:52 2005 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001