\doxysection{vmem.\+h File Reference}
\label{a00035}\index{vmem.h@{vmem.h}}


Class \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715}\+: A safer, object-\/oriented, malloc/free object.  


{\ttfamily \#include $<$maloc/maloc\+\_\+base.\+h$>$}\newline
Include dependency graph for vmem.\+h\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{a00036}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=224pt]{a00037}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ s\+Vmem}
\begin{DoxyCompactList}\small\item\em Contains public data members for \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} class. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \textbf{ s\+Vmem} \textbf{ Vmem}
\begin{DoxyCompactList}\small\item\em Declaration of the \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} class as the \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} structure. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
size\+\_\+t \textbf{ Vmem\+\_\+bytes\+Total} (void)
\begin{DoxyCompactList}\small\item\em Return total of all active \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} malloc areas (current footprint) \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+malloc\+Bytes\+Total} (void)
\begin{DoxyCompactList}\small\item\em Return total of all \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} malloc allocations. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+free\+Bytes\+Total} (void)
\begin{DoxyCompactList}\small\item\em Return total of all \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} free calls. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+high\+Water\+Total} (void)
\begin{DoxyCompactList}\small\item\em Return the high-\/water byte mark (largest footprint) \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+malloc\+Areas\+Total} (void)
\begin{DoxyCompactList}\small\item\em Return total of all active \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} malloc areas by groups. \end{DoxyCompactList}\item 
void \textbf{ Vmem\+\_\+print\+Total} (void)
\begin{DoxyCompactList}\small\item\em Print current memory statistics for all \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} malloc/free areas. \end{DoxyCompactList}\item 
\textbf{ Vmem} $\ast$ \textbf{ Vmem\+\_\+ctor} (char $\ast$name)
\begin{DoxyCompactList}\small\item\em Construct the dynamic memory allocation logging object. \end{DoxyCompactList}\item 
void \textbf{ Vmem\+\_\+dtor} (\textbf{ Vmem} $\ast$$\ast$thee)
\begin{DoxyCompactList}\small\item\em Destruct the dynamic memory allocation logging object. \end{DoxyCompactList}\item 
void $\ast$ \textbf{ Vmem\+\_\+malloc} (\textbf{ Vmem} $\ast$thee, size\+\_\+t num, size\+\_\+t size)
\begin{DoxyCompactList}\small\item\em A safe logged version of malloc. \end{DoxyCompactList}\item 
void \textbf{ Vmem\+\_\+free} (\textbf{ Vmem} $\ast$thee, size\+\_\+t num, size\+\_\+t size, void $\ast$$\ast$ram)
\begin{DoxyCompactList}\small\item\em A safe logged version of free. \end{DoxyCompactList}\item 
void $\ast$ \textbf{ Vmem\+\_\+realloc} (\textbf{ Vmem} $\ast$thee, size\+\_\+t num, size\+\_\+t size, void $\ast$$\ast$ram, size\+\_\+t new\+Num)
\begin{DoxyCompactList}\small\item\em A safe logged version of realloc (usually a bad idea to use this) \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+bytes} (\textbf{ Vmem} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return total of all ACTIVE malloc areas used by \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} object. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+malloc\+Bytes} (\textbf{ Vmem} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return total of all mallocs performed by \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} object. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+free\+Bytes} (\textbf{ Vmem} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return total of all frees performed by \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} object. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+high\+Water} (\textbf{ Vmem} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return high-\/water malloc bytemark hit by \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} object. \end{DoxyCompactList}\item 
size\+\_\+t \textbf{ Vmem\+\_\+malloc\+Areas} (\textbf{ Vmem} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return total number of individual active malloc areas. \end{DoxyCompactList}\item 
void \textbf{ Vmem\+\_\+print} (\textbf{ Vmem} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Print current memory stats associated with this \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715} object. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Class \doxyref{Vmem}{p.}{a00053_ga10a4d5e0b8931714c130ebb889adc715}\+: A safer, object-\/oriented, malloc/free object. 

\begin{DoxyAuthor}{Author}
Michael Holst 
\end{DoxyAuthor}
\begin{DoxyNote}{Note}
None 
\end{DoxyNote}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id}
\doxyref{vmem.\+h}{p.}{a00035},v 1.\+21 2010/08/12 05\+:40\+:36 fetk Exp 
\end{DoxyParagraph}


\begin{DoxyAttention}{Attention}
\begin{DoxyVerb}*
* MALOC = < Minimal Abstraction Layer for Object-oriented C >
* Copyright (C) 1994-- Michael Holst
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
* 
* \end{DoxyVerb}
 
\end{DoxyAttention}
