\section{fl\-Memory\-VMem.h File Reference}
\label{flMemoryVMem_8h}\index{flMemoryVMem.h@{flMemoryVMem.h}}
{\tt \#include \char`\"{}fl\-Global.h\char`\"{}}\par
{\tt \#include \char`\"{}fl\-Memory.h\char`\"{}}\par
\subsection*{Classes}
\begin{CompactItemize}
\item 
struct {\bf Vmem\-Stride\-Block}
\end{CompactItemize}
\subsection*{Defines}
\begin{CompactItemize}
\item 
\#define {\bf MEMORY\_\-VMEM\_\-BASE}~0x04000000
\item 
\#define {\bf MEMORY\_\-VMEM\_\-SIZE}~0x00200000
\item 
\#define {\bf vmem\-Normal\-Pointer}(in\-Ptr)~vmem\-Normal\-Ptr(in\-Ptr)
\item 
\#define {\bf vmem\-Alloc}(in\-Size)~vmem\-Alloc\-From(in\-Size, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)
\item 
\#define {\bf vmem\-Calloc}(in\-Size0, in\-Size1)~vmem\-Calloc\-From(in\-Size0, in\-Size1, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)
\item 
\#define {\bf vmem\-Realloc}(in\-Data, in\-Size)~vmem\-Realloc\-From(in\-Data, in\-Size, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)
\item 
\#define {\bf vmem\-Free}(in\-Data)~vmem\-Free\-From(in\-Data, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)
\item 
\#define {\bf vmem\-Absolute\-Ptr}(in\-Ptr)~((void$\ast$)((unsigned int)(in\-Ptr) $|$ MEMORY\_\-VMEM\_\-BASE))
\item 
\#define {\bf vmem\-Relative\-Ptr}(in\-Ptr)~((void$\ast$)((unsigned int)(in\-Ptr) \& $\sim$MEMORY\_\-VMEM\_\-BASE))
\item 
\#define {\bf vmem\-Ptr}(in\-Ptr)~(((unsigned int)mem\-Cached\-Ptr(in\-Ptr) $>$= MEMORY\_\-VMEM\_\-BASE) \&\& ((unsigned int)mem\-Cached\-Ptr(in\-Ptr) $<$ (MEMORY\_\-VMEM\_\-BASE + (MEMORY\_\-VMEM\_\-SIZE $<$$<$ 2))))
\item 
\#define {\bf vmem\-Abs\-Ptr}(in\-Ptr)~vmem\-Absolute\-Ptr(in\-Ptr)
\item 
\#define {\bf vmem\-Rel\-Ptr}(in\-Ptr)~vmem\-Relative\-Ptr(in\-Ptr)
\item 
\#define {\bf vmem\-Absolute\-Pointer}(in\-Ptr)~vmem\-Absolute\-Ptr(in\-Ptr)
\item 
\#define {\bf vmem\-Relative\-Pointer}(in\-Ptr)~vmem\-Relative\-Ptr(in\-Ptr)
\item 
\#define {\bf vmem\-Pointer}(in\-Ptr)~vmem\-Ptr(in\-Ptr)
\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
void {\bf vmem\-Init} ()
\item 
void {\bf vmem\-Term} ()
\item 
void $\ast$ {\bf vmem\-Normal\-Ptr} (void $\ast$in\-Ptr)
\item 
u32 {\bf vmem\-Free\-Space} ()
\item 
u32 {\bf vmem\-Largest\-Free\-Block} ()
\item 
float {\bf vmem\-Fragmentation} ()
\item 
void $\ast$ {\bf vmem\-Alloc\-Buffer} (u32 in\-Width, u32 in\-Height, u8 in\-Bit\-Depth, u32 in\-Stride)
\item 
void $\ast$ {\bf vmem\-Alloc\-From} (u32 in\-Size, const char $\ast$in\-File, const char $\ast$in\-Func, int in\-Line)
\item 
void $\ast$ {\bf vmem\-Calloc\-From} (u32 in\-Size0, u32 in\-Size1, const char $\ast$in\-File, const char $\ast$in\-Func, int in\-Line)
\item 
void $\ast$ {\bf vmem\-Realloc\-From} (void $\ast$in\-Data, u32 in\-Size, const char $\ast$in\-File, const char $\ast$in\-Func, int in\-Line)
\item 
void {\bf vmem\-Free\-From} (void $\ast$in\-Data, const char $\ast$in\-File, const char $\ast$in\-Func, int in\-Line)
\item 
void {\bf vmem\-Stride\-Block\-Add} (void $\ast$in\-Start, u32 in\-Stride, u32 in\-Block\-Size, u32 in\-Block\-Count)
\item 
void {\bf vmem\-Stride\-Block\-Del} ({\bf Vmem\-Stride\-Block} $\ast$in\-Block)
\item 
void {\bf vmem\-Stride\-Block\-Del\-Recursive} ({\bf Vmem\-Stride\-Block} $\ast$in\-Block)
\item 
void $\ast$ {\bf vmem\-Stride\-Align} (u32 in\-Align, u32 in\-Size)
\item 
void $\ast$ {\bf vmem\-Stride\-Alloc} (u32 in\-Size)
\item 
void $\ast$ {\bf vmem\-Stride\-Calloc} (u32 in\-Size0, u32 in\-Size1)
\item 
{\bf bool} {\bf vmem\-Stride\-Free} (void $\ast$in\-Data)
\item 
float {\bf vmem\-Stride\-Usage} ()
\item 
u32 {\bf vmem\-Stride\-Free\-Space} ()
\end{CompactItemize}
\subsection*{Variables}
\begin{CompactItemize}
\item 
u32 {\bf vmem\-Start}
\item 
u32 {\bf vmem\-Size}
\item 
u32 $\ast$ {\bf vmem\-Block\-Table}
\item 
u32 {\bf vmem\-Blocks}
\item 
u32 {\bf vmem\-Free\-Blocks}
\item 
{\bf bool} {\bf vmem\-Initialized}
\item 
{\bf Vmem\-Stride\-Block} $\ast$ {\bf vmem\-Stride\-Blocks}
\end{CompactItemize}


\subsection{Define Documentation}
\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!MEMORY_VMEM_BASE@{MEMORY\_\-VMEM\_\-BASE}}
\index{MEMORY_VMEM_BASE@{MEMORY\_\-VMEM\_\-BASE}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MEMORY\_\-VMEM\_\-BASE~0x04000000}\label{flMemoryVMem_8h_39f2bc0f404515fec846a50b92c8c327}




Definition at line 15 of file fl\-Memory\-VMem.h.

Referenced by mem\-Address\-Valid(), mem\-Block\-Valid(), vmem\-Normal\-Ptr(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!MEMORY_VMEM_SIZE@{MEMORY\_\-VMEM\_\-SIZE}}
\index{MEMORY_VMEM_SIZE@{MEMORY\_\-VMEM\_\-SIZE}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define MEMORY\_\-VMEM\_\-SIZE~0x00200000}\label{flMemoryVMem_8h_4832da4fc8e46c26f98eb7d9c45faed6}




Definition at line 16 of file fl\-Memory\-VMem.h.

Referenced by mem\-Address\-Valid(), mem\-Block\-Valid(), vmem\-Alloc\-Buffer(), vmem\-Normal\-Ptr(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemAbsolutePointer@{vmemAbsolutePointer}}
\index{vmemAbsolutePointer@{vmemAbsolutePointer}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Absolute\-Pointer(in\-Ptr)~vmem\-Absolute\-Ptr(in\-Ptr)}\label{flMemoryVMem_8h_edc894e4bc2f35ebc1cb0751375f48ee}




Definition at line 95 of file fl\-Memory\-VMem.h.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemAbsolutePtr@{vmemAbsolutePtr}}
\index{vmemAbsolutePtr@{vmemAbsolutePtr}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Absolute\-Ptr(in\-Ptr)~((void$\ast$)((unsigned int)(in\-Ptr) $|$ MEMORY\_\-VMEM\_\-BASE))}\label{flMemoryVMem_8h_7b78b1a9e7e0025f9da99899aa782298}




Definition at line 90 of file fl\-Memory\-VMem.h.

Referenced by graphics2d\-Draw\-Texture(), graphics2d\-Draw\-Texture\-Section(), graphics\-Effect\-Fs\-Color\-Enhance(), graphics\-Effect\-Fs\-Depth\-Fog(), graphics\-Effect\-Fs\-Dichrome(), graphics\-Effect\-Fs\-Glow(), graphics\-Effect\-Fs\-Grayscale(), graphics\-Effect\-Fs\-Grayscale\-SW(), graphics\-Effect\-Fs\-Invert(), graphics\-Effect\-Fs\-Light\-Enhance(), graphics\-Effect\-Fs\-Monochrome(), graphics\-Effect\-Fs\-Night\-Vision(), graphics\-Effect\-Fs\-Night\-Vision\-SW(), graphics\-Effect\-Fs\-Thermal\-Vision(), tex\-Screenshot(), and vmem\-Init().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemAbsPtr@{vmemAbsPtr}}
\index{vmemAbsPtr@{vmemAbsPtr}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Abs\-Ptr(in\-Ptr)~vmem\-Absolute\-Ptr(in\-Ptr)}\label{flMemoryVMem_8h_1349d2983e8548e73b5a46d0e9253cc6}




Definition at line 93 of file fl\-Memory\-VMem.h.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemAlloc@{vmemAlloc}}
\index{vmemAlloc@{vmemAlloc}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Alloc(in\-Size)~vmem\-Alloc\-From(in\-Size, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)}\label{flMemoryVMem_8h_fe528defdc4064c33e97273936dc149d}




Definition at line 62 of file fl\-Memory\-VMem.h.

Referenced by font\-Create\-Debug\-Tex(), graphics\-Effect\-Fs\-Color\-Enhance(), graphics\-Effect\-Fs\-Dichrome(), graphics\-Effect\-Fs\-Glow(), graphics\-Effect\-Fs\-Grayscale(), graphics\-Effect\-Fs\-Invert(), graphics\-Effect\-Fs\-Light\-Enhance(), graphics\-Effect\-Fs\-Monochrome(), graphics\-Effect\-Fs\-Night\-Vision(), graphics\-Effect\-Fs\-Thermal\-Vision(), mem\-Align\-From(), mem\-Qalloc\-From(), pal\-Move\-VMem(), tex\-Move\-VMem(), vmem\-Alloc\-Buffer(), vmem\-Alloc\-From(), vmem\-Calloc\-From(), and vmem\-Realloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemCalloc@{vmemCalloc}}
\index{vmemCalloc@{vmemCalloc}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Calloc(in\-Size0, in\-Size1)~vmem\-Calloc\-From(in\-Size0, in\-Size1, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)}\label{flMemoryVMem_8h_91e7bdd218bc6db9829700d093ee1c41}




Definition at line 63 of file fl\-Memory\-VMem.h.

Referenced by vmem\-Calloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemFree@{vmemFree}}
\index{vmemFree@{vmemFree}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Free(in\-Data)~vmem\-Free\-From(in\-Data, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)}\label{flMemoryVMem_8h_d4371239e3fb041c7b6cb866b9a31ad3}




Definition at line 65 of file fl\-Memory\-VMem.h.

Referenced by graphics\-Effect\-Fs\-Color\-Enhance(), graphics\-Effect\-Fs\-Dichrome(), graphics\-Effect\-Fs\-Glow(), graphics\-Effect\-Fs\-Grayscale(), graphics\-Effect\-Fs\-Invert(), graphics\-Effect\-Fs\-Light\-Enhance(), graphics\-Effect\-Fs\-Monochrome(), graphics\-Effect\-Fs\-Night\-Vision(), graphics\-Effect\-Fs\-Thermal\-Vision(), mem\-Free\-From(), vmem\-Free\-From(), and vmem\-Realloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemNormalPointer@{vmemNormalPointer}}
\index{vmemNormalPointer@{vmemNormalPointer}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Normal\-Pointer(in\-Ptr)~vmem\-Normal\-Ptr(in\-Ptr)}\label{flMemoryVMem_8h_ce904a03fd230296b350f5aa8e2c575c}




Definition at line 50 of file fl\-Memory\-VMem.h.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemPointer@{vmemPointer}}
\index{vmemPointer@{vmemPointer}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Pointer(in\-Ptr)~vmem\-Ptr(in\-Ptr)}\label{flMemoryVMem_8h_69504d2681b13941b344f3df8b4d9704}




Definition at line 97 of file fl\-Memory\-VMem.h.

Referenced by mem\-Free\-From(), and mem\-Realloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemPtr@{vmemPtr}}
\index{vmemPtr@{vmemPtr}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Ptr(in\-Ptr)~(((unsigned int)mem\-Cached\-Ptr(in\-Ptr) $>$= MEMORY\_\-VMEM\_\-BASE) \&\& ((unsigned int)mem\-Cached\-Ptr(in\-Ptr) $<$ (MEMORY\_\-VMEM\_\-BASE + (MEMORY\_\-VMEM\_\-SIZE $<$$<$ 2))))}\label{flMemoryVMem_8h_156eba5fc751359ce629fa18628230f1}




Definition at line 92 of file fl\-Memory\-VMem.h.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemRealloc@{vmemRealloc}}
\index{vmemRealloc@{vmemRealloc}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Realloc(in\-Data, in\-Size)~vmem\-Realloc\-From(in\-Data, in\-Size, \_\-\_\-FILE\_\-\_\-, \_\-\_\-FUNCTION\_\-\_\-, \_\-\_\-LINE\_\-\_\-)}\label{flMemoryVMem_8h_af5cdda99d87fc85f7c3bddea6be96b0}




Definition at line 64 of file fl\-Memory\-VMem.h.

Referenced by mem\-Realloc\-From(), and vmem\-Realloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemRelativePointer@{vmemRelativePointer}}
\index{vmemRelativePointer@{vmemRelativePointer}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Relative\-Pointer(in\-Ptr)~vmem\-Relative\-Ptr(in\-Ptr)}\label{flMemoryVMem_8h_be9d6ce7faa2898747ddb084ae27e171}




Definition at line 96 of file fl\-Memory\-VMem.h.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemRelativePtr@{vmemRelativePtr}}
\index{vmemRelativePtr@{vmemRelativePtr}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Relative\-Ptr(in\-Ptr)~((void$\ast$)((unsigned int)(in\-Ptr) \& $\sim$MEMORY\_\-VMEM\_\-BASE))}\label{flMemoryVMem_8h_68a79a04d9a164853141036057265693}




Definition at line 91 of file fl\-Memory\-VMem.h.

Referenced by graphics\-Effect\-Fs\-Color\-Enhance(), graphics\-Effect\-Fs\-Dichrome(), graphics\-Effect\-Fs\-Glow(), graphics\-Effect\-Fs\-Grayscale(), graphics\-Effect\-Fs\-Invert(), graphics\-Effect\-Fs\-Light\-Enhance(), graphics\-Effect\-Fs\-Monochrome(), graphics\-Effect\-Fs\-Night\-Vision(), graphics\-Effect\-Fs\-Thermal\-Vision(), vmem\-Alloc\-Buffer(), and vmem\-Realloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemRelPtr@{vmemRelPtr}}
\index{vmemRelPtr@{vmemRelPtr}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define vmem\-Rel\-Ptr(in\-Ptr)~vmem\-Relative\-Ptr(in\-Ptr)}\label{flMemoryVMem_8h_8f6c1b1e4fb905f39608a1163c2a5624}




Definition at line 94 of file fl\-Memory\-VMem.h.

\subsection{Function Documentation}
\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemAllocBuffer@{vmemAllocBuffer}}
\index{vmemAllocBuffer@{vmemAllocBuffer}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Alloc\-Buffer (u32 {\em in\-Width}, u32 {\em in\-Height}, u8 {\em in\-Bit\-Depth}, u32 {\em in\-Stride})}\label{flMemoryVMem_8h_e971a3895e09e6afd7520db283258211}




Definition at line 97 of file fl\-Memory\-VMem.c.

References debug\-Dev\-Warning, debug\-Error, MEMORY\_\-VMEM\_\-SIZE, vmem\-Alloc, vmem\-Initialized, vmem\-Relative\-Ptr, vmem\-Size, vmem\-Start, and vmem\-Stride\-Block\-Add().

Referenced by graphics\-Init(), and vmem\-Init().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemAllocFrom@{vmemAllocFrom}}
\index{vmemAllocFrom@{vmemAllocFrom}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Alloc\-From (u32 {\em in\-Size}, const char $\ast$ {\em in\-File}, const char $\ast$ {\em in\-Func}, int {\em in\-Line})}\label{flMemoryVMem_8h_fc3b16b88f6442e62ab9aacc0947e2c4}




Definition at line 126 of file fl\-Memory\-VMem.c.

References debug\-Warning, debug\-Warning\-From(), FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, NULL, vmem\-Alloc, vmem\-Blocks, vmem\-Block\-Table, vmem\-Free\-Blocks, vmem\-Initialized, vmem\-Start, and vmem\-Stride\-Alloc().

Referenced by vmem\-Calloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemCallocFrom@{vmemCallocFrom}}
\index{vmemCallocFrom@{vmemCallocFrom}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Calloc\-From (u32 {\em in\-Size0}, u32 {\em in\-Size1}, const char $\ast$ {\em in\-File}, const char $\ast$ {\em in\-Func}, int {\em in\-Line})}\label{flMemoryVMem_8h_4f45e2c3068d12fc1e2e04303fc5b1c3}




Definition at line 216 of file fl\-Memory\-VMem.c.

References mem\-Clear, NULL, vmem\-Alloc, vmem\-Alloc\-From(), vmem\-Calloc, and vmem\-Stride\-Calloc().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemFragmentation@{vmemFragmentation}}
\index{vmemFragmentation@{vmemFragmentation}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}float vmem\-Fragmentation ()}\label{flMemoryVMem_8h_d65d9069bd87a54399bbc16b629ec252}




Definition at line 376 of file fl\-Memory\-VMem.c.

References debug\-Warning, FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, vmem\-Blocks, vmem\-Block\-Table, vmem\-Free\-Space(), and vmem\-Initialized.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemFreeFrom@{vmemFreeFrom}}
\index{vmemFreeFrom@{vmemFreeFrom}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void vmem\-Free\-From (void $\ast$ {\em in\-Data}, const char $\ast$ {\em in\-File}, const char $\ast$ {\em in\-Func}, int {\em in\-Line})}\label{flMemoryVMem_8h_26a131b91a9f5fa087737310af66299a}




Definition at line 290 of file fl\-Memory\-VMem.c.

References debug\-Error, debug\-Error\-From(), FL\_\-DEBUG\_\-CALLEDFROM, FL\_\-DEBUG\_\-ERROR, FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, vmem\-Blocks, vmem\-Block\-Table, vmem\-Free, vmem\-Free\-Blocks, vmem\-Initialized, vmem\-Normal\-Ptr(), vmem\-Size, vmem\-Start, and vmem\-Stride\-Free().

Referenced by mem\-Free\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemFreeSpace@{vmemFreeSpace}}
\index{vmemFreeSpace@{vmemFreeSpace}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 vmem\-Free\-Space ()}\label{flMemoryVMem_8h_87da7eb38a8d057e45dc6ce6f346f63f}




Definition at line 353 of file fl\-Memory\-VMem.c.

References FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, vmem\-Free\-Blocks, and vmem\-Stride\-Free\-Space().

Referenced by mem\-Free\-Space\-Total(), and vmem\-Fragmentation().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemInit@{vmemInit}}
\index{vmemInit@{vmemInit}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void vmem\-Init ()}\label{flMemoryVMem_8h_2089203f3b650112b2532238ef57d6d0}




Definition at line 29 of file fl\-Memory\-VMem.c.

References debug\-Warning, FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, FL\_\-MEMORY\_\-VMEM\_\-CACHE, mem\-Alloc, mem\-Uncached\-Ptr, vmem\-Absolute\-Ptr, vmem\-Alloc\-Buffer(), vmem\-Blocks, vmem\-Block\-Table, vmem\-Cache, vmem\-Free\-Blocks, vmem\-Initialized, vmem\-Size, and vmem\-Start.

Referenced by graphics\-Init().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemLargestFreeBlock@{vmemLargestFreeBlock}}
\index{vmemLargestFreeBlock@{vmemLargestFreeBlock}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 vmem\-Largest\-Free\-Block ()}\label{flMemoryVMem_8h_9c58c42e2ef77c55eca5f31df1ffd5c4}




Definition at line 357 of file fl\-Memory\-VMem.c.

References debug\-Warning, FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, vmem\-Blocks, and vmem\-Block\-Table.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemNormalPtr@{vmemNormalPtr}}
\index{vmemNormalPtr@{vmemNormalPtr}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Normal\-Ptr (void $\ast$ {\em in\-Ptr})}\label{flMemoryVMem_8h_e876e1020d33a6504c9f4a14ff9dcb49}




Definition at line 82 of file fl\-Memory\-VMem.c.

References mem\-Cached\-Ptr, MEMORY\_\-VMEM\_\-BASE, MEMORY\_\-VMEM\_\-SIZE, and NULL.

Referenced by vmem\-Free\-From(), vmem\-Stride\-Block\-Add(), and vmem\-Stride\-Free().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemReallocFrom@{vmemReallocFrom}}
\index{vmemReallocFrom@{vmemReallocFrom}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Realloc\-From (void $\ast$ {\em in\-Data}, u32 {\em in\-Size}, const char $\ast$ {\em in\-File}, const char $\ast$ {\em in\-Func}, int {\em in\-Line})}\label{flMemoryVMem_8h_512f73544599a5fd0df10e5f9c9ee071}




Definition at line 237 of file fl\-Memory\-VMem.c.

References debug\-Dev\-Warning, debug\-Dev\-Warning\-From(), debug\-Error, debug\-Error\-From(), debug\-Warning, debug\-Warning\-From(), FL\_\-MEMORY\_\-VMEM\_\-BLOCKSIZE, mem\-Cached\-Ptr, mem\-Copy, NULL, vmem\-Alloc, vmem\-Blocks, vmem\-Block\-Table, vmem\-Free, vmem\-Realloc, vmem\-Relative\-Ptr, and vmem\-Start.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideAlign@{vmemStrideAlign}}
\index{vmemStrideAlign@{vmemStrideAlign}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Stride\-Align (u32 {\em in\-Align}, u32 {\em in\-Size})}\label{flMemoryVMem_8h_d1a90582a0b9a549a0cc3bfd3a142c34}




Definition at line 456 of file fl\-Memory\-VMem.c.

References FL\_\-MEMORY\_\-ALIGNMENT\_\-DEFAULT, fl\-Running, NULL, vmem\-Stride\-Blocks, Vmem\-Stride\-Block::vmsb\-Block\-Align, Vmem\-Stride\-Block::vmsb\-Block\-Count, Vmem\-Stride\-Block::vmsb\-Block\-Size, Vmem\-Stride\-Block::vmsb\-Block\-Table, and Vmem\-Stride\-Block::vmsb\-Next.

Referenced by mem\-Align\-From(), and vmem\-Stride\-Alloc().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideAlloc@{vmemStrideAlloc}}
\index{vmemStrideAlloc@{vmemStrideAlloc}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Stride\-Alloc (u32 {\em in\-Size})}\label{flMemoryVMem_8h_dfe51ec95e7145599cf42de9e54f390b}




Definition at line 492 of file fl\-Memory\-VMem.c.

References FL\_\-MEMORY\_\-ALIGNMENT\_\-DEFAULT, and vmem\-Stride\-Align().

Referenced by vmem\-Alloc\-From(), and vmem\-Stride\-Calloc().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideBlockAdd@{vmemStrideBlockAdd}}
\index{vmemStrideBlockAdd@{vmemStrideBlockAdd}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void vmem\-Stride\-Block\-Add (void $\ast$ {\em in\-Start}, u32 {\em in\-Stride}, u32 {\em in\-Block\-Size}, u32 {\em in\-Block\-Count})}\label{flMemoryVMem_8h_a642a6370458c1f3b28e42ed4fa1876c}




Definition at line 396 of file fl\-Memory\-VMem.c.

References debug\-Warning, mem\-Address\-Alignment(), mem\-Alloc, mem\-Block\-Valid(), mem\-Clear, min, NULL, vmem\-Normal\-Ptr(), vmem\-Stride\-Blocks, Vmem\-Stride\-Block::vmsb\-Block\-Align, Vmem\-Stride\-Block::vmsb\-Block\-Count, Vmem\-Stride\-Block::vmsb\-Block\-Size, Vmem\-Stride\-Block::vmsb\-Block\-Table, Vmem\-Stride\-Block::vmsb\-Last, Vmem\-Stride\-Block::vmsb\-Next, Vmem\-Stride\-Block::vmsb\-Start, and Vmem\-Stride\-Block::vmsb\-Stride.

Referenced by vmem\-Alloc\-Buffer().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideBlockDel@{vmemStrideBlockDel}}
\index{vmemStrideBlockDel@{vmemStrideBlockDel}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void vmem\-Stride\-Block\-Del ({\bf Vmem\-Stride\-Block} $\ast$ {\em in\-Block})}\label{flMemoryVMem_8h_0733a131032b6396507ab6163e5da8dd}




Definition at line 434 of file fl\-Memory\-VMem.c.

References mem\-Free, vmem\-Stride\-Blocks, Vmem\-Stride\-Block::vmsb\-Last, and Vmem\-Stride\-Block::vmsb\-Next.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideBlockDelRecursive@{vmemStrideBlockDelRecursive}}
\index{vmemStrideBlockDelRecursive@{vmemStrideBlockDelRecursive}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void vmem\-Stride\-Block\-Del\-Recursive ({\bf Vmem\-Stride\-Block} $\ast$ {\em in\-Block})}\label{flMemoryVMem_8h_ec5ead58cf103c59c742d84eb9266176}




Definition at line 444 of file fl\-Memory\-VMem.c.

References mem\-Free, vmem\-Stride\-Block\-Del\-Recursive(), Vmem\-Stride\-Block::vmsb\-Last, and Vmem\-Stride\-Block::vmsb\-Next.

Referenced by vmem\-Stride\-Block\-Del\-Recursive(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideCalloc@{vmemStrideCalloc}}
\index{vmemStrideCalloc@{vmemStrideCalloc}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ vmem\-Stride\-Calloc (u32 {\em in\-Size0}, u32 {\em in\-Size1})}\label{flMemoryVMem_8h_29bad506a933463bcced39a356cd71eb}




Definition at line 496 of file fl\-Memory\-VMem.c.

References mem\-Clear, and vmem\-Stride\-Alloc().

Referenced by vmem\-Calloc\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideFree@{vmemStrideFree}}
\index{vmemStrideFree@{vmemStrideFree}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf bool} vmem\-Stride\-Free (void $\ast$ {\em in\-Data})}\label{flMemoryVMem_8h_a986e759682fc3a182f333d0e3f0f8b6}




Definition at line 502 of file fl\-Memory\-VMem.c.

References debug\-Warning, fl\-Running, vmem\-Normal\-Ptr(), vmem\-Stride\-Blocks, Vmem\-Stride\-Block::vmsb\-Block\-Count, Vmem\-Stride\-Block::vmsb\-Block\-Size, Vmem\-Stride\-Block::vmsb\-Block\-Table, Vmem\-Stride\-Block::vmsb\-Next, Vmem\-Stride\-Block::vmsb\-Start, and Vmem\-Stride\-Block::vmsb\-Stride.

Referenced by vmem\-Free\-From().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideFreeSpace@{vmemStrideFreeSpace}}
\index{vmemStrideFreeSpace@{vmemStrideFreeSpace}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 vmem\-Stride\-Free\-Space ()}\label{flMemoryVMem_8h_9d368ada737fd80bb8abed2825c326ff}




Definition at line 563 of file fl\-Memory\-VMem.c.

References fl\-Running, vmem\-Stride\-Blocks, Vmem\-Stride\-Block::vmsb\-Block\-Count, Vmem\-Stride\-Block::vmsb\-Block\-Size, Vmem\-Stride\-Block::vmsb\-Block\-Table, and Vmem\-Stride\-Block::vmsb\-Next.

Referenced by vmem\-Free\-Space().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideUsage@{vmemStrideUsage}}
\index{vmemStrideUsage@{vmemStrideUsage}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}float vmem\-Stride\-Usage ()}\label{flMemoryVMem_8h_c1ffa02ebd6cebc73b39aba7dff8a43a}




Definition at line 534 of file fl\-Memory\-VMem.c.

References fl\-Running, vmem\-Stride\-Blocks, Vmem\-Stride\-Block::vmsb\-Block\-Count, Vmem\-Stride\-Block::vmsb\-Block\-Size, Vmem\-Stride\-Block::vmsb\-Block\-Table, and Vmem\-Stride\-Block::vmsb\-Next.\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemTerm@{vmemTerm}}
\index{vmemTerm@{vmemTerm}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void vmem\-Term ()}\label{flMemoryVMem_8h_ae3e2102bd1766ba9ac8ddf6bbc1ccdb}




Definition at line 67 of file fl\-Memory\-VMem.c.

References debug\-Warning, mem\-Free, MEMORY\_\-VMEM\_\-BASE, MEMORY\_\-VMEM\_\-SIZE, vmem\-Blocks, vmem\-Block\-Table, vmem\-Initialized, vmem\-Size, vmem\-Start, vmem\-Stride\-Block\-Del\-Recursive(), and vmem\-Stride\-Blocks.

Referenced by graphics\-Term().

\subsection{Variable Documentation}
\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemBlocks@{vmemBlocks}}
\index{vmemBlocks@{vmemBlocks}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 {\bf vmem\-Blocks}}\label{flMemoryVMem_8h_76eb0f2936c402d05c70a0e710407d6a}




Definition at line 19 of file fl\-Memory\-VMem.c.

Referenced by vmem\-Alloc\-From(), vmem\-Fragmentation(), vmem\-Free\-From(), vmem\-Init(), vmem\-Largest\-Free\-Block(), vmem\-Realloc\-From(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemBlockTable@{vmemBlockTable}}
\index{vmemBlockTable@{vmemBlockTable}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32$\ast$ {\bf vmem\-Block\-Table}}\label{flMemoryVMem_8h_c26d629e42eb543afddfb13534009a59}




Definition at line 18 of file fl\-Memory\-VMem.c.

Referenced by vmem\-Alloc\-From(), vmem\-Fragmentation(), vmem\-Free\-From(), vmem\-Init(), vmem\-Largest\-Free\-Block(), vmem\-Realloc\-From(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemFreeBlocks@{vmemFreeBlocks}}
\index{vmemFreeBlocks@{vmemFreeBlocks}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 {\bf vmem\-Free\-Blocks}}\label{flMemoryVMem_8h_ca271688574e8c57b674a9db91d23e42}




Definition at line 20 of file fl\-Memory\-VMem.c.

Referenced by vmem\-Alloc\-From(), vmem\-Free\-From(), vmem\-Free\-Space(), and vmem\-Init().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemInitialized@{vmemInitialized}}
\index{vmemInitialized@{vmemInitialized}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf bool} {\bf vmem\-Initialized}}\label{flMemoryVMem_8h_f7488958314b830b42be236096a8550c}




Definition at line 21 of file fl\-Memory\-VMem.c.

Referenced by mem\-Qalloc\-From(), vmem\-Alloc\-Buffer(), vmem\-Alloc\-From(), vmem\-Fragmentation(), vmem\-Free\-From(), vmem\-Init(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemSize@{vmemSize}}
\index{vmemSize@{vmemSize}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 {\bf vmem\-Size}}\label{flMemoryVMem_8h_5bdb4a91bd69dda7958d392b8a318405}




Definition at line 17 of file fl\-Memory\-VMem.c.

Referenced by vmem\-Alloc\-Buffer(), vmem\-Free\-From(), vmem\-Init(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStart@{vmemStart}}
\index{vmemStart@{vmemStart}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}u32 {\bf vmem\-Start}}\label{flMemoryVMem_8h_8ca615adf1b61b83d3787473691f050b}




Definition at line 16 of file fl\-Memory\-VMem.c.

Referenced by vmem\-Alloc\-Buffer(), vmem\-Alloc\-From(), vmem\-Free\-From(), vmem\-Init(), vmem\-Realloc\-From(), and vmem\-Term().\index{flMemoryVMem.h@{fl\-Memory\-VMem.h}!vmemStrideBlocks@{vmemStrideBlocks}}
\index{vmemStrideBlocks@{vmemStrideBlocks}!flMemoryVMem.h@{fl\-Memory\-VMem.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Vmem\-Stride\-Block}$\ast$ {\bf vmem\-Stride\-Blocks}}\label{flMemoryVMem_8h_f76725e6d15a4b7ccf09e2a47b8bd21d}




Definition at line 27 of file fl\-Memory\-VMem.c.

Referenced by vmem\-Stride\-Align(), vmem\-Stride\-Block\-Add(), vmem\-Stride\-Block\-Del(), vmem\-Stride\-Free(), vmem\-Stride\-Free\-Space(), vmem\-Stride\-Usage(), and vmem\-Term().