\hypertarget{a00572}{\section{Open\+Volume\+Mesh\+:\+:I\+O\+:\+:File\+Manager Class Reference}
\label{a00572}\index{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager@{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager}}
}


Read/\+Write mesh data from/to files.  




{\ttfamily \#include $<$libs\+\_\+required/\+Open\+Volume\+Mesh/src/\+Open\+Volume\+Mesh/\+File\+Manager/\+File\+Manager.\+hh$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00572_abe3ebe1b45ed50ef5f6061a990b93754}{\hyperlink{a00572_abe3ebe1b45ed50ef5f6061a990b93754}{File\+Manager} ()}\label{a00572_abe3ebe1b45ed50ef5f6061a990b93754}

\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\hypertarget{a00572_a9a51ac675dba0724b51cfa217c584c3b}{\hyperlink{a00572_a9a51ac675dba0724b51cfa217c584c3b}{$\sim$\+File\+Manager} ()}\label{a00572_a9a51ac675dba0724b51cfa217c584c3b}

\begin{DoxyCompactList}\small\item\em Default destructor. \end{DoxyCompactList}\item 
{\footnotesize template$<$class Mesh\+T $>$ }\\bool \hyperlink{a00572_ac176cb8885825c8ea686292088469500}{read\+File} (const std\+::string \&\+\_\+filename, Mesh\+T \&\+\_\+mesh, bool \+\_\+topology\+Check=true, bool \+\_\+compute\+Bottom\+Up\+Incidences=true) const 
\begin{DoxyCompactList}\small\item\em Read a mesh from a file. \end{DoxyCompactList}\item 
{\footnotesize template$<$class Mesh\+T $>$ }\\bool \hyperlink{a00572_a2640c1ce02945f0a7ef6404a6a59a27b}{write\+File} (const std\+::string \&\+\_\+filename, const Mesh\+T \&\+\_\+mesh) const 
\begin{DoxyCompactList}\small\item\em Write a mesh to a file. \end{DoxyCompactList}\item 
\hypertarget{a00572_a237d18ce9d857351478a3ed9c8da6ae7}{bool \hyperlink{a00572_a237d18ce9d857351478a3ed9c8da6ae7}{is\+Hexahedral\+Mesh} (const std\+::string \&\+\_\+filename) const }\label{a00572_a237d18ce9d857351478a3ed9c8da6ae7}

\begin{DoxyCompactList}\small\item\em Test whether given file contains a hexahedral mesh. \end{DoxyCompactList}\item 
\hypertarget{a00572_ac94fbaf7c25c9334b65a433042909d92}{bool \hyperlink{a00572_ac94fbaf7c25c9334b65a433042909d92}{is\+Tetrahedral\+Mesh} (const std\+::string \&\+\_\+filename) const }\label{a00572_ac94fbaf7c25c9334b65a433042909d92}

\begin{DoxyCompactList}\small\item\em Test whether given file contains a tetrahedral mesh. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00572_a8208ba50172ee6eceb08151fcb39619f}{{\footnotesize template$<$class Mesh\+T $>$ }\\void {\bfseries read\+Property} (std\+::istream \&\+\_\+iff, Mesh\+T \&\+\_\+mesh) const }\label{a00572_a8208ba50172ee6eceb08151fcb39619f}

\item 
\hypertarget{a00572_ab2b855e022ad35d35070740d6d9b24b6}{{\footnotesize template$<$class Prop\+T , class Mesh\+T $>$ }\\void {\bfseries generate\+Generic\+Property} (const std\+::string \&\+\_\+entity\+\_\+t, const std\+::string \&\+\_\+name, std\+::istream \&\+\_\+iff, Mesh\+T \&\+\_\+mesh) const }\label{a00572_ab2b855e022ad35d35070740d6d9b24b6}

\item 
\hypertarget{a00572_a2aef7d2ac0dfa5fe9cf1414e487f03ba}{{\footnotesize template$<$class Iterator\+T $>$ }\\void {\bfseries write\+Props} (std\+::ostream \&\+\_\+ostr, const Iterator\+T \&\+\_\+begin, const Iterator\+T \&\+\_\+end) const }\label{a00572_a2aef7d2ac0dfa5fe9cf1414e487f03ba}

\item 
\hypertarget{a00572_a09a3d9866b90f5dfcd4ed5b2b5da17a0}{void {\bfseries trim\+String} (std\+::string \&\+\_\+string) const }\label{a00572_a09a3d9866b90f5dfcd4ed5b2b5da17a0}

\item 
\hypertarget{a00572_a8f9dbcd2d64319bc032f6273ec2c788c}{void {\bfseries extract\+Quoted\+Text} (std\+::string \&\+\_\+string) const }\label{a00572_a8f9dbcd2d64319bc032f6273ec2c788c}

\item 
\hypertarget{a00572_ae3dcf1b6ba6df6fec2fd73dc9898d1c1}{bool {\bfseries get\+Clean\+Line} (std\+::istream \&ifs, std\+::string \&\+\_\+string, bool \+\_\+skip\+Empty\+Lines=true) const }\label{a00572_ae3dcf1b6ba6df6fec2fd73dc9898d1c1}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Read/\+Write mesh data from/to files. 

\begin{DoxyRefDesc}{Todo}
\item[\hyperlink{a03409__todo000055}{Todo}]Implement binary file support \end{DoxyRefDesc}


Definition at line 60 of file File\+Manager.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a00572_ac176cb8885825c8ea686292088469500}{\index{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager@{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager}!read\+File@{read\+File}}
\index{read\+File@{read\+File}!Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager@{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager}}
\subsubsection[{read\+File}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Mesh\+T $>$ bool Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager\+::read\+File (
\begin{DoxyParamCaption}
\item[{const std\+::string \&}]{\+\_\+filename, }
\item[{Mesh\+T \&}]{\+\_\+mesh, }
\item[{bool}]{\+\_\+topology\+Check = {\ttfamily true}, }
\item[{bool}]{\+\_\+compute\+Bottom\+Up\+Incidences = {\ttfamily true}}
\end{DoxyParamCaption}
) const}}\label{a00572_ac176cb8885825c8ea686292088469500}


Read a mesh from a file. 

Returns true if the file was successfully read. The mesh is stored in parameter \+\_\+mesh. If something goes wrong, this function returns false.


\begin{DoxyParams}{Parameters}
{\em \+\_\+filename} & The file that is to be read \\
\hline
{\em \+\_\+mesh} & A reference to an Open\+Volume\+Mesh instance \\
\hline
{\em \+\_\+topology\+Check} & Pass true if you want to perform a topology check each time an entity is added (slower performance) \\
\hline
{\em \+\_\+compute\+Bottom\+Up\+Incidences} & Pass true if you want the file manager to directly compute the bottom-\/up incidences for the mesh. (Note\+: These are needed for some iterators to work, see documentation) \\
\hline
\end{DoxyParams}


Definition at line 66 of file File\+Manager\+T.\+cc.

\hypertarget{a00572_a2640c1ce02945f0a7ef6404a6a59a27b}{\index{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager@{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager}!write\+File@{write\+File}}
\index{write\+File@{write\+File}!Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager@{Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager}}
\subsubsection[{write\+File}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class Mesh\+T $>$ bool Open\+Volume\+Mesh\+::\+I\+O\+::\+File\+Manager\+::write\+File (
\begin{DoxyParamCaption}
\item[{const std\+::string \&}]{\+\_\+filename, }
\item[{const Mesh\+T \&}]{\+\_\+mesh}
\end{DoxyParamCaption}
) const}}\label{a00572_a2640c1ce02945f0a7ef6404a6a59a27b}


Write a mesh to a file. 

Returns true if the file was successfully written. The mesh is passed as parameter \+\_\+mesh. If something goes wrong, this function returns false.


\begin{DoxyParams}{Parameters}
{\em \+\_\+filename} & The file that is to be stored \\
\hline
{\em \+\_\+mesh} & A const reference to an Open\+Volume\+Mesh instance \\
\hline
\end{DoxyParams}


Definition at line 399 of file File\+Manager\+T.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
libs\+\_\+required/\+Open\+Volume\+Mesh/src/\+Open\+Volume\+Mesh/\+File\+Manager/File\+Manager.\+hh\item 
libs\+\_\+required/\+Open\+Volume\+Mesh/src/\+Open\+Volume\+Mesh/\+File\+Manager/File\+Manager.\+cc\item 
libs\+\_\+required/\+Open\+Volume\+Mesh/src/\+Open\+Volume\+Mesh/\+File\+Manager/File\+Manager\+T.\+cc\end{DoxyCompactItemize}
