\hypertarget{tensor__query__server_8h}{}\doxysection{nnstreamer/tensor\+\_\+query/tensor\+\_\+query\+\_\+server.h File Reference}
\label{tensor__query__server_8h}\index{nnstreamer/tensor\_query/tensor\_query\_server.h@{nnstreamer/tensor\_query/tensor\_query\_server.h}}


G\+Streamer plugin to handle meta\+\_\+query for server elements.  


{\ttfamily \#include $<$gst/gst.\+h$>$}\newline
{\ttfamily \#include $<$tensor\+\_\+common.\+h$>$}\newline
{\ttfamily \#include $<$nnstreamer-\/edge.\+h$>$}\newline
{\ttfamily \#include \char`\"{}tensor\+\_\+meta.\+h\char`\"{}}\newline
Include dependency graph for tensor\+\_\+query\+\_\+server.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structGstTensorQueryEdgeInfo}{Gst\+Tensor\+Query\+Edge\+Info}}
\begin{DoxyCompactList}\small\item\em Internal data structure for nns-\/edge info to prepare edge connection. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}} internal info data structure. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{tensor__query__server_8h_a0ff9a709a4374667951fb31163003661}{D\+E\+F\+A\+U\+L\+T\+\_\+\+S\+E\+R\+V\+E\+R\+\_\+\+ID}}~0
\item 
\#define \mbox{\hyperlink{tensor__query__server_8h_abdd7b6dbd69d366a4f31edac81d3e34d}{D\+E\+F\+A\+U\+L\+T\+\_\+\+Q\+U\+E\+R\+Y\+\_\+\+I\+N\+F\+O\+\_\+\+T\+I\+M\+E\+O\+UT}}~5
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
gboolean \mbox{\hyperlink{tensor__query__server_8h_a2bb9c9ba651f1964b384fb939ba8dd20}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+add\+\_\+data}} (const guint id)
\begin{DoxyCompactList}\small\item\em Add \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}}. \end{DoxyCompactList}\item 
gboolean \mbox{\hyperlink{tensor__query__server_8h_a25e4ffcfcffa802afa2792988fa0314b}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+prepare}} (const guint id, nns\+\_\+edge\+\_\+connect\+\_\+type\+\_\+e connect\+\_\+type, \mbox{\hyperlink{structGstTensorQueryEdgeInfo}{Gst\+Tensor\+Query\+Edge\+Info}} $\ast$edge\+\_\+info)
\begin{DoxyCompactList}\small\item\em Prepare edge connection and its handle. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{tensor__query__server_8h_a600a54f1abcf0df37367fb64a6e4c774}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+remove\+\_\+data}} (const guint id)
\begin{DoxyCompactList}\small\item\em Remove \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}}. \end{DoxyCompactList}\item 
gboolean \mbox{\hyperlink{tensor__query__server_8h_a53c9bdfb8316883c606be4aa48e8e7d3}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+wait\+\_\+sink}} (const guint id)
\begin{DoxyCompactList}\small\item\em Wait until the sink is configured and get server info handle. \end{DoxyCompactList}\item 
gboolean \mbox{\hyperlink{tensor__query__server_8h_abac6c1652d58ba6707956225a0823916}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+send\+\_\+buffer}} (const guint id, Gst\+Buffer $\ast$buffer)
\begin{DoxyCompactList}\small\item\em Send buffer to connected edge device. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{tensor__query__server_8h_a0e5cc617f22b71f008dab05cb9aecede}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+set\+\_\+configured}} (const guint id)
\begin{DoxyCompactList}\small\item\em set query server sink configured. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{tensor__query__server_8h_a5014fd678ce5ac3a0efecc0ab6a8fe61}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+set\+\_\+caps}} (const guint id, const gchar $\ast$caps\+\_\+str)
\begin{DoxyCompactList}\small\item\em set query server caps. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{tensor__query__server_8h_accefa4614c0c5703612605fac2f867d3}{gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+release\+\_\+edge\+\_\+handle}} (const guint id)
\begin{DoxyCompactList}\small\item\em Release nnstreamer edge handle of query server. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
G\+Streamer plugin to handle meta\+\_\+query for server elements. 

Copyright (C) 2021 Samsung Electronics Co., Ltd.

\begin{DoxyDate}{Date}
03 Aug 2021 
\end{DoxyDate}
\begin{DoxyAuthor}{Author}
Junhwan Kim \href{mailto:jejudo.kim@samsung.com}{\texttt{ jejudo.\+kim@samsung.\+com}} 
\end{DoxyAuthor}
\begin{DoxySeeAlso}{See also}
\href{http://github.com/nnstreamer/nnstreamer}{\texttt{ http\+://github.\+com/nnstreamer/nnstreamer}} 
\end{DoxySeeAlso}
\begin{DoxyRefDesc}{Bug}
\item[\mbox{\hyperlink{bug__bug000119}{Bug}}]No known bugs\end{DoxyRefDesc}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{tensor__query__server_8h_abdd7b6dbd69d366a4f31edac81d3e34d}\label{tensor__query__server_8h_abdd7b6dbd69d366a4f31edac81d3e34d}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!DEFAULT\_QUERY\_INFO\_TIMEOUT@{DEFAULT\_QUERY\_INFO\_TIMEOUT}}
\index{DEFAULT\_QUERY\_INFO\_TIMEOUT@{DEFAULT\_QUERY\_INFO\_TIMEOUT}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{DEFAULT\_QUERY\_INFO\_TIMEOUT}{DEFAULT\_QUERY\_INFO\_TIMEOUT}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+Q\+U\+E\+R\+Y\+\_\+\+I\+N\+F\+O\+\_\+\+T\+I\+M\+E\+O\+UT~5}



Definition at line 23 of file tensor\+\_\+query\+\_\+server.\+h.

\mbox{\Hypertarget{tensor__query__server_8h_a0ff9a709a4374667951fb31163003661}\label{tensor__query__server_8h_a0ff9a709a4374667951fb31163003661}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!DEFAULT\_SERVER\_ID@{DEFAULT\_SERVER\_ID}}
\index{DEFAULT\_SERVER\_ID@{DEFAULT\_SERVER\_ID}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{DEFAULT\_SERVER\_ID}{DEFAULT\_SERVER\_ID}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+S\+E\+R\+V\+E\+R\+\_\+\+ID~0}



Definition at line 22 of file tensor\+\_\+query\+\_\+server.\+h.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{tensor__query__server_8h_a2bb9c9ba651f1964b384fb939ba8dd20}\label{tensor__query__server_8h_a2bb9c9ba651f1964b384fb939ba8dd20}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_add\_data@{gst\_tensor\_query\_server\_add\_data}}
\index{gst\_tensor\_query\_server\_add\_data@{gst\_tensor\_query\_server\_add\_data}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_add\_data()}{gst\_tensor\_query\_server\_add\_data()}}
{\footnotesize\ttfamily gboolean gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+add\+\_\+data (\begin{DoxyParamCaption}\item[{const guint}]{id }\end{DoxyParamCaption})}



Add \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}}. 

Add \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}}. 

Definition at line 77 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a2bb9c9ba651f1964b384fb939ba8dd20_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a2bb9c9ba651f1964b384fb939ba8dd20_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_a25e4ffcfcffa802afa2792988fa0314b}\label{tensor__query__server_8h_a25e4ffcfcffa802afa2792988fa0314b}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_prepare@{gst\_tensor\_query\_server\_prepare}}
\index{gst\_tensor\_query\_server\_prepare@{gst\_tensor\_query\_server\_prepare}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_prepare()}{gst\_tensor\_query\_server\_prepare()}}
{\footnotesize\ttfamily gboolean gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+prepare (\begin{DoxyParamCaption}\item[{const guint}]{id,  }\item[{nns\+\_\+edge\+\_\+connect\+\_\+type\+\_\+e}]{connect\+\_\+type,  }\item[{\mbox{\hyperlink{structGstTensorQueryEdgeInfo}{Gst\+Tensor\+Query\+Edge\+Info}} $\ast$}]{edge\+\_\+info }\end{DoxyParamCaption})}



Prepare edge connection and its handle. 



Definition at line 114 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a25e4ffcfcffa802afa2792988fa0314b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a25e4ffcfcffa802afa2792988fa0314b_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_accefa4614c0c5703612605fac2f867d3}\label{tensor__query__server_8h_accefa4614c0c5703612605fac2f867d3}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_release\_edge\_handle@{gst\_tensor\_query\_server\_release\_edge\_handle}}
\index{gst\_tensor\_query\_server\_release\_edge\_handle@{gst\_tensor\_query\_server\_release\_edge\_handle}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_release\_edge\_handle()}{gst\_tensor\_query\_server\_release\_edge\_handle()}}
{\footnotesize\ttfamily void gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+release\+\_\+edge\+\_\+handle (\begin{DoxyParamCaption}\item[{const guint}]{id }\end{DoxyParamCaption})}



Release nnstreamer edge handle of query server. 



Definition at line 258 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_accefa4614c0c5703612605fac2f867d3_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_accefa4614c0c5703612605fac2f867d3_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_a600a54f1abcf0df37367fb64a6e4c774}\label{tensor__query__server_8h_a600a54f1abcf0df37367fb64a6e4c774}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_remove\_data@{gst\_tensor\_query\_server\_remove\_data}}
\index{gst\_tensor\_query\_server\_remove\_data@{gst\_tensor\_query\_server\_remove\_data}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_remove\_data()}{gst\_tensor\_query\_server\_remove\_data()}}
{\footnotesize\ttfamily void gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+remove\+\_\+data (\begin{DoxyParamCaption}\item[{const guint}]{id }\end{DoxyParamCaption})}



Remove \mbox{\hyperlink{structGstTensorQueryServer}{Gst\+Tensor\+Query\+Server}}. 



Definition at line 280 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a600a54f1abcf0df37367fb64a6e4c774_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_abac6c1652d58ba6707956225a0823916}\label{tensor__query__server_8h_abac6c1652d58ba6707956225a0823916}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_send\_buffer@{gst\_tensor\_query\_server\_send\_buffer}}
\index{gst\_tensor\_query\_server\_send\_buffer@{gst\_tensor\_query\_server\_send\_buffer}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_send\_buffer()}{gst\_tensor\_query\_server\_send\_buffer()}}
{\footnotesize\ttfamily gboolean gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+send\+\_\+buffer (\begin{DoxyParamCaption}\item[{const guint}]{id,  }\item[{Gst\+Buffer $\ast$}]{buffer }\end{DoxyParamCaption})}



Send buffer to connected edge device. 



Definition at line 183 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_abac6c1652d58ba6707956225a0823916_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_abac6c1652d58ba6707956225a0823916_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_a5014fd678ce5ac3a0efecc0ab6a8fe61}\label{tensor__query__server_8h_a5014fd678ce5ac3a0efecc0ab6a8fe61}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_set\_caps@{gst\_tensor\_query\_server\_set\_caps}}
\index{gst\_tensor\_query\_server\_set\_caps@{gst\_tensor\_query\_server\_set\_caps}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_set\_caps()}{gst\_tensor\_query\_server\_set\_caps()}}
{\footnotesize\ttfamily void gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+set\+\_\+caps (\begin{DoxyParamCaption}\item[{const guint}]{id,  }\item[{const gchar $\ast$}]{caps\+\_\+str }\end{DoxyParamCaption})}



set query server caps. 



Definition at line 342 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a5014fd678ce5ac3a0efecc0ab6a8fe61_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a5014fd678ce5ac3a0efecc0ab6a8fe61_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_a0e5cc617f22b71f008dab05cb9aecede}\label{tensor__query__server_8h_a0e5cc617f22b71f008dab05cb9aecede}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_set\_configured@{gst\_tensor\_query\_server\_set\_configured}}
\index{gst\_tensor\_query\_server\_set\_configured@{gst\_tensor\_query\_server\_set\_configured}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_set\_configured()}{gst\_tensor\_query\_server\_set\_configured()}}
{\footnotesize\ttfamily void gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+set\+\_\+configured (\begin{DoxyParamCaption}\item[{const guint}]{id }\end{DoxyParamCaption})}



set query server sink configured. 



Definition at line 322 of file tensor\+\_\+query\+\_\+server.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a0e5cc617f22b71f008dab05cb9aecede_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{tensor__query__server_8h_a0e5cc617f22b71f008dab05cb9aecede_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tensor__query__server_8h_a53c9bdfb8316883c606be4aa48e8e7d3}\label{tensor__query__server_8h_a53c9bdfb8316883c606be4aa48e8e7d3}} 
\index{tensor\_query\_server.h@{tensor\_query\_server.h}!gst\_tensor\_query\_server\_wait\_sink@{gst\_tensor\_query\_server\_wait\_sink}}
\index{gst\_tensor\_query\_server\_wait\_sink@{gst\_tensor\_query\_server\_wait\_sink}!tensor\_query\_server.h@{tensor\_query\_server.h}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_query\_server\_wait\_sink()}{gst\_tensor\_query\_server\_wait\_sink()}}
{\footnotesize\ttfamily gboolean gst\+\_\+tensor\+\_\+query\+\_\+server\+\_\+wait\+\_\+sink (\begin{DoxyParamCaption}\item[{const guint}]{id }\end{DoxyParamCaption})}



Wait until the sink is configured and get server info handle. 



Definition at line 292 of file tensor\+\_\+query\+\_\+server.\+c.

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