\hypertarget{nnstreamer__conf_8c}{}\doxysection{nnstreamer/nnstreamer\+\_\+conf.c File Reference}
\label{nnstreamer__conf_8c}\index{nnstreamer/nnstreamer\_conf.c@{nnstreamer/nnstreamer\_conf.c}}


N\+N\+Streamer Configuration (conf file, env-\/var) Management.  


{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$glib.\+h$>$}\newline
{\ttfamily \#include \char`\"{}nnstreamer\+\_\+log.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}nnstreamer\+\_\+conf.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}nnstreamer\+\_\+subplugin.\+h\char`\"{}}\newline
Include dependency graph for nnstreamer\+\_\+conf.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structsubplugin__conf}{subplugin\+\_\+conf}}
\item 
struct \mbox{\hyperlink{structconfdata}{confdata}}
\item 
struct \mbox{\hyperlink{structvstr__helper}{vstr\+\_\+helper}}
\begin{DoxyCompactList}\small\item\em Data structure for \+\_\+g\+\_\+list\+\_\+foreach\+\_\+vstr\+\_\+helper. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{structdump__buf}{dump\+\_\+buf}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{nnstreamer__conf_8c_a0d086d6987ec96fd954fcfb8a4c83c3f}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+D\+E\+C\+O\+D\+ER}}~\char`\"{}libnnstreamer\+\_\+decoder\+\_\+\char`\"{}
\item 
\#define \mbox{\hyperlink{nnstreamer__conf_8c_a1a906640e4f4a023f0305b5e9ff85681}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+F\+I\+L\+T\+ER}}~\char`\"{}libnnstreamer\+\_\+filter\+\_\+\char`\"{}
\item 
\#define \mbox{\hyperlink{nnstreamer__conf_8c_a242628ab9c56fc45bea5bc2ffb305c4b}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+C\+U\+S\+T\+O\+M\+F\+I\+L\+T\+E\+RS}}~\char`\"{}\char`\"{}
\item 
\#define \mbox{\hyperlink{nnstreamer__conf_8c_a1db133fa64504ea48f87d529ed60d645}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+C\+O\+N\+V\+E\+R\+T\+ER}}~\char`\"{}libnnstreamer\+\_\+converter\+\_\+\char`\"{}
\item 
\#define \mbox{\hyperlink{nnstreamer__conf_8c_a7d2a83414c4b9c254ca7c0f5c67349b2}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+T\+R\+A\+I\+N\+ER}}~\char`\"{}libnnstreamer\+\_\+trainer\+\_\+\char`\"{}
\item 
\#define \mbox{\hyperlink{nnstreamer__conf_8c_a1f7713f4a7046a63f69ee75b4c573057}{S\+T\+R\+\_\+\+B\+O\+OL}}(x)~((x) ? \char`\"{}T\+R\+UE\char`\"{} \+: \char`\"{}\mbox{\hyperlink{nnstreamer_8c_ac529551d78a5faa7079a3deaaadc3f5e}{F\+A\+L\+SE}}\char`\"{})
\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fed}{conf\+\_\+sources}} \{ \newline
\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda1840bf71b1825e95568c7c9a057c1104}{C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+N\+V\+V\+AR}} = 0, 
\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda6b6fe09ae14d2db5c5b001abdd8f420f}{C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+I\+NI}} = 1, 
\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedafe70dac9d55733718938c1e7ad26575d}{C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+H\+A\+R\+D\+C\+O\+DE}} = 2, 
\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda28be41efb51d3f072fb4b9acda73d324}{C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+X\+T\+R\+A\+\_\+\+C\+O\+NF}} = 3, 
\newline
\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedae05b5ec7f03c7777a8f52339f1753681}{C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+ND}}
 \}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static gboolean \mbox{\hyperlink{nnstreamer__conf_8c_a0367a4d3f2da1db74a14dabb025e8589}{\+\_\+parse\+\_\+bool\+\_\+string}} (const gchar $\ast$strval, gboolean def)
\begin{DoxyCompactList}\small\item\em Parse string to get boolean value. \end{DoxyCompactList}\item 
static gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_a8b9d874ef3775516359a46cb7d3c7976}{\+\_\+strdup\+\_\+getenv}} (const gchar $\ast$name)
\begin{DoxyCompactList}\small\item\em Private function to get strdup-\/ed env-\/var if it\textquotesingle{}s valid. Otherwise, N\+U\+LL. \end{DoxyCompactList}\item 
static gboolean \mbox{\hyperlink{nnstreamer__conf_8c_ae26fb4736fd5f1ba11cb85e831b94fc8}{\+\_\+validate\+\_\+file}} (\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}}, const gchar $\ast$fullpath)
\begin{DoxyCompactList}\small\item\em Private function to validate .so file can be added to the list. \end{DoxyCompactList}\item 
static gboolean \mbox{\hyperlink{nnstreamer__conf_8c_a9bfa33770feece1e7f2217a7bdcb8a31}{\+\_\+get\+\_\+filenames}} (\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}}, const gchar $\ast$dir, G\+S\+List $\ast$$\ast$listF, G\+S\+List $\ast$$\ast$listN, guint $\ast$counter)
\begin{DoxyCompactList}\small\item\em Private function to fill in \char`\"{}.\+so/.\+dylib list\char`\"{} with fullpath-\/filenames in a directory. \end{DoxyCompactList}\item 
static gboolean \mbox{\hyperlink{nnstreamer__conf_8c_a4bb83cd87794d005da9305ba561a0fa4}{\+\_\+get\+\_\+subplugin\+\_\+with\+\_\+type}} (\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}}, gchar $\ast$$\ast$$\ast$name, gchar $\ast$$\ast$$\ast$filepath)
\begin{DoxyCompactList}\small\item\em Private function to get sub-\/plugins list with type. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{nnstreamer__conf_8c_a092a46c475cc76a2faac310a7dffb576}{\+\_\+g\+\_\+list\+\_\+foreach\+\_\+vstr\+\_\+helper}} (gpointer \mbox{\hyperlink{gsttensor__if_8c_a3c9cc8d6e8da85fef51da4c7115b97f6}{data}}, gpointer user\+\_\+data)
\begin{DoxyCompactList}\small\item\em Private function to help convert linked-\/list to vstr with foreach @data The element data of linked-\/list @user\+\_\+data The struct to fill in vstr. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{nnstreamer__conf_8c_a4690a7bd1633ab66d5efe6fbe21c7f98}{\+\_\+fill\+\_\+in\+\_\+vstr}} (gchar $\ast$$\ast$$\ast$fullpath\+\_\+vstr, gchar $\ast$$\ast$$\ast$name\+\_\+vstr, gchar $\ast$searchpath\mbox{[}\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedae05b5ec7f03c7777a8f52339f1753681}{C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+ND}}\mbox{]}, \mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}})
\begin{DoxyCompactList}\small\item\em Private function to fill in vstr. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{nnstreamer__conf_8c_a537ce8d7d6d6e877bcadfe76935754b7}{\+\_\+fill\+\_\+subplugin\+\_\+path}} (\mbox{\hyperlink{structconfdata}{confdata}} $\ast$cdata, G\+Key\+File $\ast$key\+\_\+file, \mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fed}{conf\+\_\+sources}} src)
\begin{DoxyCompactList}\small\item\em Private function to fill subplugin path. \end{DoxyCompactList}\item 
gboolean \mbox{\hyperlink{nnstreamer__conf_8c_a2a352c1802c7e8ce2fc412819b90b20d}{nnsconf\+\_\+loadconf}} (gboolean force\+\_\+reload)
\begin{DoxyCompactList}\small\item\em Public function defined in the header. \end{DoxyCompactList}\item 
const gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_aaf48cbb3cb8c31fc1def177c49306c9c}{nnsconf\+\_\+get\+\_\+fullpath}} (const gchar $\ast$subpluginname, \mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}})
\begin{DoxyCompactList}\small\item\em Public function defined in the header. \end{DoxyCompactList}\item 
gboolean \mbox{\hyperlink{nnstreamer__conf_8c_a80d976203869327bc1dc669aaaa2164c}{nnsconf\+\_\+validate\+\_\+file}} (\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}}, const gchar $\ast$fullpath)
\begin{DoxyCompactList}\small\item\em Public function to validate sub-\/plugin library is available. \end{DoxyCompactList}\item 
const gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_ab830487f58b55abe5fcacdd64411668c}{nnsconf\+\_\+get\+\_\+subplugin\+\_\+name\+\_\+prefix}} (\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}})
\begin{DoxyCompactList}\small\item\em Get sub-\/plugin\textquotesingle{}s name prefix. \end{DoxyCompactList}\item 
guint \mbox{\hyperlink{nnstreamer__conf_8c_a09ce4ce8acd324bd859e0d18b1227d60}{nnsconf\+\_\+get\+\_\+subplugin\+\_\+info}} (\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}}, \mbox{\hyperlink{structsubplugin__info__s}{subplugin\+\_\+info\+\_\+s}} $\ast$info)
\begin{DoxyCompactList}\small\item\em Public function to get the list of sub-\/plugins name and path. \end{DoxyCompactList}\item 
gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_a8d429e2f6514e8cf61031e7d7b39699f}{nnsconf\+\_\+get\+\_\+custom\+\_\+value\+\_\+string}} (const gchar $\ast$group, const gchar $\ast$key)
\begin{DoxyCompactList}\small\item\em Public function defined in the header. \end{DoxyCompactList}\item 
gboolean \mbox{\hyperlink{nnstreamer__conf_8c_a164ae561a7fa7608be1b924aa88f0817}{nnsconf\+\_\+get\+\_\+custom\+\_\+value\+\_\+bool}} (const gchar $\ast$group, const gchar $\ast$key, gboolean def)
\begin{DoxyCompactList}\small\item\em Public function defined in the header. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{nnstreamer__conf_8c_a4bea60d604bce6404a66fa0596600f8e}{nnsconf\+\_\+dump}} (gchar $\ast$str, gulong size)
\begin{DoxyCompactList}\small\item\em Print out configurations. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{nnstreamer__conf_8c_abb9aecb567cc0888f40c582846a5f60a}{\+\_\+foreach\+\_\+custom\+\_\+property}} (G\+Quark key\+\_\+id, gpointer \mbox{\hyperlink{gsttensor__if_8c_a3c9cc8d6e8da85fef51da4c7115b97f6}{data}}, gpointer user\+\_\+data)
\begin{DoxyCompactList}\small\item\em foreach callback for custom property \end{DoxyCompactList}\item 
void \mbox{\hyperlink{nnstreamer__conf_8c_a5c18b3db8d48a34f5facf1720d6c2149}{nnsconf\+\_\+subplugin\+\_\+dump}} (gchar $\ast$str, gulong size)
\begin{DoxyCompactList}\small\item\em Print out the information of registered sub-\/plugins. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static const gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_a7c3b3eacb0f394dbaff04931e7db1c41}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+E\+N\+V\+V\+AR}} \mbox{[}\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a7c516ac8b1f831d43f4b83f3977e5b57}{N\+N\+S\+C\+O\+N\+F\+\_\+\+P\+A\+T\+H\+\_\+\+E\+ND}}\mbox{]}
\item 
static const gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_a251de73c61ca43a5bb479d91fa8b33b8}{N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+A\+TH}} \mbox{[}\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a7c516ac8b1f831d43f4b83f3977e5b57}{N\+N\+S\+C\+O\+N\+F\+\_\+\+P\+A\+T\+H\+\_\+\+E\+ND}}\mbox{]}
\item 
static const gchar $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_a31839092f1d73bfdff290f679a562340}{subplugin\+\_\+prefixes}} \mbox{[}$\,$\mbox{]}
\item 
static \mbox{\hyperlink{structconfdata}{confdata}} \mbox{\hyperlink{nnstreamer__conf_8c_a6252d7ec28e7986f4f7bfc34317198fa}{conf}} = \{ 0 \}
\item 
static G\+Hash\+Table $\ast$ \mbox{\hyperlink{nnstreamer__conf_8c_ac5c9c21264d311732b21e4a232166d86}{custom\+\_\+table}} = N\+U\+LL
\begin{DoxyCompactList}\small\item\em Internal cache for the custom key-\/values. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
N\+N\+Streamer Configuration (conf file, env-\/var) Management. 

N\+N\+Streamer Configurations / Environmental Variable Manager. Copyright (C) 2018 Myung\+Joo Ham \href{mailto:myungjoo.ham@samsung.com}{\texttt{ myungjoo.\+ham@samsung.\+com}}

This library is free software; you can redistribute it and/or modify it under the terms of the G\+NU Library General Public License as published by the Free Software Foundation; version 2.\+1 of the License.

This library is distributed in the hope that it will be useful, but W\+I\+T\+H\+O\+UT A\+NY W\+A\+R\+R\+A\+N\+TY; without even the implied warranty of M\+E\+R\+C\+H\+A\+N\+T\+A\+B\+I\+L\+I\+TY or F\+I\+T\+N\+E\+SS F\+OR A P\+A\+R\+T\+I\+C\+U\+L\+AR P\+U\+R\+P\+O\+SE. See the G\+NU Library General Public License for more details.

\begin{DoxyDate}{Date}
26 Nov 2018 
\end{DoxyDate}
\begin{DoxySeeAlso}{See also}
\href{https://github.com/nnstreamer/nnstreamer}{\texttt{ https\+://github.\+com/nnstreamer/nnstreamer}} 
\end{DoxySeeAlso}
\begin{DoxyAuthor}{Author}
Myung\+Joo Ham \href{mailto:myungjoo.ham@samsung.com}{\texttt{ myungjoo.\+ham@samsung.\+com}} 
\end{DoxyAuthor}
\begin{DoxyRefDesc}{Bug}
\item[\mbox{\hyperlink{bug__bug000087}{Bug}}]No known bugs except for N\+YI items\end{DoxyRefDesc}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{nnstreamer__conf_8c_a1db133fa64504ea48f87d529ed60d645}\label{nnstreamer__conf_8c_a1db133fa64504ea48f87d529ed60d645}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_PREFIX\_CONVERTER@{NNSTREAMER\_PREFIX\_CONVERTER}}
\index{NNSTREAMER\_PREFIX\_CONVERTER@{NNSTREAMER\_PREFIX\_CONVERTER}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_PREFIX\_CONVERTER}{NNSTREAMER\_PREFIX\_CONVERTER}}
{\footnotesize\ttfamily \#define N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+C\+O\+N\+V\+E\+R\+T\+ER~\char`\"{}libnnstreamer\+\_\+converter\+\_\+\char`\"{}}



Definition at line 42 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a242628ab9c56fc45bea5bc2ffb305c4b}\label{nnstreamer__conf_8c_a242628ab9c56fc45bea5bc2ffb305c4b}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_PREFIX\_CUSTOMFILTERS@{NNSTREAMER\_PREFIX\_CUSTOMFILTERS}}
\index{NNSTREAMER\_PREFIX\_CUSTOMFILTERS@{NNSTREAMER\_PREFIX\_CUSTOMFILTERS}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_PREFIX\_CUSTOMFILTERS}{NNSTREAMER\_PREFIX\_CUSTOMFILTERS}}
{\footnotesize\ttfamily \#define N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+C\+U\+S\+T\+O\+M\+F\+I\+L\+T\+E\+RS~\char`\"{}\char`\"{}}



Definition at line 41 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a0d086d6987ec96fd954fcfb8a4c83c3f}\label{nnstreamer__conf_8c_a0d086d6987ec96fd954fcfb8a4c83c3f}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_PREFIX\_DECODER@{NNSTREAMER\_PREFIX\_DECODER}}
\index{NNSTREAMER\_PREFIX\_DECODER@{NNSTREAMER\_PREFIX\_DECODER}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_PREFIX\_DECODER}{NNSTREAMER\_PREFIX\_DECODER}}
{\footnotesize\ttfamily \#define N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+D\+E\+C\+O\+D\+ER~\char`\"{}libnnstreamer\+\_\+decoder\+\_\+\char`\"{}}

Note that users still can place their custom filters anywhere if they designate them with the full path. 

Definition at line 39 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a1a906640e4f4a023f0305b5e9ff85681}\label{nnstreamer__conf_8c_a1a906640e4f4a023f0305b5e9ff85681}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_PREFIX\_FILTER@{NNSTREAMER\_PREFIX\_FILTER}}
\index{NNSTREAMER\_PREFIX\_FILTER@{NNSTREAMER\_PREFIX\_FILTER}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_PREFIX\_FILTER}{NNSTREAMER\_PREFIX\_FILTER}}
{\footnotesize\ttfamily \#define N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+F\+I\+L\+T\+ER~\char`\"{}libnnstreamer\+\_\+filter\+\_\+\char`\"{}}



Definition at line 40 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a7d2a83414c4b9c254ca7c0f5c67349b2}\label{nnstreamer__conf_8c_a7d2a83414c4b9c254ca7c0f5c67349b2}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_PREFIX\_TRAINER@{NNSTREAMER\_PREFIX\_TRAINER}}
\index{NNSTREAMER\_PREFIX\_TRAINER@{NNSTREAMER\_PREFIX\_TRAINER}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_PREFIX\_TRAINER}{NNSTREAMER\_PREFIX\_TRAINER}}
{\footnotesize\ttfamily \#define N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+R\+E\+F\+I\+X\+\_\+\+T\+R\+A\+I\+N\+ER~\char`\"{}libnnstreamer\+\_\+trainer\+\_\+\char`\"{}}



Definition at line 43 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a1f7713f4a7046a63f69ee75b4c573057}\label{nnstreamer__conf_8c_a1f7713f4a7046a63f69ee75b4c573057}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!STR\_BOOL@{STR\_BOOL}}
\index{STR\_BOOL@{STR\_BOOL}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{STR\_BOOL}{STR\_BOOL}}
{\footnotesize\ttfamily \#define S\+T\+R\+\_\+\+B\+O\+OL(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~((x) ? \char`\"{}T\+R\+UE\char`\"{} \+: \char`\"{}\mbox{\hyperlink{nnstreamer_8c_ac529551d78a5faa7079a3deaaadc3f5e}{F\+A\+L\+SE}}\char`\"{})}



Definition at line 622 of file nnstreamer\+\_\+conf.\+c.



\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fed}\label{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fed}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!conf\_sources@{conf\_sources}}
\index{conf\_sources@{conf\_sources}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{conf\_sources}{conf\_sources}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fed}{conf\+\_\+sources}}}

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{CONF\_SOURCE\_ENVVAR@{CONF\_SOURCE\_ENVVAR}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!CONF\_SOURCE\_ENVVAR@{CONF\_SOURCE\_ENVVAR}}}\mbox{\Hypertarget{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda1840bf71b1825e95568c7c9a057c1104}\label{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda1840bf71b1825e95568c7c9a057c1104}} 
C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+N\+V\+V\+AR&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{CONF\_SOURCE\_INI@{CONF\_SOURCE\_INI}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!CONF\_SOURCE\_INI@{CONF\_SOURCE\_INI}}}\mbox{\Hypertarget{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda6b6fe09ae14d2db5c5b001abdd8f420f}\label{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda6b6fe09ae14d2db5c5b001abdd8f420f}} 
C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+I\+NI&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{CONF\_SOURCE\_HARDCODE@{CONF\_SOURCE\_HARDCODE}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!CONF\_SOURCE\_HARDCODE@{CONF\_SOURCE\_HARDCODE}}}\mbox{\Hypertarget{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedafe70dac9d55733718938c1e7ad26575d}\label{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedafe70dac9d55733718938c1e7ad26575d}} 
C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+H\+A\+R\+D\+C\+O\+DE&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{CONF\_SOURCE\_EXTRA\_CONF@{CONF\_SOURCE\_EXTRA\_CONF}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!CONF\_SOURCE\_EXTRA\_CONF@{CONF\_SOURCE\_EXTRA\_CONF}}}\mbox{\Hypertarget{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda28be41efb51d3f072fb4b9acda73d324}\label{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58feda28be41efb51d3f072fb4b9acda73d324}} 
C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+X\+T\+R\+A\+\_\+\+C\+O\+NF&path from extra config file \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{CONF\_SOURCE\_END@{CONF\_SOURCE\_END}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!CONF\_SOURCE\_END@{CONF\_SOURCE\_END}}}\mbox{\Hypertarget{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedae05b5ec7f03c7777a8f52339f1753681}\label{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fedae05b5ec7f03c7777a8f52339f1753681}} 
C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+ND&\\
\hline

\end{DoxyEnumFields}


Definition at line 73 of file nnstreamer\+\_\+conf.\+c.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{nnstreamer__conf_8c_a4690a7bd1633ab66d5efe6fbe21c7f98}\label{nnstreamer__conf_8c_a4690a7bd1633ab66d5efe6fbe21c7f98}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_fill\_in\_vstr@{\_fill\_in\_vstr}}
\index{\_fill\_in\_vstr@{\_fill\_in\_vstr}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_fill\_in\_vstr()}{\_fill\_in\_vstr()}}
{\footnotesize\ttfamily static void \+\_\+fill\+\_\+in\+\_\+vstr (\begin{DoxyParamCaption}\item[{gchar $\ast$$\ast$$\ast$}]{fullpath\+\_\+vstr,  }\item[{gchar $\ast$$\ast$$\ast$}]{name\+\_\+vstr,  }\item[{gchar $\ast$}]{searchpath\mbox{[}\+C\+O\+N\+F\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+E\+N\+D\mbox{]},  }\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to fill in vstr. 



Definition at line 280 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a4690a7bd1633ab66d5efe6fbe21c7f98_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a4690a7bd1633ab66d5efe6fbe21c7f98_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a537ce8d7d6d6e877bcadfe76935754b7}\label{nnstreamer__conf_8c_a537ce8d7d6d6e877bcadfe76935754b7}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_fill\_subplugin\_path@{\_fill\_subplugin\_path}}
\index{\_fill\_subplugin\_path@{\_fill\_subplugin\_path}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_fill\_subplugin\_path()}{\_fill\_subplugin\_path()}}
{\footnotesize\ttfamily static void \+\_\+fill\+\_\+subplugin\+\_\+path (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structconfdata}{confdata}} $\ast$}]{cdata,  }\item[{G\+Key\+File $\ast$}]{key\+\_\+file,  }\item[{\mbox{\hyperlink{nnstreamer__conf_8c_a206bd6889a84f14e3767dbf9f5a58fed}{conf\+\_\+sources}}}]{src }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to fill subplugin path. 



Definition at line 326 of file nnstreamer\+\_\+conf.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a537ce8d7d6d6e877bcadfe76935754b7_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_abb9aecb567cc0888f40c582846a5f60a}\label{nnstreamer__conf_8c_abb9aecb567cc0888f40c582846a5f60a}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_foreach\_custom\_property@{\_foreach\_custom\_property}}
\index{\_foreach\_custom\_property@{\_foreach\_custom\_property}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_foreach\_custom\_property()}{\_foreach\_custom\_property()}}
{\footnotesize\ttfamily static void \+\_\+foreach\+\_\+custom\+\_\+property (\begin{DoxyParamCaption}\item[{G\+Quark}]{key\+\_\+id,  }\item[{gpointer}]{data,  }\item[{gpointer}]{user\+\_\+data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



foreach callback for custom property 



Definition at line 681 of file nnstreamer\+\_\+conf.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_abb9aecb567cc0888f40c582846a5f60a_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a092a46c475cc76a2faac310a7dffb576}\label{nnstreamer__conf_8c_a092a46c475cc76a2faac310a7dffb576}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_g\_list\_foreach\_vstr\_helper@{\_g\_list\_foreach\_vstr\_helper}}
\index{\_g\_list\_foreach\_vstr\_helper@{\_g\_list\_foreach\_vstr\_helper}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_g\_list\_foreach\_vstr\_helper()}{\_g\_list\_foreach\_vstr\_helper()}}
{\footnotesize\ttfamily static void \+\_\+g\+\_\+list\+\_\+foreach\+\_\+vstr\+\_\+helper (\begin{DoxyParamCaption}\item[{gpointer}]{data,  }\item[{gpointer}]{user\+\_\+data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to help convert linked-\/list to vstr with foreach @data The element data of linked-\/list @user\+\_\+data The struct to fill in vstr. 

library error? internal logic error?

Definition at line 268 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=288pt]{nnstreamer__conf_8c_a092a46c475cc76a2faac310a7dffb576_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a092a46c475cc76a2faac310a7dffb576_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a9bfa33770feece1e7f2217a7bdcb8a31}\label{nnstreamer__conf_8c_a9bfa33770feece1e7f2217a7bdcb8a31}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_get\_filenames@{\_get\_filenames}}
\index{\_get\_filenames@{\_get\_filenames}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_get\_filenames()}{\_get\_filenames()}}
{\footnotesize\ttfamily static gboolean \+\_\+get\+\_\+filenames (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type,  }\item[{const gchar $\ast$}]{dir,  }\item[{G\+S\+List $\ast$$\ast$}]{listF,  }\item[{G\+S\+List $\ast$$\ast$}]{listN,  }\item[{guint $\ast$}]{counter }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to fill in \char`\"{}.\+so/.\+dylib list\char`\"{} with fullpath-\/filenames in a directory. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & conf type to scan. \\
\hline
\mbox{\texttt{ in}}  & {\em dir} & Directory to be searched. \\
\hline
 & {\em \mbox{[}in/out\mbox{]}} & listF The fullpath list to be updated. \\
\hline
 & {\em \mbox{[}in/out\mbox{]}} & listN The name list to be updated. \\
\hline
 & {\em \mbox{[}in/out\mbox{]}} & counter increased by the number of appended elements. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
True if successfully updated. 
\end{DoxyReturn}
\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{todo__todo000047}{Todo}}]This assumes .so/.dylib for all sub plugins. Support Windows! \end{DoxyRefDesc}


Definition at line 183 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=289pt]{nnstreamer__conf_8c_a9bfa33770feece1e7f2217a7bdcb8a31_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a9bfa33770feece1e7f2217a7bdcb8a31_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a4bb83cd87794d005da9305ba561a0fa4}\label{nnstreamer__conf_8c_a4bb83cd87794d005da9305ba561a0fa4}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_get\_subplugin\_with\_type@{\_get\_subplugin\_with\_type}}
\index{\_get\_subplugin\_with\_type@{\_get\_subplugin\_with\_type}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_get\_subplugin\_with\_type()}{\_get\_subplugin\_with\_type()}}
{\footnotesize\ttfamily static gboolean \+\_\+get\+\_\+subplugin\+\_\+with\+\_\+type (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type,  }\item[{gchar $\ast$$\ast$$\ast$}]{name,  }\item[{gchar $\ast$$\ast$$\ast$}]{filepath }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to get sub-\/plugins list with type. 



Definition at line 229 of file nnstreamer\+\_\+conf.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a4bb83cd87794d005da9305ba561a0fa4_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a0367a4d3f2da1db74a14dabb025e8589}\label{nnstreamer__conf_8c_a0367a4d3f2da1db74a14dabb025e8589}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_parse\_bool\_string@{\_parse\_bool\_string}}
\index{\_parse\_bool\_string@{\_parse\_bool\_string}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_parse\_bool\_string()}{\_parse\_bool\_string()}}
{\footnotesize\ttfamily static gboolean \+\_\+parse\+\_\+bool\+\_\+string (\begin{DoxyParamCaption}\item[{const gchar $\ast$}]{strval,  }\item[{gboolean}]{def }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Parse string to get boolean value. 



Definition at line 115 of file nnstreamer\+\_\+conf.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a0367a4d3f2da1db74a14dabb025e8589_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a8b9d874ef3775516359a46cb7d3c7976}\label{nnstreamer__conf_8c_a8b9d874ef3775516359a46cb7d3c7976}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_strdup\_getenv@{\_strdup\_getenv}}
\index{\_strdup\_getenv@{\_strdup\_getenv}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_strdup\_getenv()}{\_strdup\_getenv()}}
{\footnotesize\ttfamily static gchar$\ast$ \+\_\+strdup\+\_\+getenv (\begin{DoxyParamCaption}\item[{const gchar $\ast$}]{name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to get strdup-\/ed env-\/var if it\textquotesingle{}s valid. Otherwise, N\+U\+LL. 


\begin{DoxyRetVals}{Return values}
{\em strdup-\/ed} & env-\/var value \\
\hline
\end{DoxyRetVals}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em name} & Environmental variable name \\
\hline
\end{DoxyParams}
\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{todo__todo000045}{Todo}}]Evaluate if we need to use secure\+\_\+getenv() here (and compatible with other OS \end{DoxyRefDesc}


Definition at line 143 of file nnstreamer\+\_\+conf.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a8b9d874ef3775516359a46cb7d3c7976_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_ae26fb4736fd5f1ba11cb85e831b94fc8}\label{nnstreamer__conf_8c_ae26fb4736fd5f1ba11cb85e831b94fc8}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!\_validate\_file@{\_validate\_file}}
\index{\_validate\_file@{\_validate\_file}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{\_validate\_file()}{\_validate\_file()}}
{\footnotesize\ttfamily static gboolean \+\_\+validate\+\_\+file (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type,  }\item[{const gchar $\ast$}]{fullpath }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Private function to validate .so file can be added to the list. 

\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{todo__todo000046}{Todo}}]how to validate with nnsconf type. \end{DoxyRefDesc}


Definition at line 158 of file nnstreamer\+\_\+conf.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_ae26fb4736fd5f1ba11cb85e831b94fc8_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a4bea60d604bce6404a66fa0596600f8e}\label{nnstreamer__conf_8c_a4bea60d604bce6404a66fa0596600f8e}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_dump@{nnsconf\_dump}}
\index{nnsconf\_dump@{nnsconf\_dump}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_dump()}{nnsconf\_dump()}}
{\footnotesize\ttfamily void nnsconf\+\_\+dump (\begin{DoxyParamCaption}\item[{gchar $\ast$}]{str,  }\item[{gulong}]{size }\end{DoxyParamCaption})}



Print out configurations. 

N\+N\+Streamer configuration dump as string.

\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{todo__todo000048}{Todo}}]Add more configuration values to dump. \end{DoxyRefDesc}


Definition at line 628 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a4bea60d604bce6404a66fa0596600f8e_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a164ae561a7fa7608be1b924aa88f0817}\label{nnstreamer__conf_8c_a164ae561a7fa7608be1b924aa88f0817}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_get\_custom\_value\_bool@{nnsconf\_get\_custom\_value\_bool}}
\index{nnsconf\_get\_custom\_value\_bool@{nnsconf\_get\_custom\_value\_bool}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_get\_custom\_value\_bool()}{nnsconf\_get\_custom\_value\_bool()}}
{\footnotesize\ttfamily gboolean nnsconf\+\_\+get\+\_\+custom\+\_\+value\+\_\+bool (\begin{DoxyParamCaption}\item[{const gchar $\ast$}]{group,  }\item[{const gchar $\ast$}]{key,  }\item[{gboolean}]{def }\end{DoxyParamCaption})}



Public function defined in the header. 

Get the custom configuration value from .ini and envvar. @detail For predefined configurations defined in this header, use the given enum for faster configuration processing. For custom configurations not defined in this header, you may use this A\+PI to access your own custom configurations. Configuration values may be loaded only once during runtime, thus, if the values are changed in run-\/time, the changes are not guaranteed to be reflected. The E\+N\+V\+V\+AR is supposed to be N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\$\{group\}\+\_\+\$\{key\}, which has higher priority than the .ini configuration. Be careful not to use special characters in group name (\mbox{[}, \mbox{]}, \+\_\+).

\begin{DoxyNote}{Note}
This function is included in nnstreamer internal header for native A\+P\+Is. When changing the declaration, you should update the internal header (\mbox{\hyperlink{nnstreamer__internal_8h}{nnstreamer\+\_\+internal.\+h}}). 
\end{DoxyNote}


Definition at line 609 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a164ae561a7fa7608be1b924aa88f0817_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a8d429e2f6514e8cf61031e7d7b39699f}\label{nnstreamer__conf_8c_a8d429e2f6514e8cf61031e7d7b39699f}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_get\_custom\_value\_string@{nnsconf\_get\_custom\_value\_string}}
\index{nnsconf\_get\_custom\_value\_string@{nnsconf\_get\_custom\_value\_string}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_get\_custom\_value\_string()}{nnsconf\_get\_custom\_value\_string()}}
{\footnotesize\ttfamily gchar$\ast$ nnsconf\+\_\+get\+\_\+custom\+\_\+value\+\_\+string (\begin{DoxyParamCaption}\item[{const gchar $\ast$}]{group,  }\item[{const gchar $\ast$}]{key }\end{DoxyParamCaption})}



Public function defined in the header. 

Get the custom configuration value from .ini and envvar. @detail For predefined configurations defined in this header, use the given enum for faster configuration processing. For custom configurations not defined in this header, you may use this A\+PI to access your own custom configurations. Configuration values may be loaded only once during runtime, thus, if the values are changed in run-\/time, the changes are not guaranteed to be reflected. The E\+N\+V\+V\+AR is supposed to be N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\$\{group\}\+\_\+\$\{key\}, which has higher priority than the .ini configuration. Be careful not to use special characters in group name (\mbox{[}, \mbox{]}, \+\_\+).

\begin{DoxyNote}{Note}
This function is included in nnstreamer internal header for native A\+P\+Is. When changing the declaration, you should update the internal header (\mbox{\hyperlink{nnstreamer__internal_8h}{nnstreamer\+\_\+internal.\+h}}). 
\end{DoxyNote}
Internal lib error? out-\/of-\/memory?

Definition at line 557 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a8d429e2f6514e8cf61031e7d7b39699f_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a8d429e2f6514e8cf61031e7d7b39699f_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_aaf48cbb3cb8c31fc1def177c49306c9c}\label{nnstreamer__conf_8c_aaf48cbb3cb8c31fc1def177c49306c9c}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_get\_fullpath@{nnsconf\_get\_fullpath}}
\index{nnsconf\_get\_fullpath@{nnsconf\_get\_fullpath}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_get\_fullpath()}{nnsconf\_get\_fullpath()}}
{\footnotesize\ttfamily const gchar$\ast$ nnsconf\+\_\+get\+\_\+fullpath (\begin{DoxyParamCaption}\item[{const gchar $\ast$}]{subpluginname,  }\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type }\end{DoxyParamCaption})}



Public function defined in the header. 

Get the configured paths for the type with sub-\/plugin name. 

Definition at line 483 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_aaf48cbb3cb8c31fc1def177c49306c9c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_aaf48cbb3cb8c31fc1def177c49306c9c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a09ce4ce8acd324bd859e0d18b1227d60}\label{nnstreamer__conf_8c_a09ce4ce8acd324bd859e0d18b1227d60}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_get\_subplugin\_info@{nnsconf\_get\_subplugin\_info}}
\index{nnsconf\_get\_subplugin\_info@{nnsconf\_get\_subplugin\_info}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_get\_subplugin\_info()}{nnsconf\_get\_subplugin\_info()}}
{\footnotesize\ttfamily guint nnsconf\+\_\+get\+\_\+subplugin\+\_\+info (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type,  }\item[{\mbox{\hyperlink{structsubplugin__info__s}{subplugin\+\_\+info\+\_\+s}} $\ast$}]{info }\end{DoxyParamCaption})}



Public function to get the list of sub-\/plugins name and path. 

\begin{DoxyReturn}{Returns}
total number of sub-\/plugins for given type 
\end{DoxyReturn}
\begin{DoxyNote}{Note}
DO N\+OT free sub-\/plugins info 
\end{DoxyNote}


Definition at line 528 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a09ce4ce8acd324bd859e0d18b1227d60_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a09ce4ce8acd324bd859e0d18b1227d60_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_ab830487f58b55abe5fcacdd64411668c}\label{nnstreamer__conf_8c_ab830487f58b55abe5fcacdd64411668c}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_get\_subplugin\_name\_prefix@{nnsconf\_get\_subplugin\_name\_prefix}}
\index{nnsconf\_get\_subplugin\_name\_prefix@{nnsconf\_get\_subplugin\_name\_prefix}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_get\_subplugin\_name\_prefix()}{nnsconf\_get\_subplugin\_name\_prefix()}}
{\footnotesize\ttfamily const gchar$\ast$ nnsconf\+\_\+get\+\_\+subplugin\+\_\+name\+\_\+prefix (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type }\end{DoxyParamCaption})}



Get sub-\/plugin\textquotesingle{}s name prefix. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & The type (F\+I\+L\+T\+E\+R\+S/\+D\+E\+C\+O\+D\+E\+R\+S/\+C\+U\+S\+T\+O\+M\+\_\+\+F\+I\+L\+T\+E\+RS) \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Predefined prefix string for given type. 
\end{DoxyReturn}


Definition at line 516 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a2a352c1802c7e8ce2fc412819b90b20d}\label{nnstreamer__conf_8c_a2a352c1802c7e8ce2fc412819b90b20d}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_loadconf@{nnsconf\_loadconf}}
\index{nnsconf\_loadconf@{nnsconf\_loadconf}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_loadconf()}{nnsconf\_loadconf()}}
{\footnotesize\ttfamily gboolean nnsconf\+\_\+loadconf (\begin{DoxyParamCaption}\item[{gboolean}]{force\+\_\+reload }\end{DoxyParamCaption})}



Public function defined in the header. 

Load the .ini file. if it\textquotesingle{}s not Tizen, configuration from env-\/var has a higher priority

Priority of reading a conf file 1) read from N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+C\+O\+N\+F\+\_\+\+F\+I\+LE 2) read from N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+D\+E\+F\+A\+U\+L\+T\+\_\+\+C\+O\+N\+F\+\_\+\+F\+I\+LE 3) read from env-\/var

default value of \textquotesingle{}sysconfdir\textquotesingle{} in meson is \textquotesingle{}etc\textquotesingle{}

Internal lib error? out-\/of-\/memory?

Internal lib error? out-\/of-\/memory?

Failed to get the configuration. Note that Android A\+PI does not use the configuration.

Definition at line 342 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a2a352c1802c7e8ce2fc412819b90b20d_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a2a352c1802c7e8ce2fc412819b90b20d_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a5c18b3db8d48a34f5facf1720d6c2149}\label{nnstreamer__conf_8c_a5c18b3db8d48a34f5facf1720d6c2149}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_subplugin\_dump@{nnsconf\_subplugin\_dump}}
\index{nnsconf\_subplugin\_dump@{nnsconf\_subplugin\_dump}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_subplugin\_dump()}{nnsconf\_subplugin\_dump()}}
{\footnotesize\ttfamily void nnsconf\+\_\+subplugin\+\_\+dump (\begin{DoxyParamCaption}\item[{gchar $\ast$}]{str,  }\item[{gulong}]{size }\end{DoxyParamCaption})}



Print out the information of registered sub-\/plugins. 



Definition at line 695 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a5c18b3db8d48a34f5facf1720d6c2149_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__conf_8c_a80d976203869327bc1dc669aaaa2164c}\label{nnstreamer__conf_8c_a80d976203869327bc1dc669aaaa2164c}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!nnsconf\_validate\_file@{nnsconf\_validate\_file}}
\index{nnsconf\_validate\_file@{nnsconf\_validate\_file}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{nnsconf\_validate\_file()}{nnsconf\_validate\_file()}}
{\footnotesize\ttfamily gboolean nnsconf\+\_\+validate\+\_\+file (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610}{nnsconf\+\_\+type\+\_\+path}}}]{type,  }\item[{const gchar $\ast$}]{fullpath }\end{DoxyParamCaption})}



Public function to validate sub-\/plugin library is available. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em type} & The type (F\+I\+L\+T\+E\+R\+S/\+D\+E\+C\+O\+D\+E\+R\+S/\+C\+U\+S\+T\+O\+M\+\_\+\+F\+I\+L\+T\+E\+RS) \\
\hline
\mbox{\texttt{ in}}  & {\em fullpath} & The full path to the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
True if the file is regular and can be added to the list. 
\end{DoxyReturn}


Definition at line 503 of file nnstreamer\+\_\+conf.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a80d976203869327bc1dc669aaaa2164c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__conf_8c_a80d976203869327bc1dc669aaaa2164c_icgraph}
\end{center}
\end{figure}


\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{nnstreamer__conf_8c_a6252d7ec28e7986f4f7bfc34317198fa}\label{nnstreamer__conf_8c_a6252d7ec28e7986f4f7bfc34317198fa}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!conf@{conf}}
\index{conf@{conf}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{conf}{conf}}
{\footnotesize\ttfamily \mbox{\hyperlink{structconfdata}{confdata}} conf = \{ 0 \}\hspace{0.3cm}{\ttfamily [static]}}



Definition at line 109 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_ac5c9c21264d311732b21e4a232166d86}\label{nnstreamer__conf_8c_ac5c9c21264d311732b21e4a232166d86}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!custom\_table@{custom\_table}}
\index{custom\_table@{custom\_table}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{custom\_table}{custom\_table}}
{\footnotesize\ttfamily G\+Hash\+Table$\ast$ custom\+\_\+table = N\+U\+LL\hspace{0.3cm}{\ttfamily [static]}}



Internal cache for the custom key-\/values. 



Definition at line 549 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a7c3b3eacb0f394dbaff04931e7db1c41}\label{nnstreamer__conf_8c_a7c3b3eacb0f394dbaff04931e7db1c41}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_ENVVAR@{NNSTREAMER\_ENVVAR}}
\index{NNSTREAMER\_ENVVAR@{NNSTREAMER\_ENVVAR}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_ENVVAR}{NNSTREAMER\_ENVVAR}}
{\footnotesize\ttfamily const gchar$\ast$ N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+E\+N\+V\+V\+AR\mbox{[}\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a7c516ac8b1f831d43f4b83f3977e5b57}{N\+N\+S\+C\+O\+N\+F\+\_\+\+P\+A\+T\+H\+\_\+\+E\+ND}}\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a5cf1a2125e8fcd012647c4dd52eef344}{NNSCONF\_PATH\_FILTERS}}] = \textcolor{stringliteral}{"NNSTREAMER\_FILTERS"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a93408c562266c2de8af7f7b2f0432b81}{NNSCONF\_PATH\_DECODERS}}] = \textcolor{stringliteral}{"NNSTREAMER\_DECODERS"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a5571772ad11ab4bf6f78fdd6be8764ba}{NNSCONF\_PATH\_CUSTOM\_FILTERS}}] = \textcolor{stringliteral}{"NNSTREAMER\_CUSTOMFILTERS"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a000b70f39b08d3912aa0ff11ebcc53d3}{NNSCONF\_PATH\_CONVERTERS}}] = \textcolor{stringliteral}{"NNSTREAMER\_CONVERTERS"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610aee609bad3c01b3895f602b980cb67fe9}{NNSCONF\_PATH\_TRAINERS}}] = \textcolor{stringliteral}{"NNSTREAMER\_TRAINERS"}}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line 47 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a251de73c61ca43a5bb479d91fa8b33b8}\label{nnstreamer__conf_8c_a251de73c61ca43a5bb479d91fa8b33b8}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!NNSTREAMER\_PATH@{NNSTREAMER\_PATH}}
\index{NNSTREAMER\_PATH@{NNSTREAMER\_PATH}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{NNSTREAMER\_PATH}{NNSTREAMER\_PATH}}
{\footnotesize\ttfamily const gchar$\ast$ N\+N\+S\+T\+R\+E\+A\+M\+E\+R\+\_\+\+P\+A\+TH\mbox{[}\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a7c516ac8b1f831d43f4b83f3977e5b57}{N\+N\+S\+C\+O\+N\+F\+\_\+\+P\+A\+T\+H\+\_\+\+E\+ND}}\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a5cf1a2125e8fcd012647c4dd52eef344}{NNSCONF\_PATH\_FILTERS}}] = \textcolor{stringliteral}{"/usr/lib/nnstreamer/filters/"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a93408c562266c2de8af7f7b2f0432b81}{NNSCONF\_PATH\_DECODERS}}] = \textcolor{stringliteral}{"/usr/lib/nnstreamer/decoders/"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a5571772ad11ab4bf6f78fdd6be8764ba}{NNSCONF\_PATH\_CUSTOM\_FILTERS}}] = \textcolor{stringliteral}{"/usr/lib/nnstreamer/customfilters/"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a000b70f39b08d3912aa0ff11ebcc53d3}{NNSCONF\_PATH\_CONVERTERS}}] = \textcolor{stringliteral}{"/usr/lib/nnstreamer/converters/"},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610aee609bad3c01b3895f602b980cb67fe9}{NNSCONF\_PATH\_TRAINERS}}] = \textcolor{stringliteral}{"/usr/lib/nnstreamer/trainers/"}}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line 55 of file nnstreamer\+\_\+conf.\+c.

\mbox{\Hypertarget{nnstreamer__conf_8c_a31839092f1d73bfdff290f679a562340}\label{nnstreamer__conf_8c_a31839092f1d73bfdff290f679a562340}} 
\index{nnstreamer\_conf.c@{nnstreamer\_conf.c}!subplugin\_prefixes@{subplugin\_prefixes}}
\index{subplugin\_prefixes@{subplugin\_prefixes}!nnstreamer\_conf.c@{nnstreamer\_conf.c}}
\doxysubsubsection{\texorpdfstring{subplugin\_prefixes}{subplugin\_prefixes}}
{\footnotesize\ttfamily const gchar$\ast$ subplugin\+\_\+prefixes\mbox{[}$\,$\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a5cf1a2125e8fcd012647c4dd52eef344}{NNSCONF\_PATH\_FILTERS}}] = \mbox{\hyperlink{nnstreamer__conf_8c_a1a906640e4f4a023f0305b5e9ff85681}{NNSTREAMER\_PREFIX\_FILTER}},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a93408c562266c2de8af7f7b2f0432b81}{NNSCONF\_PATH\_DECODERS}}] = \mbox{\hyperlink{nnstreamer__conf_8c_a0d086d6987ec96fd954fcfb8a4c83c3f}{NNSTREAMER\_PREFIX\_DECODER}},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a5571772ad11ab4bf6f78fdd6be8764ba}{NNSCONF\_PATH\_CUSTOM\_FILTERS}}] = \mbox{\hyperlink{nnstreamer__conf_8c_a242628ab9c56fc45bea5bc2ffb305c4b}{NNSTREAMER\_PREFIX\_CUSTOMFILTERS}},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610ac5995a57da81fb730b74a0ef9ae10c58}{NNSCONF\_PATH\_EASY\_CUSTOM\_FILTERS}}] = \mbox{\hyperlink{nnstreamer__conf_8c_a242628ab9c56fc45bea5bc2ffb305c4b}{NNSTREAMER\_PREFIX\_CUSTOMFILTERS}}, }
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a000b70f39b08d3912aa0ff11ebcc53d3}{NNSCONF\_PATH\_CONVERTERS}}] = \mbox{\hyperlink{nnstreamer__conf_8c_a1db133fa64504ea48f87d529ed60d645}{NNSTREAMER\_PREFIX\_CONVERTER}},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610aee609bad3c01b3895f602b980cb67fe9}{NNSCONF\_PATH\_TRAINERS}}] = \mbox{\hyperlink{nnstreamer__conf_8c_a7d2a83414c4b9c254ca7c0f5c67349b2}{NNSTREAMER\_PREFIX\_TRAINER}},}
\DoxyCodeLine{  [\mbox{\hyperlink{nnstreamer__conf_8h_a3c6f5339d034106d2b6469b617755610a7c516ac8b1f831d43f4b83f3977e5b57}{NNSCONF\_PATH\_END}}] = NULL}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line 63 of file nnstreamer\+\_\+conf.\+c.

