kdecore Library API Documentation

KVMAllocator Class Reference

KVMAllocator is a virtual memory allocator. More...

#include <kvmallocator.h>

List of all members.

Public Methods

 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.0.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Oct 8 12:20:47 2003 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2001