\doxysection{oggz\+\_\+io.\+h}
\label{oggz__io_8h_source}\index{oggz\_io.h@{oggz\_io.h}}
\textbf{ Go to the documentation of this file.}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{/*}}
\DoxyCodeLine{00002\ \textcolor{comment}{\ \ \ Copyright\ (C)\ 2003\ Commonwealth\ Scientific\ and\ Industrial\ Research}}
\DoxyCodeLine{00003\ \textcolor{comment}{\ \ \ Organisation\ (CSIRO)\ Australia}}
\DoxyCodeLine{00004\ \textcolor{comment}{}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ \ \ Redistribution\ and\ use\ in\ source\ and\ binary\ forms,\ with\ or\ without}}
\DoxyCodeLine{00006\ \textcolor{comment}{\ \ \ modification,\ are\ permitted\ provided\ that\ the\ following\ conditions}}
\DoxyCodeLine{00007\ \textcolor{comment}{\ \ \ are\ met:}}
\DoxyCodeLine{00008\ \textcolor{comment}{}}
\DoxyCodeLine{00009\ \textcolor{comment}{\ \ \ -\/\ Redistributions\ of\ source\ code\ must\ retain\ the\ above\ copyright}}
\DoxyCodeLine{00010\ \textcolor{comment}{\ \ \ notice,\ this\ list\ of\ conditions\ and\ the\ following\ disclaimer.}}
\DoxyCodeLine{00011\ \textcolor{comment}{}}
\DoxyCodeLine{00012\ \textcolor{comment}{\ \ \ -\/\ Redistributions\ in\ binary\ form\ must\ reproduce\ the\ above\ copyright}}
\DoxyCodeLine{00013\ \textcolor{comment}{\ \ \ notice,\ this\ list\ of\ conditions\ and\ the\ following\ disclaimer\ in\ the}}
\DoxyCodeLine{00014\ \textcolor{comment}{\ \ \ documentation\ and/or\ other\ materials\ provided\ with\ the\ distribution.}}
\DoxyCodeLine{00015\ \textcolor{comment}{}}
\DoxyCodeLine{00016\ \textcolor{comment}{\ \ \ -\/\ Neither\ the\ name\ of\ CSIRO\ Australia\ nor\ the\ names\ of\ its}}
\DoxyCodeLine{00017\ \textcolor{comment}{\ \ \ contributors\ may\ be\ used\ to\ endorse\ or\ promote\ products\ derived\ from}}
\DoxyCodeLine{00018\ \textcolor{comment}{\ \ \ this\ software\ without\ specific\ prior\ written\ permission.}}
\DoxyCodeLine{00019\ \textcolor{comment}{}}
\DoxyCodeLine{00020\ \textcolor{comment}{\ \ \ THIS\ SOFTWARE\ IS\ PROVIDED\ BY\ THE\ COPYRIGHT\ HOLDERS\ AND\ CONTRIBUTORS}}
\DoxyCodeLine{00021\ \textcolor{comment}{\ \ \ \`{}\`{}AS\ IS''\ AND\ ANY\ EXPRESS\ OR\ IMPLIED\ WARRANTIES,\ INCLUDING,\ BUT\ NOT}}
\DoxyCodeLine{00022\ \textcolor{comment}{\ \ \ LIMITED\ TO,\ THE\ IMPLIED\ WARRANTIES\ OF\ MERCHANTABILITY\ AND\ FITNESS\ FOR\ A}}
\DoxyCodeLine{00023\ \textcolor{comment}{\ \ \ PARTICULAR\ PURPOSE\ ARE\ DISCLAIMED.\ \ IN\ NO\ EVENT\ SHALL\ THE\ ORGANISATION\ OR}}
\DoxyCodeLine{00024\ \textcolor{comment}{\ \ \ CONTRIBUTORS\ BE\ LIABLE\ FOR\ ANY\ DIRECT,\ INDIRECT,\ INCIDENTAL,\ SPECIAL,}}
\DoxyCodeLine{00025\ \textcolor{comment}{\ \ \ EXEMPLARY,\ OR\ CONSEQUENTIAL\ DAMAGES\ (INCLUDING,\ BUT\ NOT\ LIMITED\ TO,}}
\DoxyCodeLine{00026\ \textcolor{comment}{\ \ \ PROCUREMENT\ OF\ SUBSTITUTE\ GOODS\ OR\ SERVICES;\ LOSS\ OF\ USE,\ DATA,\ OR}}
\DoxyCodeLine{00027\ \textcolor{comment}{\ \ \ PROFITS;\ OR\ BUSINESS\ INTERRUPTION)\ HOWEVER\ CAUSED\ AND\ ON\ ANY\ THEORY\ OF}}
\DoxyCodeLine{00028\ \textcolor{comment}{\ \ \ LIABILITY,\ WHETHER\ IN\ CONTRACT,\ STRICT\ LIABILITY,\ OR\ TORT\ (INCLUDING}}
\DoxyCodeLine{00029\ \textcolor{comment}{\ \ \ NEGLIGENCE\ OR\ OTHERWISE)\ ARISING\ IN\ ANY\ WAY\ OUT\ OF\ THE\ USE\ OF\ THIS}}
\DoxyCodeLine{00030\ \textcolor{comment}{\ \ \ SOFTWARE,\ EVEN\ IF\ ADVISED\ OF\ THE\ POSSIBILITY\ OF\ SUCH\ DAMAGE.}}
\DoxyCodeLine{00031\ \textcolor{comment}{*/}}
\DoxyCodeLine{00032\ }
\DoxyCodeLine{00033\ \textcolor{preprocessor}{\#ifndef\ OGGZ\_IO\_HEADER}}
\DoxyCodeLine{00034\ \textcolor{preprocessor}{\#define\ OGGZ\_IO\_HEADER}}
\DoxyCodeLine{00035\ }
\DoxyCodeLine{00053\ }
\DoxyCodeLine{00065\ \textcolor{keyword}{typedef}\ size\_t\ (*OggzIORead)\ (\textcolor{keywordtype}{void}\ *\ user\_handle,\ \textcolor{keywordtype}{void}\ *\ buf,\ \textcolor{keywordtype}{size\_t}\ n);}
\DoxyCodeLine{00066\ }
\DoxyCodeLine{00078\ \textcolor{keyword}{typedef}\ size\_t\ (*OggzIOWrite)\ (\textcolor{keywordtype}{void}\ *\ user\_handle,\ \textcolor{keywordtype}{void}\ *\ buf,\ \textcolor{keywordtype}{size\_t}\ n);}
\DoxyCodeLine{00079\ }
\DoxyCodeLine{00093\ \textcolor{keyword}{typedef}\ int\ (*OggzIOSeek)\ (\textcolor{keywordtype}{void}\ *\ user\_handle,\ \textcolor{keywordtype}{long}\ offset,\ \textcolor{keywordtype}{int}\ whence);}
\DoxyCodeLine{00094\ }
\DoxyCodeLine{00104\ \textcolor{keyword}{typedef}\ long\ (*OggzIOTell)\ (\textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00105\ }
\DoxyCodeLine{00115\ \textcolor{keyword}{typedef}\ int\ (*OggzIOFlush)\ (\textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00116\ }
\DoxyCodeLine{00117\ }
\DoxyCodeLine{00130\ \textcolor{keywordtype}{int}\ oggz\_io\_set\_read\ (OGGZ\ *\ oggz,\ OggzIORead\ read,\ \textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00131\ }
\DoxyCodeLine{00139\ \textcolor{keywordtype}{void}\ *\ oggz\_io\_get\_read\_user\_handle\ (OGGZ\ *\ oggz);}
\DoxyCodeLine{00140\ }
\DoxyCodeLine{00153\ \textcolor{keywordtype}{int}\ oggz\_io\_set\_write\ (OGGZ\ *\ oggz,\ OggzIOWrite\ write,\ \textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00154\ }
\DoxyCodeLine{00162\ \textcolor{keywordtype}{void}\ *\ oggz\_io\_get\_write\_user\_handle\ (OGGZ\ *\ oggz);}
\DoxyCodeLine{00163\ }
\DoxyCodeLine{00178\ \textcolor{keywordtype}{int}\ oggz\_io\_set\_seek\ (OGGZ\ *\ oggz,\ OggzIOSeek\ seek,\ \textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00179\ }
\DoxyCodeLine{00187\ \textcolor{keywordtype}{void}\ *\ oggz\_io\_get\_seek\_user\_handle\ (OGGZ\ *\ oggz);}
\DoxyCodeLine{00188\ }
\DoxyCodeLine{00201\ \textcolor{keywordtype}{int}\ oggz\_io\_set\_tell\ (OGGZ\ *\ oggz,\ OggzIOTell\ tell,\ \textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00202\ }
\DoxyCodeLine{00210\ \textcolor{keywordtype}{void}\ *\ oggz\_io\_get\_tell\_user\_handle\ (OGGZ\ *\ oggz);}
\DoxyCodeLine{00211\ }
\DoxyCodeLine{00225\ \textcolor{keywordtype}{int}\ oggz\_io\_set\_flush\ (OGGZ\ *\ oggz,\ OggzIOFlush\ flush,\ \textcolor{keywordtype}{void}\ *\ user\_handle);}
\DoxyCodeLine{00226\ }
\DoxyCodeLine{00234\ \textcolor{keywordtype}{void}\ *\ oggz\_io\_get\_flush\_user\_handle\ (OGGZ\ *\ oggz);}
\DoxyCodeLine{00235\ }
\DoxyCodeLine{00236\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ OGGZ\_IO\_HEADER\ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
