\hypertarget{class_ogre_1_1_file_handle_data_stream}{}\doxysection{Ogre\+::File\+Handle\+Data\+Stream Class Reference}
\label{class_ogre_1_1_file_handle_data_stream}\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}


Common subclass of \mbox{\hyperlink{class_ogre_1_1_data_stream}{Data\+Stream}} for handling data from C-\/style file handles.  




{\ttfamily \#include $<$Ogre\+Data\+Stream.\+h$>$}



Inheritance diagram for Ogre\+::File\+Handle\+Data\+Stream\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=236pt]{class_ogre_1_1_file_handle_data_stream__inherit__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08c}{Access\+Mode}} \{ \mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}{R\+E\+AD}} = 1, 
\mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08ca8e221ca82d405d21d275997fbd3eb900}{W\+R\+I\+TE}} = 2
 \}
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_a16198eae30b14a03c4ebf1a3d2e6e762}{File\+Handle\+Data\+Stream}} (const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \&name, F\+I\+LE $\ast$handle, \mbox{\hyperlink{namespace_ogre_aa8263b218e7d187ad5ef03a73a6ad7fd}{uint16}} access\+Mode=\mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}{R\+E\+AD}})
\begin{DoxyCompactList}\small\item\em Create named stream from a C file handle. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_af3d8fd17787d46b2e6ab486586e0925f}{File\+Handle\+Data\+Stream}} (F\+I\+LE $\ast$handle, \mbox{\hyperlink{namespace_ogre_aa8263b218e7d187ad5ef03a73a6ad7fd}{uint16}} access\+Mode=\mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}{R\+E\+AD}})
\begin{DoxyCompactList}\small\item\em Create stream from a C file handle. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_a9b0503929f53ff42daa0eac1847a6c06}{$\sim$\+File\+Handle\+Data\+Stream}} ()
\item 
void \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_ac6f1032583209f59b503e7f29946230e}{close}} (void)
\begin{DoxyCompactList}\small\item\em Close the stream; this makes further operations invalid. \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_a63b510c9d467c1883730a0b6b0ff050c}{eof}} (void) const
\begin{DoxyCompactList}\small\item\em Returns true if the stream has reached the end. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespace_ogre_aa8263b218e7d187ad5ef03a73a6ad7fd}{uint16}} \mbox{\hyperlink{class_ogre_1_1_data_stream_a560b07ced4d47d31315d8d7f51638a8f}{get\+Access\+Mode}} () const
\begin{DoxyCompactList}\small\item\em Gets the access mode of the stream. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \mbox{\hyperlink{class_ogre_1_1_data_stream_a022f49c9313deffc5da4383d59d1f32d}{get\+As\+String}} (void)
\begin{DoxyCompactList}\small\item\em Returns a String containing the entire stream. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \mbox{\hyperlink{class_ogre_1_1_data_stream_a86d2ff5dff63ce4b689dd1d486d3243f}{get\+Line}} (bool trim\+After=true)
\begin{DoxyCompactList}\small\item\em Returns a String containing the next line of data, optionally trimmed for whitespace. \end{DoxyCompactList}\item 
const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \& \mbox{\hyperlink{class_ogre_1_1_data_stream_a7ebd86825f86b7114024d168e9751395}{get\+Name}} (void)
\begin{DoxyCompactList}\small\item\em Returns the name of the stream, if it has one. \end{DoxyCompactList}\item 
virtual bool \mbox{\hyperlink{class_ogre_1_1_data_stream_a3a99b8b9b4ce6cce64322ba89ea45e43}{is\+Readable}} () const
\begin{DoxyCompactList}\small\item\em Reports whether this stream is readable. \end{DoxyCompactList}\item 
virtual bool \mbox{\hyperlink{class_ogre_1_1_data_stream_aff0243c8ad8f5de00bf8e0887d0f034f}{is\+Writeable}} () const
\begin{DoxyCompactList}\small\item\em Reports whether this stream is writeable. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\\mbox{\hyperlink{class_ogre_1_1_data_stream}{Data\+Stream}} \& \mbox{\hyperlink{class_ogre_1_1_data_stream_a49bfe5809b50735b5ce49e7df9615e5a}{operator$>$$>$}} (T \&val)
\item 
size\+\_\+t \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_af64e7e826054181f9026e0f71f901c63}{read}} (void $\ast$buf, size\+\_\+t count)
\begin{DoxyCompactList}\small\item\em Read the requisite number of bytes from the stream, stopping at the end of the file. \end{DoxyCompactList}\item 
virtual size\+\_\+t \mbox{\hyperlink{class_ogre_1_1_data_stream_aedc53a8cff5334563283a4557d423b25}{read\+Line}} (char $\ast$buf, size\+\_\+t max\+Count, const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \&delim=\char`\"{}\textbackslash{}n\char`\"{})
\begin{DoxyCompactList}\small\item\em Get a single line from the stream. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_af56e7f07f2f13c2b05772db8ad75201a}{seek}} (size\+\_\+t pos)
\begin{DoxyCompactList}\small\item\em Repositions the read point to a specified byte. \end{DoxyCompactList}\item 
size\+\_\+t \mbox{\hyperlink{class_ogre_1_1_data_stream_a9d5b5224e17b9fc9d9756d8156a77a5c}{size}} (void) const
\begin{DoxyCompactList}\small\item\em Returns the total size of the data to be read from the stream, or 0 if this is indeterminate for this stream. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_a379566f8413d0a525fa7d603af6e33d4}{skip}} (long count)
\begin{DoxyCompactList}\small\item\em Skip a defined number of bytes. \end{DoxyCompactList}\item 
virtual size\+\_\+t \mbox{\hyperlink{class_ogre_1_1_data_stream_a32966ad5a814f8c72fe0affbefcc6f55}{skip\+Line}} (const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \&delim=\char`\"{}\textbackslash{}n\char`\"{})
\begin{DoxyCompactList}\small\item\em Skip a single line from the stream. \end{DoxyCompactList}\item 
size\+\_\+t \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_a76ed601adac0eeeb84247080bb0338a8}{tell}} (void) const
\begin{DoxyCompactList}\small\item\em Returns the current byte offset from beginning. \end{DoxyCompactList}\item 
size\+\_\+t \mbox{\hyperlink{class_ogre_1_1_file_handle_data_stream_ad061c86660f6415331df5f8560b46a02}{write}} (const void $\ast$buf, size\+\_\+t count)
\begin{DoxyCompactList}\small\item\em Write the requisite number of bytes from the stream (only applicable to streams that are not read-\/only) \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Common subclass of \mbox{\hyperlink{class_ogre_1_1_data_stream}{Data\+Stream}} for handling data from C-\/style file handles. 

\begin{DoxyRemark}{Remarks}
Use of this class is generally discouraged; if you want to wrap file access in a \mbox{\hyperlink{class_ogre_1_1_data_stream}{Data\+Stream}}, you should definitely be using the C++ friendly \mbox{\hyperlink{class_ogre_1_1_file_stream_data_stream}{File\+Stream\+Data\+Stream}}. However, since there are quite a few applications and libraries still wedded to the old F\+I\+LE handle access, this stream wrapper provides some backwards compatibility. 
\end{DoxyRemark}


\doxysubsection{Member Enumeration Documentation}
\mbox{\Hypertarget{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08c}\label{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08c}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!AccessMode@{AccessMode}}
\index{AccessMode@{AccessMode}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{AccessMode}{AccessMode}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08c}{Ogre\+::\+Data\+Stream\+::\+Access\+Mode}}\hspace{0.3cm}{\ttfamily [inherited]}}

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{READ@{READ}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!READ@{READ}}}\mbox{\Hypertarget{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}\label{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}} 
R\+E\+AD&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{WRITE@{WRITE}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!WRITE@{WRITE}}}\mbox{\Hypertarget{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08ca8e221ca82d405d21d275997fbd3eb900}\label{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08ca8e221ca82d405d21d275997fbd3eb900}} 
W\+R\+I\+TE&\\
\hline

\end{DoxyEnumFields}


\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_af3d8fd17787d46b2e6ab486586e0925f}\label{class_ogre_1_1_file_handle_data_stream_af3d8fd17787d46b2e6ab486586e0925f}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!FileHandleDataStream@{FileHandleDataStream}}
\index{FileHandleDataStream@{FileHandleDataStream}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{FileHandleDataStream()}{FileHandleDataStream()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily Ogre\+::\+File\+Handle\+Data\+Stream\+::\+File\+Handle\+Data\+Stream (\begin{DoxyParamCaption}\item[{F\+I\+LE $\ast$}]{handle,  }\item[{\mbox{\hyperlink{namespace_ogre_aa8263b218e7d187ad5ef03a73a6ad7fd}{uint16}}}]{access\+Mode = {\ttfamily \mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}{R\+E\+AD}}} }\end{DoxyParamCaption})}



Create stream from a C file handle. 

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_a16198eae30b14a03c4ebf1a3d2e6e762}\label{class_ogre_1_1_file_handle_data_stream_a16198eae30b14a03c4ebf1a3d2e6e762}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!FileHandleDataStream@{FileHandleDataStream}}
\index{FileHandleDataStream@{FileHandleDataStream}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{FileHandleDataStream()}{FileHandleDataStream()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily Ogre\+::\+File\+Handle\+Data\+Stream\+::\+File\+Handle\+Data\+Stream (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \&}]{name,  }\item[{F\+I\+LE $\ast$}]{handle,  }\item[{\mbox{\hyperlink{namespace_ogre_aa8263b218e7d187ad5ef03a73a6ad7fd}{uint16}}}]{access\+Mode = {\ttfamily \mbox{\hyperlink{class_ogre_1_1_data_stream_a81856582e643b4a560e6c3d3ad05e08cac5f9d1587e9cc7dd1577af114dcba50e}{R\+E\+AD}}} }\end{DoxyParamCaption})}



Create named stream from a C file handle. 

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_a9b0503929f53ff42daa0eac1847a6c06}\label{class_ogre_1_1_file_handle_data_stream_a9b0503929f53ff42daa0eac1847a6c06}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!````~FileHandleDataStream@{$\sim$FileHandleDataStream}}
\index{````~FileHandleDataStream@{$\sim$FileHandleDataStream}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{$\sim$FileHandleDataStream()}{~FileHandleDataStream()}}
{\footnotesize\ttfamily Ogre\+::\+File\+Handle\+Data\+Stream\+::$\sim$\+File\+Handle\+Data\+Stream (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_af64e7e826054181f9026e0f71f901c63}\label{class_ogre_1_1_file_handle_data_stream_af64e7e826054181f9026e0f71f901c63}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!read@{read}}
\index{read@{read}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{read()}{read()}}
{\footnotesize\ttfamily size\+\_\+t Ogre\+::\+File\+Handle\+Data\+Stream\+::read (\begin{DoxyParamCaption}\item[{void $\ast$}]{buf,  }\item[{size\+\_\+t}]{count }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Read the requisite number of bytes from the stream, stopping at the end of the file. 


\begin{DoxyParams}{Parameters}
{\em buf} & Reference to a buffer pointer \\
\hline
{\em count} & Number of bytes to read \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes read 
\end{DoxyReturn}


Implements \mbox{\hyperlink{class_ogre_1_1_data_stream_aebedb14c79369be5b8750d834b128b9b}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_ad061c86660f6415331df5f8560b46a02}\label{class_ogre_1_1_file_handle_data_stream_ad061c86660f6415331df5f8560b46a02}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!write@{write}}
\index{write@{write}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{write()}{write()}}
{\footnotesize\ttfamily size\+\_\+t Ogre\+::\+File\+Handle\+Data\+Stream\+::write (\begin{DoxyParamCaption}\item[{const void $\ast$}]{buf,  }\item[{size\+\_\+t}]{count }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Write the requisite number of bytes from the stream (only applicable to streams that are not read-\/only) 


\begin{DoxyParams}{Parameters}
{\em buf} & Pointer to a buffer containing the bytes to write \\
\hline
{\em count} & Number of bytes to write \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes written 
\end{DoxyReturn}


Reimplemented from \mbox{\hyperlink{class_ogre_1_1_data_stream_a68cde598ee9c2694e16931134fe5c136}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_a379566f8413d0a525fa7d603af6e33d4}\label{class_ogre_1_1_file_handle_data_stream_a379566f8413d0a525fa7d603af6e33d4}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!skip@{skip}}
\index{skip@{skip}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{skip()}{skip()}}
{\footnotesize\ttfamily void Ogre\+::\+File\+Handle\+Data\+Stream\+::skip (\begin{DoxyParamCaption}\item[{long}]{count }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Skip a defined number of bytes. 

This can also be a negative value, in which case the file pointer rewinds a defined number of bytes. 

Implements \mbox{\hyperlink{class_ogre_1_1_data_stream_a776630c409195fdf118a6737571d3d07}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_af56e7f07f2f13c2b05772db8ad75201a}\label{class_ogre_1_1_file_handle_data_stream_af56e7f07f2f13c2b05772db8ad75201a}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!seek@{seek}}
\index{seek@{seek}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{seek()}{seek()}}
{\footnotesize\ttfamily void Ogre\+::\+File\+Handle\+Data\+Stream\+::seek (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Repositions the read point to a specified byte. 



Implements \mbox{\hyperlink{class_ogre_1_1_data_stream_adc4002e013c279625553ccc3f50ddae1}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_a76ed601adac0eeeb84247080bb0338a8}\label{class_ogre_1_1_file_handle_data_stream_a76ed601adac0eeeb84247080bb0338a8}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!tell@{tell}}
\index{tell@{tell}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{tell()}{tell()}}
{\footnotesize\ttfamily size\+\_\+t Ogre\+::\+File\+Handle\+Data\+Stream\+::tell (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}



Returns the current byte offset from beginning. 



Implements \mbox{\hyperlink{class_ogre_1_1_data_stream_a2d9100f4e9167116fe280a7e7a1b6219}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_a63b510c9d467c1883730a0b6b0ff050c}\label{class_ogre_1_1_file_handle_data_stream_a63b510c9d467c1883730a0b6b0ff050c}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!eof@{eof}}
\index{eof@{eof}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{eof()}{eof()}}
{\footnotesize\ttfamily bool Ogre\+::\+File\+Handle\+Data\+Stream\+::eof (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}



Returns true if the stream has reached the end. 



Implements \mbox{\hyperlink{class_ogre_1_1_data_stream_a81d740638618913333324663b2edb519}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_file_handle_data_stream_ac6f1032583209f59b503e7f29946230e}\label{class_ogre_1_1_file_handle_data_stream_ac6f1032583209f59b503e7f29946230e}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!close@{close}}
\index{close@{close}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{close()}{close()}}
{\footnotesize\ttfamily void Ogre\+::\+File\+Handle\+Data\+Stream\+::close (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Close the stream; this makes further operations invalid. 



Implements \mbox{\hyperlink{class_ogre_1_1_data_stream_ace95bf415101e195a0c79838fdcb7e7d}{Ogre\+::\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_data_stream_a7ebd86825f86b7114024d168e9751395}\label{class_ogre_1_1_data_stream_a7ebd86825f86b7114024d168e9751395}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!getName@{getName}}
\index{getName@{getName}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{getName()}{getName()}}
{\footnotesize\ttfamily const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}}\& Ogre\+::\+Data\+Stream\+::get\+Name (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



Returns the name of the stream, if it has one. 

\mbox{\Hypertarget{class_ogre_1_1_data_stream_a560b07ced4d47d31315d8d7f51638a8f}\label{class_ogre_1_1_data_stream_a560b07ced4d47d31315d8d7f51638a8f}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!getAccessMode@{getAccessMode}}
\index{getAccessMode@{getAccessMode}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{getAccessMode()}{getAccessMode()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespace_ogre_aa8263b218e7d187ad5ef03a73a6ad7fd}{uint16}} Ogre\+::\+Data\+Stream\+::get\+Access\+Mode (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



Gets the access mode of the stream. 

\mbox{\Hypertarget{class_ogre_1_1_data_stream_a3a99b8b9b4ce6cce64322ba89ea45e43}\label{class_ogre_1_1_data_stream_a3a99b8b9b4ce6cce64322ba89ea45e43}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!isReadable@{isReadable}}
\index{isReadable@{isReadable}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{isReadable()}{isReadable()}}
{\footnotesize\ttfamily virtual bool Ogre\+::\+Data\+Stream\+::is\+Readable (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}, {\ttfamily [inherited]}}



Reports whether this stream is readable. 

\mbox{\Hypertarget{class_ogre_1_1_data_stream_aff0243c8ad8f5de00bf8e0887d0f034f}\label{class_ogre_1_1_data_stream_aff0243c8ad8f5de00bf8e0887d0f034f}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!isWriteable@{isWriteable}}
\index{isWriteable@{isWriteable}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{isWriteable()}{isWriteable()}}
{\footnotesize\ttfamily virtual bool Ogre\+::\+Data\+Stream\+::is\+Writeable (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}, {\ttfamily [inherited]}}



Reports whether this stream is writeable. 

\mbox{\Hypertarget{class_ogre_1_1_data_stream_a49bfe5809b50735b5ce49e7df9615e5a}\label{class_ogre_1_1_data_stream_a49bfe5809b50735b5ce49e7df9615e5a}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!operator$>$$>$@{operator$>$$>$}}
\index{operator$>$$>$@{operator$>$$>$}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{operator$>$$>$()}{operator>>()}}
{\footnotesize\ttfamily template$<$typename T $>$ \\
\mbox{\hyperlink{class_ogre_1_1_data_stream}{Data\+Stream}}\& Ogre\+::\+Data\+Stream\+::operator$>$$>$ (\begin{DoxyParamCaption}\item[{T \&}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}

\mbox{\Hypertarget{class_ogre_1_1_data_stream_aedc53a8cff5334563283a4557d423b25}\label{class_ogre_1_1_data_stream_aedc53a8cff5334563283a4557d423b25}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!readLine@{readLine}}
\index{readLine@{readLine}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{readLine()}{readLine()}}
{\footnotesize\ttfamily virtual size\+\_\+t Ogre\+::\+Data\+Stream\+::read\+Line (\begin{DoxyParamCaption}\item[{char $\ast$}]{buf,  }\item[{size\+\_\+t}]{max\+Count,  }\item[{const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \&}]{delim = {\ttfamily \char`\"{}\textbackslash{}n\char`\"{}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}, {\ttfamily [inherited]}}



Get a single line from the stream. 

\begin{DoxyRemark}{Remarks}
The delimiter character is not included in the data returned, and it is skipped over so the next read will occur after it. The buffer contents will include a terminating character. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
If you used this function, you {\bfseries{must}} open the stream in {\bfseries{binary mode}}, otherwise, it\textquotesingle{}ll produce unexpected results. 
\end{DoxyNote}

\begin{DoxyParams}{Parameters}
{\em buf} & Reference to a buffer pointer \\
\hline
{\em max\+Count} & The maximum length of data to be read, excluding the terminating character \\
\hline
{\em delim} & The delimiter to stop at \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes read, excluding the terminating character 
\end{DoxyReturn}


Reimplemented in \mbox{\hyperlink{class_ogre_1_1_file_stream_data_stream_af09667bef9ac4b514602baca8d08f007}{Ogre\+::\+File\+Stream\+Data\+Stream}}, and \mbox{\hyperlink{class_ogre_1_1_memory_data_stream_a398aa1ba9f58276dc868d2c3968953c4}{Ogre\+::\+Memory\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_data_stream_a86d2ff5dff63ce4b689dd1d486d3243f}\label{class_ogre_1_1_data_stream_a86d2ff5dff63ce4b689dd1d486d3243f}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!getLine@{getLine}}
\index{getLine@{getLine}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{getLine()}{getLine()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} Ogre\+::\+Data\+Stream\+::get\+Line (\begin{DoxyParamCaption}\item[{bool}]{trim\+After = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}, {\ttfamily [inherited]}}



Returns a String containing the next line of data, optionally trimmed for whitespace. 

\begin{DoxyRemark}{Remarks}
This is a convenience method for text streams only, allowing you to retrieve a String object containing the next line of data. The data is read up to the next newline character and the result trimmed if required. 
\end{DoxyRemark}
\begin{DoxyNote}{Note}
If you used this function, you {\bfseries{must}} open the stream in {\bfseries{binary mode}}, otherwise, it\textquotesingle{}ll produce unexpected results. 
\end{DoxyNote}

\begin{DoxyParams}{Parameters}
{\em trim\+After} & If true, the line is trimmed for whitespace (as in String.\+trim(true,true)) \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{class_ogre_1_1_data_stream_a022f49c9313deffc5da4383d59d1f32d}\label{class_ogre_1_1_data_stream_a022f49c9313deffc5da4383d59d1f32d}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!getAsString@{getAsString}}
\index{getAsString@{getAsString}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{getAsString()}{getAsString()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} Ogre\+::\+Data\+Stream\+::get\+As\+String (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}, {\ttfamily [inherited]}}



Returns a String containing the entire stream. 

\begin{DoxyRemark}{Remarks}
This is a convenience method for text streams only, allowing you to retrieve a String object containing all the data in the stream. 
\end{DoxyRemark}
\mbox{\Hypertarget{class_ogre_1_1_data_stream_a32966ad5a814f8c72fe0affbefcc6f55}\label{class_ogre_1_1_data_stream_a32966ad5a814f8c72fe0affbefcc6f55}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!skipLine@{skipLine}}
\index{skipLine@{skipLine}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{skipLine()}{skipLine()}}
{\footnotesize\ttfamily virtual size\+\_\+t Ogre\+::\+Data\+Stream\+::skip\+Line (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespace_ogre_af73bbdc8bed8a3e6fcd56bb8fa188c45}{String}} \&}]{delim = {\ttfamily \char`\"{}\textbackslash{}n\char`\"{}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}, {\ttfamily [inherited]}}



Skip a single line from the stream. 

\begin{DoxyNote}{Note}
If you used this function, you {\bfseries{must}} open the stream in {\bfseries{binary mode}}, otherwise, it\textquotesingle{}ll produce unexpected results. 
\end{DoxyNote}

\begin{DoxyParams}{Parameters}
{\em delim} & The delimiter(s) to stop at \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of bytes skipped 
\end{DoxyReturn}


Reimplemented in \mbox{\hyperlink{class_ogre_1_1_memory_data_stream_a581ccd32944288808f7602b29a0218e9}{Ogre\+::\+Memory\+Data\+Stream}}.

\mbox{\Hypertarget{class_ogre_1_1_data_stream_a9d5b5224e17b9fc9d9756d8156a77a5c}\label{class_ogre_1_1_data_stream_a9d5b5224e17b9fc9d9756d8156a77a5c}} 
\index{Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}!size@{size}}
\index{size@{size}!Ogre::FileHandleDataStream@{Ogre::FileHandleDataStream}}
\doxysubsubsection{\texorpdfstring{size()}{size()}}
{\footnotesize\ttfamily size\+\_\+t Ogre\+::\+Data\+Stream\+::size (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [inherited]}}



Returns the total size of the data to be read from the stream, or 0 if this is indeterminate for this stream. 



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{_ogre_data_stream_8h}{Ogre\+Data\+Stream.\+h}}\end{DoxyCompactItemize}
