# kdecore Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Source Files

# 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:

- kvmallocator.h
- kvmallocator.cpp

This file is part of the documentation for kdelibs Version 3.1.5.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Jan 28 12:51:51 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001