\hypertarget{classOpenMesh_1_1IO_1_1BaseWriter}{}\section{Open\+Mesh\+:\+:IO\+:\+:Base\+Writer Class Reference}
\label{classOpenMesh_1_1IO_1_1BaseWriter}\index{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}}


{\ttfamily \#include $<$Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+I\+O/writer/\+Base\+Writer.\+hh$>$}

Inheritance diagram for Open\+Mesh\+:\+:IO\+:\+:Base\+Writer\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=1.031308cm]{classOpenMesh_1_1IO_1_1BaseWriter}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a64e0d2f73712d56ed5f911c39664a641}\label{classOpenMesh_1_1IO_1_1BaseWriter_a64e0d2f73712d56ed5f911c39664a641}} 
typedef unsigned int {\bfseries Option}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a7f287d4cf768bf1a0ee08ad68286fa1c}\label{classOpenMesh_1_1IO_1_1BaseWriter_a7f287d4cf768bf1a0ee08ad68286fa1c}} 
virtual \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_a7f287d4cf768bf1a0ee08ad68286fa1c}{$\sim$\+Base\+Writer} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_ac3c0fcb247b70c6f6a37b8c37b4e1863}\label{classOpenMesh_1_1IO_1_1BaseWriter_ac3c0fcb247b70c6f6a37b8c37b4e1863}} 
virtual std\+::string \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_ac3c0fcb247b70c6f6a37b8c37b4e1863}{get\+\_\+description} () const =0
\begin{DoxyCompactList}\small\item\em Return short description of the supported file format. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a58ed321267dab25305b4607985ec16d1}\label{classOpenMesh_1_1IO_1_1BaseWriter_a58ed321267dab25305b4607985ec16d1}} 
virtual std\+::string \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_a58ed321267dab25305b4607985ec16d1}{get\+\_\+extensions} () const =0
\begin{DoxyCompactList}\small\item\em Return file format\textquotesingle{}s extension. \end{DoxyCompactList}\item 
virtual bool \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_a0e250c7543862441dc6ac877b6f44ef9}{can\+\_\+u\+\_\+write} (const std\+::string \&\+\_\+filename) const
\begin{DoxyCompactList}\small\item\em Returns true if writer can write \+\_\+filename (checks extension). \+\_\+filename can also provide an extension without a name for a file e.\+g. \+\_\+filename == \char`\"{}om\char`\"{} checks, if the writer can write the \char`\"{}om\char`\"{} extension. \end{DoxyCompactList}\item 
virtual bool \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_a7c0818a63926bdb439044a8f4c038d85}{write} (const std\+::string \&\+\_\+filename, \hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter} \&\+\_\+be, \hyperlink{classOpenMesh_1_1IO_1_1Options}{Options} \+\_\+opt, std\+::streamsize \+\_\+precision=6) const =0
\item 
virtual bool \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_ae0aa2050e93f96d71ff70ce788a76a94}{write} (std\+::ostream \&\+\_\+os, \hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter} \&\+\_\+be, \hyperlink{classOpenMesh_1_1IO_1_1Options}{Options} \+\_\+opt, std\+::streamsize \+\_\+precision=6) const =0
\item 
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a8a6800a1bc26c06ea05ea672c6504351}\label{classOpenMesh_1_1IO_1_1BaseWriter_a8a6800a1bc26c06ea05ea672c6504351}} 
virtual size\+\_\+t \hyperlink{classOpenMesh_1_1IO_1_1BaseWriter_a8a6800a1bc26c06ea05ea672c6504351}{binary\+\_\+size} (\hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter} \&, \hyperlink{classOpenMesh_1_1IO_1_1Options}{Options}) const
\begin{DoxyCompactList}\small\item\em Returns expected size of file if binary format is supported else 0. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a20c3f4fd0d84ab59b1ee00494a62ffd0}\label{classOpenMesh_1_1IO_1_1BaseWriter_a20c3f4fd0d84ab59b1ee00494a62ffd0}} 
bool {\bfseries check} (\hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter} \&\+\_\+be, \hyperlink{classOpenMesh_1_1IO_1_1Options}{Options} \+\_\+opt) const
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Base class for all writer modules. The module should register itself at the I\+O\+Manager by calling the register\+\_\+module function. 

Definition at line 83 of file Base\+Writer.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a0e250c7543862441dc6ac877b6f44ef9}\label{classOpenMesh_1_1IO_1_1BaseWriter_a0e250c7543862441dc6ac877b6f44ef9}} 
\index{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}!can\+\_\+u\+\_\+write@{can\+\_\+u\+\_\+write}}
\index{can\+\_\+u\+\_\+write@{can\+\_\+u\+\_\+write}!Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}}
\subsubsection{\texorpdfstring{can\+\_\+u\+\_\+write()}{can\_u\_write()}}
{\footnotesize\ttfamily bool Open\+Mesh\+::\+I\+O\+::\+Base\+Writer\+::can\+\_\+u\+\_\+write (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{\+\_\+filename }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}



Returns true if writer can write \+\_\+filename (checks extension). \+\_\+filename can also provide an extension without a name for a file e.\+g. \+\_\+filename == \char`\"{}om\char`\"{} checks, if the writer can write the \char`\"{}om\char`\"{} extension. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+filename} & complete name of a file or just the extension \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true, if writer can write data with the given extension 
\end{DoxyReturn}


Definition at line 80 of file Base\+Writer.\+cc.

\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_a7c0818a63926bdb439044a8f4c038d85}\label{classOpenMesh_1_1IO_1_1BaseWriter_a7c0818a63926bdb439044a8f4c038d85}} 
\index{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}!write@{write}}
\index{write@{write}!Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}}
\subsubsection{\texorpdfstring{write()}{write()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily virtual bool Open\+Mesh\+::\+I\+O\+::\+Base\+Writer\+::write (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{\+\_\+filename,  }\item[{\hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter} \&}]{\+\_\+be,  }\item[{\hyperlink{classOpenMesh_1_1IO_1_1Options}{Options}}]{\+\_\+opt,  }\item[{std\+::streamsize}]{\+\_\+precision = {\ttfamily 6} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [pure virtual]}}

Write to a file 
\begin{DoxyParams}{Parameters}
{\em \+\_\+filename} & write to file with the given filename \\
\hline
{\em \+\_\+be} & \hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter}, which specifies the data source \\
\hline
{\em \+\_\+opt} & writing options \\
\hline
{\em \+\_\+precision} & can be used to specify the precision of the floating point notation. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classOpenMesh_1_1IO_1_1__OMWriter___a36499c4a93c00c8311fae277f539f254}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+O\+M\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__OFFWriter___a0c4ae2c6358f120a2c51bc2c8decbefc}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+O\+F\+F\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__PLYWriter___a23dac7e3ae807a6555bac455186bc1d8}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+P\+L\+Y\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__OBJWriter___ab9003986262b5727a0d70465cdca7b1d}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+O\+B\+J\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__STLWriter___ac807dd2c1d88932d59161faa9daacf9f}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+S\+T\+L\+Writer\+\_\+}, and \hyperlink{classOpenMesh_1_1IO_1_1__VTKWriter___a929b2a6f7f21cd8528418c688db0349d}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+V\+T\+K\+Writer\+\_\+}.

\mbox{\Hypertarget{classOpenMesh_1_1IO_1_1BaseWriter_ae0aa2050e93f96d71ff70ce788a76a94}\label{classOpenMesh_1_1IO_1_1BaseWriter_ae0aa2050e93f96d71ff70ce788a76a94}} 
\index{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}!write@{write}}
\index{write@{write}!Open\+Mesh\+::\+I\+O\+::\+Base\+Writer@{Open\+Mesh\+::\+I\+O\+::\+Base\+Writer}}
\subsubsection{\texorpdfstring{write()}{write()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily virtual bool Open\+Mesh\+::\+I\+O\+::\+Base\+Writer\+::write (\begin{DoxyParamCaption}\item[{std\+::ostream \&}]{\+\_\+os,  }\item[{\hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter} \&}]{\+\_\+be,  }\item[{\hyperlink{classOpenMesh_1_1IO_1_1Options}{Options}}]{\+\_\+opt,  }\item[{std\+::streamsize}]{\+\_\+precision = {\ttfamily 6} }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [pure virtual]}}

Write to a std\+::ostream 
\begin{DoxyParams}{Parameters}
{\em \+\_\+os} & write to std\+::ostream \\
\hline
{\em \+\_\+be} & \hyperlink{classOpenMesh_1_1IO_1_1BaseExporter}{Base\+Exporter}, which specifies the data source \\
\hline
{\em \+\_\+opt} & writing options \\
\hline
{\em \+\_\+precision} & can be used to specify the precision of the floating point notation. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classOpenMesh_1_1IO_1_1__OMWriter___aa479d3ffc8fc461dae1390603fe258c6}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+O\+M\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__OFFWriter___a2d9ae4498ee8d646e33978074f37bdfa}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+O\+F\+F\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__PLYWriter___ad6fa18c264717d04f704d50feed76e96}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+P\+L\+Y\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__OBJWriter___a2900556c57dc5b1612fabc5821944091}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+O\+B\+J\+Writer\+\_\+}, \hyperlink{classOpenMesh_1_1IO_1_1__STLWriter___af1f2014f643f18632b1e2680c1aa1307}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+S\+T\+L\+Writer\+\_\+}, and \hyperlink{classOpenMesh_1_1IO_1_1__VTKWriter___a562551f348f3a03449a600fa91849e99}{Open\+Mesh\+::\+I\+O\+::\+\_\+\+V\+T\+K\+Writer\+\_\+}.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+I\+O/writer/Base\+Writer.\+hh\item 
Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+I\+O/writer/Base\+Writer.\+cc\end{DoxyCompactItemize}
