kdecore Library API Documentation

KVMAllocator Class Reference

KVMAllocator is a virtual memory allocator. More...

#include <kvmallocator.h>

List of all members.

Public Methods

 KVMAllocator ()
 ~KVMAllocator ()
Block * allocate (size_t _size)
void free (Block *block)
bool copyBlock (void *dest, Block *src, int _offset=0, size_t length=0)
void copy (void *dest, Block *src, int _offset=0, size_t length=0) KDE_DEPRECATED
bool copyBlock (Block *dest, void *src, int _offset=0, size_t length=0)
void copy (Block *dest, void *src, int _offset=0, size_t length=0) KDE_DEPRECATED
void * map (Block *block)
void unmap (Block *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.8 2003/08/30 07:33:49 raabe Exp

Definition at line 40 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 endl(), and 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.

References endl().

bool KVMAllocator::copyBlock 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
Returns:
true on success, false on failure, see errno for details
Since:
3.2

Definition at line 193 of file kvmallocator.cpp.

Referenced by copy().

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

Copy data from a virtual memory block to normal memory.

Deprecated:
See also:
copyBlock

Definition at line 187 of file kvmallocator.cpp.

References copyBlock().

bool KVMAllocator::copyBlock 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
Returns:
true on success, false on failure, see errno for details
Since:
3.2

Definition at line 229 of file kvmallocator.cpp.

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

Copy data from normal memory to a virtual memory block.

Deprecated:
See also:
copyBlock

Definition at line 223 of file kvmallocator.cpp.

References copyBlock().

void * KVMAllocator::map Block *    block
 

Map a virtual memory block in memory.

Parameters:
block  the block to map

Definition at line 253 of file kvmallocator.cpp.

void KVMAllocator::unmap Block *    block
 

Unmap a virtual memory block.

Parameters:
block  the block to unmap

Definition at line 268 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 kdecore Library Version 3.2.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Feb 4 12:33:59 2004 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2003