Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# Internal.hpp

Go to the documentation of this file.

    00001 ///////////////////////////////////////////////////////////////////////////////
    00002 /// @file Internal.hpp
    00003 ///
    00004 /// @brief Destiny3D Internal Memory Manager for Memory Manager
    00005 ///
    00006 /// @author Lightning
    00007 ///
    00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the
    00009 /// contents of this file is subject to the Destiny3D Member License which
    00010 /// can be found at http://www.destiny3d.com.  Any other usage is prohibited.
    00011 ///
    00012 /// This file is distributed "AS IS" without warranty of any kind.  Novus
    00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file
    00014 /// for any particular purpose.
    00015 ///
    00016 /// Copyright (C) 2001-2003 Novus Delta, LLC. All Rights Reserved.
    00017 ///
    00018 /// <hr>
    00019 ///                                 Change History
    00020 /// <hr>
    00021 ///
    00022 /// @date Dec 2002
    00023 /// @author Lightning
    00024 /// @remarks Creation
    00025 ///
    00026 ///////////////////////////////////////////////////////////////////////////////
    00027
    00028 #include "deGlobalTypes.hpp"
    00029 #include "deMemory_priv.hpp"
    00030
    00031 #ifndef INTERNAL_MEM_HPP
    00032 #define INTERNAL_MEM_HPP
    00033
    00034 //the internal struct for internal blocks
    00035 typedef struct InternalStruct
    00036 {
    00037     InternalStruct  *Next;
    00038     InternalStruct  *Prev;
    00039     DWORD           Size;
    00040 } InternalStruct;
    00041
    00042 //init/release functions for internal memory
    00043 deBoolean InitializeInternalMem(DWORD PageCount);
    00044 void ReleaseInternalMem();
    00045
    00046 //these functions are for internal memory allocation/deallocation. The internal memory has
    00047 //NO, i repeat, NO checks. you CAN, and WILL trash the internal memory, probably bringing
    00048 //the memory manager down if you overflow or underflow your allocated space
    00049 void *InternalAlloc(DWORD Size);            //max size, 0xFC00
    00050 void InternalFree(void *Ptr, DWORD Size);
    00051
    00052 #endif