\doxysection{vio.\+h}
\label{a00020_source}\index{vio.h@{vio.h}}
\textbf{ Go to the documentation of this file.}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ }
\DoxyCodeLine{00008\ }
\DoxyCodeLine{00038\ }
\DoxyCodeLine{00039\ \textcolor{preprocessor}{\#ifndef\ \_VIO\_H\_}}
\DoxyCodeLine{00040\ \textcolor{preprocessor}{\#define\ \_VIO\_H\_}}
\DoxyCodeLine{00041\ }
\DoxyCodeLine{00042\ \textcolor{preprocessor}{\#include\ <maloc/maloc\_base.h>}}
\DoxyCodeLine{00043\ }
\DoxyCodeLine{00044\ \textcolor{preprocessor}{\#include\ <maloc/vnm.h>}}
\DoxyCodeLine{00045\ }
\DoxyCodeLine{00046\ \textcolor{comment}{/*}}
\DoxyCodeLine{00047\ \textcolor{comment}{\ *\ ***************************************************************************}}
\DoxyCodeLine{00048\ \textcolor{comment}{\ *\ Class\ Vio:\ Parameters\ and\ datatypes}}
\DoxyCodeLine{00049\ \textcolor{comment}{\ *\ ***************************************************************************}}
\DoxyCodeLine{00050\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00051\ }
\DoxyCodeLine{00053\ \textcolor{preprocessor}{\#define\ VPORTNUMBER\ 14916\ \ \ }\textcolor{preprocessor}{}}
\DoxyCodeLine{00055\ \textcolor{preprocessor}{\#define\ VIO\_MAXBUF\ 10\ \ \ \ \ \ \ }}
\DoxyCodeLine{00056\ }
\DoxyCodeLine{00062\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ VIOtype\ \{}
\DoxyCodeLine{00063\ \ \ \ \ VIO\_NO\_TYPE,\ }
\DoxyCodeLine{00064\ \ \ \ \ VIO\_SDIO,}
\DoxyCodeLine{00065\ \ \ \ \ VIO\_BUFF,}
\DoxyCodeLine{00066\ \ \ \ \ VIO\_FILE,}
\DoxyCodeLine{00067\ \ \ \ \ VIO\_UNIX,}
\DoxyCodeLine{00068\ \ \ \ \ VIO\_INET}
\DoxyCodeLine{00069\ \}\ VIOtype;}
\DoxyCodeLine{00070\ }
\DoxyCodeLine{00076\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ VIOfrmt\ \{}
\DoxyCodeLine{00077\ \ \ \ \ VIO\_NO\_FRMT,}
\DoxyCodeLine{00078\ \ \ \ \ VIO\_XDR,}
\DoxyCodeLine{00079\ \ \ \ \ VIO\_ASC}
\DoxyCodeLine{00080\ \}\ VIOfrmt;}
\DoxyCodeLine{00081\ }
\DoxyCodeLine{00087\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{enum}\ VIOrwkey\ \{}
\DoxyCodeLine{00088\ \ \ \ \ VIO\_NO\_RW,}
\DoxyCodeLine{00089\ \ \ \ \ VIO\_R,}
\DoxyCodeLine{00090\ \ \ \ \ VIO\_W}
\DoxyCodeLine{00091\ \}\ VIOrwkey;}
\DoxyCodeLine{00092\ }
\DoxyCodeLine{00098\ \textcolor{keyword}{struct\ }sVio\ \{}
\DoxyCodeLine{00099\ }
\DoxyCodeLine{00100\ \ \ \ \ VIOtype\ type;\ \ \ \ \ \ \ }
\DoxyCodeLine{00107\ }
\DoxyCodeLine{00108\ \ \ \ \ VIOfrmt\ frmt;\ \ \ \ \ \ \ }
\DoxyCodeLine{00112\ }
\DoxyCodeLine{00113\ \ \ \ \ VIOrwkey\ rwkey;\ \ \ \ \ }
\DoxyCodeLine{00117\ }
\DoxyCodeLine{00118\ \ \ \ \ \textcolor{keywordtype}{char}\ file[VMAX\_ARGLEN];\ \ \ }
\DoxyCodeLine{00119\ \ \ \ \ \textcolor{keywordtype}{char}\ lhost[VMAX\_ARGLEN];\ \ }
\DoxyCodeLine{00120\ \ \ \ \ \textcolor{keywordtype}{char}\ rhost[VMAX\_ARGLEN];\ \ }
\DoxyCodeLine{00121\ }
\DoxyCodeLine{00122\ \ \ \ \ \textcolor{keywordtype}{int}\ error;\ \ \ \ \ \ \ \ }
\DoxyCodeLine{00123\ \ \ \ \ \textcolor{keywordtype}{int}\ dirty;\ \ \ \ \ \ \ \ }
\DoxyCodeLine{00124\ }
\DoxyCodeLine{00125\ \ \ \ \ FILE\ *fp;\ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00126\ \ \ \ \ \textcolor{keywordtype}{int}\ so;\ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00127\ \ \ \ \ \textcolor{keywordtype}{int}\ soc;\ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00128\ \ \ \ \ \textcolor{keywordtype}{void}\ *name;\ \ \ \ \ \ \ }
\DoxyCodeLine{00129\ \ \ \ \ \textcolor{keywordtype}{void}\ *axdr;\ \ \ \ \ \ \ }
\DoxyCodeLine{00130\ }
\DoxyCodeLine{00131\ \ \ \ \ \textcolor{keywordtype}{char}\ whiteChars[VMAX\_ARGNUM];\ }
\DoxyCodeLine{00132\ \ \ \ \ \textcolor{keywordtype}{char}\ commChars[VMAX\_ARGNUM];\ \ }
\DoxyCodeLine{00133\ }
\DoxyCodeLine{00134\ \ \ \ \ \textcolor{keywordtype}{char}\ ioBuffer[VMAX\_BUFSIZE];\ \ }
\DoxyCodeLine{00135\ \ \ \ \ \textcolor{keywordtype}{int}\ ioBufferLen;\ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00136\ }
\DoxyCodeLine{00137\ \ \ \ \ \textcolor{keywordtype}{char}\ putBuffer[VMAX\_BUFSIZE];\ }
\DoxyCodeLine{00138\ \ \ \ \ \textcolor{keywordtype}{int}\ putBufferLen;\ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00139\ }
\DoxyCodeLine{00140\ \ \ \ \ \textcolor{keywordtype}{char}\ *VIObuffer;\ \ \ \ }
\DoxyCodeLine{00141\ \ \ \ \ \textcolor{keywordtype}{int}\ VIObufferLen;\ \ \ }
\DoxyCodeLine{00142\ \ \ \ \ \textcolor{keywordtype}{int}\ VIObufferPtr;\ \ \ }
\DoxyCodeLine{00143\ }
\DoxyCodeLine{00144\ \};}
\DoxyCodeLine{00145\ }
\DoxyCodeLine{00151\ \textcolor{keyword}{typedef}\ \textcolor{keyword}{struct\ }sVio\ Vio;}
\DoxyCodeLine{00152\ }
\DoxyCodeLine{00153\ \textcolor{comment}{/*}}
\DoxyCodeLine{00154\ \textcolor{comment}{\ *\ ***************************************************************************}}
\DoxyCodeLine{00155\ \textcolor{comment}{\ *\ Class\ Vio:\ Inlineable\ methods\ (vio.c)}}
\DoxyCodeLine{00156\ \textcolor{comment}{\ *\ ***************************************************************************}}
\DoxyCodeLine{00157\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00158\ }
\DoxyCodeLine{00159\ \textcolor{preprocessor}{\#if\ !defined(VINLINE\_MALOC)}}
\DoxyCodeLine{00160\ \textcolor{preprocessor}{\#else\ }\textcolor{comment}{/*\ if\ defined(VINLINE\_MALOC)\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{00161\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ if\ !defined(VINLINE\_MALOC)\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{00162\ }
\DoxyCodeLine{00163\ \textcolor{comment}{/*}}
\DoxyCodeLine{00164\ \textcolor{comment}{\ *\ ***************************************************************************}}
\DoxyCodeLine{00165\ \textcolor{comment}{\ *\ Class\ Vio:\ Non-\/Inlineable\ methods\ (vio.c)}}
\DoxyCodeLine{00166\ \textcolor{comment}{\ *\ ***************************************************************************}}
\DoxyCodeLine{00167\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00168\ }
\DoxyCodeLine{00176\ \textcolor{keywordtype}{void}\ Vio\_start(\textcolor{keywordtype}{void});}
\DoxyCodeLine{00177\ }
\DoxyCodeLine{00185\ \textcolor{keywordtype}{void}\ Vio\_stop(\textcolor{keywordtype}{void});}
\DoxyCodeLine{00186\ }
\DoxyCodeLine{00199\ Vio*\ Vio\_ctor(\textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *socktype,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *datafrmt,\ }
\DoxyCodeLine{00200\ \ \ \ \ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *hostname,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *filename,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *rwkey);}
\DoxyCodeLine{00201\ }
\DoxyCodeLine{00215\ \textcolor{keywordtype}{int}\ Vio\_ctor2(Vio\ *thee,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *socktype,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *datafrmt,\ }
\DoxyCodeLine{00216\ \ \ \ \ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *hostname,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *filename,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *rwkey);}
\DoxyCodeLine{00217\ }
\DoxyCodeLine{00226\ \textcolor{keywordtype}{void}\ Vio\_dtor(Vio\ **thee);}
\DoxyCodeLine{00227\ }
\DoxyCodeLine{00236\ \textcolor{keywordtype}{void}\ Vio\_dtor2(Vio\ *thee);}
\DoxyCodeLine{00237\ }
\DoxyCodeLine{00247\ \textcolor{keywordtype}{void}\ Vio\_setWhiteChars(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *whiteChars);}
\DoxyCodeLine{00248\ }
\DoxyCodeLine{00258\ \textcolor{keywordtype}{void}\ Vio\_setCommChars(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *commChars);}
\DoxyCodeLine{00259\ }
\DoxyCodeLine{00272\ \textcolor{keywordtype}{int}\ Vio\_accept(Vio\ *thee,\ \textcolor{keywordtype}{int}\ nonblock);}
\DoxyCodeLine{00273\ }
\DoxyCodeLine{00282\ \textcolor{keywordtype}{void}\ Vio\_acceptFree(Vio\ *thee);}
\DoxyCodeLine{00283\ }
\DoxyCodeLine{00296\ \textcolor{keywordtype}{int}\ Vio\_connect(Vio\ *thee,\ \textcolor{keywordtype}{int}\ nonblock);}
\DoxyCodeLine{00297\ }
\DoxyCodeLine{00306\ \textcolor{keywordtype}{void}\ Vio\_connectFree(Vio\ *thee);}
\DoxyCodeLine{00307\ }
\DoxyCodeLine{00317\ \textcolor{keywordtype}{int}\ Vio\_scanf(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *parms,\ ...);}
\DoxyCodeLine{00318\ }
\DoxyCodeLine{00328\ \textcolor{keywordtype}{int}\ Vio\_printf(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *parms,\ ...);}
\DoxyCodeLine{00329\ }
\DoxyCodeLine{00340\ \textcolor{keywordtype}{int}\ Vio\_read(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *buf,\ \textcolor{keywordtype}{int}\ bufsize);}
\DoxyCodeLine{00341\ }
\DoxyCodeLine{00352\ \textcolor{keywordtype}{int}\ Vio\_write(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *buf,\ \textcolor{keywordtype}{int}\ bufsize);}
\DoxyCodeLine{00353\ }
\DoxyCodeLine{00364\ \textcolor{keywordtype}{void}\ Vio\_bufTake(Vio\ *thee,\ \textcolor{keywordtype}{char}\ *buf,\ \textcolor{keywordtype}{int}\ bufsize);}
\DoxyCodeLine{00365\ }
\DoxyCodeLine{00374\ \textcolor{keywordtype}{char}*\ Vio\_bufGive(Vio\ *thee);}
\DoxyCodeLine{00375\ }
\DoxyCodeLine{00384\ \textcolor{keywordtype}{int}\ Vio\_bufSize(Vio\ *thee);}
\DoxyCodeLine{00385\ }
\DoxyCodeLine{00398\ Vio\ *Vio\_socketOpen(\textcolor{keywordtype}{char}\ *key,}
\DoxyCodeLine{00399\ \ \ \ \ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *iodev,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *iofmt,}
\DoxyCodeLine{00400\ \ \ \ \ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *iohost,\ \textcolor{keyword}{const}\ \textcolor{keywordtype}{char}\ *iofile);}
\DoxyCodeLine{00401\ }
\DoxyCodeLine{00410\ \textcolor{keywordtype}{void}\ Vio\_socketClose(Vio\ **sock);}
\DoxyCodeLine{00411\ }
\DoxyCodeLine{00412\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ \_VIO\_H\_\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{00413\ }

\end{DoxyCode}
