\hypertarget{classosgeo_1_1proj_1_1io_1_1JSONFormatter}{}\doxysection{osgeo\+::proj\+::io\+::JSONFormatter Class Reference}
\label{classosgeo_1_1proj_1_1io_1_1JSONFormatter}\index{osgeo::proj::io::JSONFormatter@{osgeo::proj::io::JSONFormatter}}


Formatter to JSON strings.  




{\ttfamily \#include $<$io.\+hpp$>$}

\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1io_1_1JSONFormatter_a64ae7c6703cb76882708188567210d75}\label{classosgeo_1_1proj_1_1io_1_1JSONFormatter_a64ae7c6703cb76882708188567210d75}} 
\mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1JSONFormatter}{JSONFormatter}} \& {\bfseries set\+Multi\+Line} (bool multi\+Line) noexcept
\begin{DoxyCompactList}\small\item\em Whether to use multi line output or not. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1io_1_1JSONFormatter_aea7f36a0e6dfd1c3c4fd2ee1afc1bf55}\label{classosgeo_1_1proj_1_1io_1_1JSONFormatter_aea7f36a0e6dfd1c3c4fd2ee1afc1bf55}} 
\mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1JSONFormatter}{JSONFormatter}} \& {\bfseries set\+Indentation\+Width} (int width) noexcept
\begin{DoxyCompactList}\small\item\em Set number of spaces for each indentation level (defaults to 4). \end{DoxyCompactList}\item 
\mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1JSONFormatter}{JSONFormatter}} \& \mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1JSONFormatter_aa01bab51d2be8e66d3c5d7694c713663}{set\+Schema}} (const std\+::string \&schema) noexcept
\begin{DoxyCompactList}\small\item\em Set the value of the \char`\"{}\$schema\char`\"{} key in the top level object. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classosgeo_1_1proj_1_1io_1_1JSONFormatter_ab3e565e3a45de7d2b0c163a39b3435a4}\label{classosgeo_1_1proj_1_1io_1_1JSONFormatter_ab3e565e3a45de7d2b0c163a39b3435a4}} 
const std\+::string \& {\bfseries to\+String} () const
\begin{DoxyCompactList}\small\item\em Return the serialized JSON. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_aadfe1134c05cab65a5117c8576618d21}{JSONFormatter\+NNPtr}} \mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1JSONFormatter_a82ac7e4cd36c61aee867beff1b11e05b}{create}} (\mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_ac071e92c14195058e37bcd4c7b75b42f}{Database\+Context\+Ptr}} db\+Context=nullptr)
\begin{DoxyCompactList}\small\item\em Constructs a new formatter. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Formatter to JSON strings. 

An instance of this class can only be used by a single thread at a time. 

\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1io_1_1JSONFormatter_a82ac7e4cd36c61aee867beff1b11e05b}\label{classosgeo_1_1proj_1_1io_1_1JSONFormatter_a82ac7e4cd36c61aee867beff1b11e05b}} 
\index{osgeo::proj::io::JSONFormatter@{osgeo::proj::io::JSONFormatter}!create@{create}}
\index{create@{create}!osgeo::proj::io::JSONFormatter@{osgeo::proj::io::JSONFormatter}}
\doxysubsubsection{\texorpdfstring{create()}{create()}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_aadfe1134c05cab65a5117c8576618d21}{JSONFormatter\+NNPtr}} osgeo\+::proj\+::io\+::\+JSONFormatter\+::create (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceosgeo_1_1proj_1_1io_ac071e92c14195058e37bcd4c7b75b42f}{Database\+Context\+Ptr}}}]{db\+Context = {\ttfamily nullptr} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Constructs a new formatter. 

A formatter can be used only once (its internal state is mutated)

\begin{DoxyReturn}{Returns}
new formatter. 
\end{DoxyReturn}
\mbox{\Hypertarget{classosgeo_1_1proj_1_1io_1_1JSONFormatter_aa01bab51d2be8e66d3c5d7694c713663}\label{classosgeo_1_1proj_1_1io_1_1JSONFormatter_aa01bab51d2be8e66d3c5d7694c713663}} 
\index{osgeo::proj::io::JSONFormatter@{osgeo::proj::io::JSONFormatter}!setSchema@{setSchema}}
\index{setSchema@{setSchema}!osgeo::proj::io::JSONFormatter@{osgeo::proj::io::JSONFormatter}}
\doxysubsubsection{\texorpdfstring{setSchema()}{setSchema()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classosgeo_1_1proj_1_1io_1_1JSONFormatter}{JSONFormatter}} \& osgeo\+::proj\+::io\+::\+JSONFormatter\+::set\+Schema (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{schema }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [noexcept]}}



Set the value of the \char`\"{}\$schema\char`\"{} key in the top level object. 

If set to empty string, it will not be written. 

The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
include/proj/io.\+hpp\item 
src/iso19111/io.\+cpp\end{DoxyCompactItemize}
