\hypertarget{vpool_8h}{}\section{src/vpool.h File Reference}
\label{vpool_8h}\index{src/vpool.\+h@{src/vpool.\+h}}
{\ttfamily \#include $<$sys/types.\+h$>$}\newline
{\ttfamily \#include $<$limits.\+h$>$}\newline
Include dependency graph for vpool.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=214pt]{vpool_8h__incl}
\end{center}
\end{figure}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structvpool}{vpool}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{vpool_8h_a4b6de5ee6aef3fd7aa35d96ff46e3493}{V\+P\+O\+O\+L\+\_\+\+T\+A\+IL}~U\+I\+N\+T\+\_\+\+M\+AX
\item 
\#define \hyperlink{vpool_8h_ab49af9fdadf55857fc3d3a1503648db7}{vpool\+\_\+is\+\_\+empty}(pool)~((pool)-\/$>$v\+\_\+off == 0)
\item 
\#define \hyperlink{vpool_8h_a9c1255402f06e4ad05d333e057a49f84}{vpool\+\_\+get\+\_\+buf}(pool)~((pool)-\/$>$v\+\_\+buf)
\item 
\#define \hyperlink{vpool_8h_af2a9a3d57009ef7298267f1bc4efd1c0}{vpool\+\_\+get\+\_\+length}(pool)~((pool)-\/$>$v\+\_\+off)
\item 
\#define \hyperlink{vpool_8h_ae54f0bf8bfb50161ba651e12846ff4f7}{vpool\+\_\+get\+\_\+error}(pool)~((pool)-\/$>$v\+\_\+lasterr)
\end{DoxyCompactItemize}
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{vpool_8h_ada31c8493f41a664714db346d753fd84}{vpool\+\_\+trunc} \{ \hyperlink{vpool_8h_ada31c8493f41a664714db346d753fd84a6e9564bdf035c4a6e5bad8917f206625}{V\+P\+O\+O\+L\+\_\+\+E\+X\+C\+L\+U\+DE}, 
\hyperlink{vpool_8h_ada31c8493f41a664714db346d753fd84adfad44d614147e36f86db91df68f0390}{V\+P\+O\+O\+L\+\_\+\+I\+N\+C\+L\+U\+DE}
 \}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{vpool_8h_afc708ae77564de00887307ed7cec974d}{vpool\+\_\+init} (struct \hyperlink{structvpool}{vpool} $\ast$pool, size\+\_\+t blksize, size\+\_\+t limit)
\item 
void \hyperlink{vpool_8h_aab8511a678ef085b4cbae460a51659fc}{vpool\+\_\+final} (struct \hyperlink{structvpool}{vpool} $\ast$pool)
\item 
void \hyperlink{vpool_8h_ac40782ea267aa556b164c9ea4146edbd}{vpool\+\_\+reset} (struct \hyperlink{structvpool}{vpool} $\ast$pool)
\item 
void \hyperlink{vpool_8h_ac6625cf1156b0bf18a11105600d90322}{vpool\+\_\+wipe} (struct \hyperlink{structvpool}{vpool} $\ast$pool)
\item 
void $\ast$ \hyperlink{vpool_8h_ad00761738bfc7ea4fa2bac2a615d2846}{vpool\+\_\+insert} (struct \hyperlink{structvpool}{vpool} $\ast$pool, size\+\_\+t where, void $\ast$data, size\+\_\+t datsize)
\item 
void $\ast$ \hyperlink{vpool_8h_a78078127e2d1f4059a5b0f02f8908212}{vpool\+\_\+expand} (struct \hyperlink{structvpool}{vpool} $\ast$pool, size\+\_\+t where, size\+\_\+t size)
\item 
int \hyperlink{vpool_8h_a9353f2478b1f638bea5cbda5f9cae509}{vpool\+\_\+truncate} (struct \hyperlink{structvpool}{vpool} $\ast$pool, size\+\_\+t where, size\+\_\+t size, enum \hyperlink{vpool_8h_ada31c8493f41a664714db346d753fd84}{vpool\+\_\+trunc} how)
\item 
void \hyperlink{vpool_8h_a5fb26c70c87080ca8740c46795d2cda4}{vpool\+\_\+export} (struct \hyperlink{structvpool}{vpool} $\ast$pool, void $\ast$$\ast$buf, size\+\_\+t $\ast$size)
\end{DoxyCompactItemize}


\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{vpool_8h_a9c1255402f06e4ad05d333e057a49f84}\label{vpool_8h_a9c1255402f06e4ad05d333e057a49f84}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+get\+\_\+buf@{vpool\+\_\+get\+\_\+buf}}
\index{vpool\+\_\+get\+\_\+buf@{vpool\+\_\+get\+\_\+buf}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+get\+\_\+buf}{vpool\_get\_buf}}
{\footnotesize\ttfamily \#define vpool\+\_\+get\+\_\+buf(\begin{DoxyParamCaption}\item[{}]{pool }\end{DoxyParamCaption})~((pool)-\/$>$v\+\_\+buf)}



Definition at line 54 of file vpool.\+h.

\mbox{\Hypertarget{vpool_8h_ae54f0bf8bfb50161ba651e12846ff4f7}\label{vpool_8h_ae54f0bf8bfb50161ba651e12846ff4f7}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+get\+\_\+error@{vpool\+\_\+get\+\_\+error}}
\index{vpool\+\_\+get\+\_\+error@{vpool\+\_\+get\+\_\+error}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+get\+\_\+error}{vpool\_get\_error}}
{\footnotesize\ttfamily \#define vpool\+\_\+get\+\_\+error(\begin{DoxyParamCaption}\item[{}]{pool }\end{DoxyParamCaption})~((pool)-\/$>$v\+\_\+lasterr)}



Definition at line 56 of file vpool.\+h.

\mbox{\Hypertarget{vpool_8h_af2a9a3d57009ef7298267f1bc4efd1c0}\label{vpool_8h_af2a9a3d57009ef7298267f1bc4efd1c0}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+get\+\_\+length@{vpool\+\_\+get\+\_\+length}}
\index{vpool\+\_\+get\+\_\+length@{vpool\+\_\+get\+\_\+length}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+get\+\_\+length}{vpool\_get\_length}}
{\footnotesize\ttfamily \#define vpool\+\_\+get\+\_\+length(\begin{DoxyParamCaption}\item[{}]{pool }\end{DoxyParamCaption})~((pool)-\/$>$v\+\_\+off)}



Definition at line 55 of file vpool.\+h.

\mbox{\Hypertarget{vpool_8h_ab49af9fdadf55857fc3d3a1503648db7}\label{vpool_8h_ab49af9fdadf55857fc3d3a1503648db7}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+is\+\_\+empty@{vpool\+\_\+is\+\_\+empty}}
\index{vpool\+\_\+is\+\_\+empty@{vpool\+\_\+is\+\_\+empty}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+is\+\_\+empty}{vpool\_is\_empty}}
{\footnotesize\ttfamily \#define vpool\+\_\+is\+\_\+empty(\begin{DoxyParamCaption}\item[{}]{pool }\end{DoxyParamCaption})~((pool)-\/$>$v\+\_\+off == 0)}



Definition at line 53 of file vpool.\+h.

\mbox{\Hypertarget{vpool_8h_a4b6de5ee6aef3fd7aa35d96ff46e3493}\label{vpool_8h_a4b6de5ee6aef3fd7aa35d96ff46e3493}} 
\index{vpool.\+h@{vpool.\+h}!V\+P\+O\+O\+L\+\_\+\+T\+A\+IL@{V\+P\+O\+O\+L\+\_\+\+T\+A\+IL}}
\index{V\+P\+O\+O\+L\+\_\+\+T\+A\+IL@{V\+P\+O\+O\+L\+\_\+\+T\+A\+IL}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{V\+P\+O\+O\+L\+\_\+\+T\+A\+IL}{VPOOL\_TAIL}}
{\footnotesize\ttfamily \#define V\+P\+O\+O\+L\+\_\+\+T\+A\+IL~U\+I\+N\+T\+\_\+\+M\+AX}



Definition at line 38 of file vpool.\+h.



\subsection{Enumeration Type Documentation}
\mbox{\Hypertarget{vpool_8h_ada31c8493f41a664714db346d753fd84}\label{vpool_8h_ada31c8493f41a664714db346d753fd84}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+trunc@{vpool\+\_\+trunc}}
\index{vpool\+\_\+trunc@{vpool\+\_\+trunc}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+trunc}{vpool\_trunc}}
{\footnotesize\ttfamily enum \hyperlink{vpool_8h_ada31c8493f41a664714db346d753fd84}{vpool\+\_\+trunc}}

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{V\+P\+O\+O\+L\+\_\+\+E\+X\+C\+L\+U\+DE@{V\+P\+O\+O\+L\+\_\+\+E\+X\+C\+L\+U\+DE}!vpool.\+h@{vpool.\+h}}\index{vpool.\+h@{vpool.\+h}!V\+P\+O\+O\+L\+\_\+\+E\+X\+C\+L\+U\+DE@{V\+P\+O\+O\+L\+\_\+\+E\+X\+C\+L\+U\+DE}}}\mbox{\Hypertarget{vpool_8h_ada31c8493f41a664714db346d753fd84a6e9564bdf035c4a6e5bad8917f206625}\label{vpool_8h_ada31c8493f41a664714db346d753fd84a6e9564bdf035c4a6e5bad8917f206625}} 
V\+P\+O\+O\+L\+\_\+\+E\+X\+C\+L\+U\+DE&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{V\+P\+O\+O\+L\+\_\+\+I\+N\+C\+L\+U\+DE@{V\+P\+O\+O\+L\+\_\+\+I\+N\+C\+L\+U\+DE}!vpool.\+h@{vpool.\+h}}\index{vpool.\+h@{vpool.\+h}!V\+P\+O\+O\+L\+\_\+\+I\+N\+C\+L\+U\+DE@{V\+P\+O\+O\+L\+\_\+\+I\+N\+C\+L\+U\+DE}}}\mbox{\Hypertarget{vpool_8h_ada31c8493f41a664714db346d753fd84adfad44d614147e36f86db91df68f0390}\label{vpool_8h_ada31c8493f41a664714db346d753fd84adfad44d614147e36f86db91df68f0390}} 
V\+P\+O\+O\+L\+\_\+\+I\+N\+C\+L\+U\+DE&\\
\hline

\end{DoxyEnumFields}


Definition at line 37 of file vpool.\+h.



\subsection{Function Documentation}
\mbox{\Hypertarget{vpool_8h_a78078127e2d1f4059a5b0f02f8908212}\label{vpool_8h_a78078127e2d1f4059a5b0f02f8908212}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+expand@{vpool\+\_\+expand}}
\index{vpool\+\_\+expand@{vpool\+\_\+expand}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+expand()}{vpool\_expand()}}
{\footnotesize\ttfamily void$\ast$ vpool\+\_\+expand (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool,  }\item[{size\+\_\+t}]{where,  }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_a5fb26c70c87080ca8740c46795d2cda4}\label{vpool_8h_a5fb26c70c87080ca8740c46795d2cda4}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+export@{vpool\+\_\+export}}
\index{vpool\+\_\+export@{vpool\+\_\+export}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+export()}{vpool\_export()}}
{\footnotesize\ttfamily void vpool\+\_\+export (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool,  }\item[{void $\ast$$\ast$}]{buf,  }\item[{size\+\_\+t $\ast$}]{size }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_aab8511a678ef085b4cbae460a51659fc}\label{vpool_8h_aab8511a678ef085b4cbae460a51659fc}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+final@{vpool\+\_\+final}}
\index{vpool\+\_\+final@{vpool\+\_\+final}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+final()}{vpool\_final()}}
{\footnotesize\ttfamily void vpool\+\_\+final (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_afc708ae77564de00887307ed7cec974d}\label{vpool_8h_afc708ae77564de00887307ed7cec974d}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+init@{vpool\+\_\+init}}
\index{vpool\+\_\+init@{vpool\+\_\+init}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+init()}{vpool\_init()}}
{\footnotesize\ttfamily void vpool\+\_\+init (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool,  }\item[{size\+\_\+t}]{blksize,  }\item[{size\+\_\+t}]{limit }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_ad00761738bfc7ea4fa2bac2a615d2846}\label{vpool_8h_ad00761738bfc7ea4fa2bac2a615d2846}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+insert@{vpool\+\_\+insert}}
\index{vpool\+\_\+insert@{vpool\+\_\+insert}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+insert()}{vpool\_insert()}}
{\footnotesize\ttfamily void$\ast$ vpool\+\_\+insert (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool,  }\item[{size\+\_\+t}]{where,  }\item[{void $\ast$}]{data,  }\item[{size\+\_\+t}]{datsize }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_ac40782ea267aa556b164c9ea4146edbd}\label{vpool_8h_ac40782ea267aa556b164c9ea4146edbd}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+reset@{vpool\+\_\+reset}}
\index{vpool\+\_\+reset@{vpool\+\_\+reset}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+reset()}{vpool\_reset()}}
{\footnotesize\ttfamily void vpool\+\_\+reset (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_a9353f2478b1f638bea5cbda5f9cae509}\label{vpool_8h_a9353f2478b1f638bea5cbda5f9cae509}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+truncate@{vpool\+\_\+truncate}}
\index{vpool\+\_\+truncate@{vpool\+\_\+truncate}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+truncate()}{vpool\_truncate()}}
{\footnotesize\ttfamily int vpool\+\_\+truncate (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool,  }\item[{size\+\_\+t}]{where,  }\item[{size\+\_\+t}]{size,  }\item[{enum \hyperlink{vpool_8h_ada31c8493f41a664714db346d753fd84}{vpool\+\_\+trunc}}]{how }\end{DoxyParamCaption})}

\mbox{\Hypertarget{vpool_8h_ac6625cf1156b0bf18a11105600d90322}\label{vpool_8h_ac6625cf1156b0bf18a11105600d90322}} 
\index{vpool.\+h@{vpool.\+h}!vpool\+\_\+wipe@{vpool\+\_\+wipe}}
\index{vpool\+\_\+wipe@{vpool\+\_\+wipe}!vpool.\+h@{vpool.\+h}}
\subsubsection{\texorpdfstring{vpool\+\_\+wipe()}{vpool\_wipe()}}
{\footnotesize\ttfamily void vpool\+\_\+wipe (\begin{DoxyParamCaption}\item[{struct \hyperlink{structvpool}{vpool} $\ast$}]{pool }\end{DoxyParamCaption})}

