kvmallocator.h Source File (kdecore Library)

| # kdecore Library API Documentation
Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Source Files

# kvmallocator.h

    00001 /*
    00002     This file is part of the KDE libraries
    00003
    00004     Copyright (C) 2000 Waldo Bastian (bastian@kde.org)
    00005
    00006     This library is free software; you can redistribute it and/or
    00007     modify it under the terms of the GNU Library General Public
    00008     License as published by the Free Software Foundation; either
    00009     version 2 of the License, or (at your option) any later version.
    00010
    00011     This library is distributed in the hope that it will be useful,
    00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00014     Library General Public License for more details.
    00015
    00016     You should have received a copy of the GNU Library General Public License
    00017     along with this library; see the file COPYING.LIB.  If not, write to
    00018     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    00019     Boston, MA 02111-1307, USA.
    00020 */
    00021 //----------------------------------------------------------------------------
    00022 //
    00023 // KDE Virtual Memory Allocator
    00024
    00025 #ifndef KVMALLOCATOR_H
    00026 #define KVMALLOCATOR_H
    00027
    00028 #include <sys/types.h>
    00029
    00030 class KVMAllocatorPrivate;
    00031
    00039 class KVMAllocator
    00040 {
    00041 public:
    00042     struct Block;
    00043
    00047     KVMAllocator();
    00048
    00052     ~KVMAllocator();
    00053
    00059     Block *allocate(size_t _size);
    00060
    00065     void free(Block *block);
    00066
    00075     void copy(void *dest, Block *src, int _offset = 0, size_t length = 0);
    00076
    00085     void copy(Block *dest, void *src, int _offset = 0, size_t length = 0);
    00086
    00091     void *map(Block *block);
    00092
    00097     void unmap(Block *block);
    00098
    00099 private:
    00100     KVMAllocatorPrivate *d;
    00101 };
    00102
    00103 #endif

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:46:59 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001