\hypertarget{struct__Ecore__Audio__Vio}{}\section{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio Struct Reference}
\label{struct__Ecore__Audio__Vio}\index{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}}
\subsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
int($\ast$ \hyperlink{struct__Ecore__Audio__Vio_a6bee9b16dedcc803e9dbdf6fe805875f}{get\+\_\+length} )(void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj)
\begin{DoxyCompactList}\small\item\em Get the length of the file. \end{DoxyCompactList}\item 
int($\ast$ \hyperlink{struct__Ecore__Audio__Vio_ac5f4af98169c123930b8c7eac4e99df5}{seek} )(void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj, int offset, int whence)
\begin{DoxyCompactList}\small\item\em Seek to a position within the file. \end{DoxyCompactList}\item 
int($\ast$ \hyperlink{struct__Ecore__Audio__Vio_a72d4533f83b6fc3cd9a97c7ddffa9ef6}{tell} )(void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj)
\begin{DoxyCompactList}\small\item\em Get the current position within the file. \end{DoxyCompactList}\item 
int($\ast$ \hyperlink{struct__Ecore__Audio__Vio_aaf9b9ae51da618eb5ab93fd392014ad6}{read} )(void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj, void $\ast$buffer, int length)
\begin{DoxyCompactList}\small\item\em Read some data from the file. \end{DoxyCompactList}\item 
int($\ast$ \hyperlink{struct__Ecore__Audio__Vio_a895de543c9307be94fd7dd4af544a552}{write} )(void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj, const void $\ast$buffer, int length)
\begin{DoxyCompactList}\small\item\em Write some data to the file. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Field Documentation}
\mbox{\Hypertarget{struct__Ecore__Audio__Vio_a6bee9b16dedcc803e9dbdf6fe805875f}\label{struct__Ecore__Audio__Vio_a6bee9b16dedcc803e9dbdf6fe805875f}} 
\index{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}!get\+\_\+length@{get\+\_\+length}}
\index{get\+\_\+length@{get\+\_\+length}!\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}}
\subsubsection{\texorpdfstring{get\+\_\+length}{get\_length}}
{\footnotesize\ttfamily int($\ast$ \+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio\+::get\+\_\+length) (void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj)}



Get the length of the file. 


\begin{DoxyParams}{Parameters}
{\em data} & User data from the ecore\+\_\+audio\+\_\+obj\+\_\+set\+\_\+vio call \\
\hline
{\em eo\+\_\+obj} & The Ecore\+\_\+\+Audio object this operates on\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The length of the virtual file in bytes
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{struct__Ecore__Audio__Vio_ac5f4af98169c123930b8c7eac4e99df5}\label{struct__Ecore__Audio__Vio_ac5f4af98169c123930b8c7eac4e99df5}} 
\index{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}!seek@{seek}}
\index{seek@{seek}!\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}}
\subsubsection{\texorpdfstring{seek}{seek}}
{\footnotesize\ttfamily int($\ast$ \+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio\+::seek) (void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj, int offset, int whence)}



Seek to a position within the file. 


\begin{DoxyParams}{Parameters}
{\em data} & User data from the ecore\+\_\+audio\+\_\+obj\+\_\+set\+\_\+vio call \\
\hline
{\em eo\+\_\+obj} & The Ecore\+\_\+\+Audio object this operates on \\
\hline
{\em offset} & The number of bytes to move (can be negative) \\
\hline
{\em whence} & Accepts the same values as fseek(), which are\+: S\+E\+E\+K\+\_\+\+S\+ET\+: offset is absolute S\+E\+E\+K\+\_\+\+C\+UR\+: offset is relative to the current position S\+E\+E\+K\+\_\+\+E\+ND\+: offset is relative to the end\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The resulting position from the start of the file (in bytes) or -\/1 if an error occurred (i.\+e. out of bounds)
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{struct__Ecore__Audio__Vio_a72d4533f83b6fc3cd9a97c7ddffa9ef6}\label{struct__Ecore__Audio__Vio_a72d4533f83b6fc3cd9a97c7ddffa9ef6}} 
\index{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}!tell@{tell}}
\index{tell@{tell}!\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}}
\subsubsection{\texorpdfstring{tell}{tell}}
{\footnotesize\ttfamily int($\ast$ \+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio\+::tell) (void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj)}



Get the current position within the file. 


\begin{DoxyParams}{Parameters}
{\em data} & User data from the ecore\+\_\+audio\+\_\+obj\+\_\+set\+\_\+vio call \\
\hline
{\em eo\+\_\+obj} & The Ecore\+\_\+\+Audio object this operates on\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The resulting position from the start of the file (in bytes)
\end{DoxyReturn}
This is equivalent to calling \hyperlink{struct__Ecore__Audio__Vio_ac5f4af98169c123930b8c7eac4e99df5}{seek()} with offset 0 and whence S\+E\+E\+K\+\_\+\+C\+UR.

\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{struct__Ecore__Audio__Vio_aaf9b9ae51da618eb5ab93fd392014ad6}\label{struct__Ecore__Audio__Vio_aaf9b9ae51da618eb5ab93fd392014ad6}} 
\index{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}!read@{read}}
\index{read@{read}!\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}}
\subsubsection{\texorpdfstring{read}{read}}
{\footnotesize\ttfamily int($\ast$ \+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio\+::read) (void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj, void $\ast$buffer, int length)}



Read some data from the file. 


\begin{DoxyParams}[1]{Parameters}
 & {\em data} & User data from the ecore\+\_\+audio\+\_\+obj\+\_\+set\+\_\+vio call \\
\hline
 & {\em eo\+\_\+obj} & The Ecore\+\_\+\+Audio object this operates on \\
\hline
\mbox{\tt out}  & {\em buffer} & the buffer to write the data to \\
\hline
 & {\em length} & The number of bytes to read\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes read from the file. May be less than length
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
\mbox{\Hypertarget{struct__Ecore__Audio__Vio_a895de543c9307be94fd7dd4af544a552}\label{struct__Ecore__Audio__Vio_a895de543c9307be94fd7dd4af544a552}} 
\index{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}!write@{write}}
\index{write@{write}!\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio@{\+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio}}
\subsubsection{\texorpdfstring{write}{write}}
{\footnotesize\ttfamily int($\ast$ \+\_\+\+Ecore\+\_\+\+Audio\+\_\+\+Vio\+::write) (void $\ast$data, \hyperlink{group__Eo_ga9f3010a50b61a892d41f4ec2bda73f4c}{Eo} $\ast$eo\+\_\+obj, const void $\ast$buffer, int length)}



Write some data to the file. 


\begin{DoxyParams}{Parameters}
{\em data} & User data from the ecore\+\_\+audio\+\_\+obj\+\_\+set\+\_\+vio call \\
\hline
{\em eo\+\_\+obj} & The Ecore\+\_\+\+Audio object this operates on \\
\hline
{\em buffer} & Write data from here to the file \\
\hline
{\em length} & The number of bytes to write\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes written to the file. May be less than length
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+8 
\end{DoxySince}
