\hypertarget{gsttensor__sparsedec_8c}{}\doxysection{nnstreamer/elements/gsttensor\+\_\+sparsedec.c File Reference}
\label{gsttensor__sparsedec_8c}\index{nnstreamer/elements/gsttensor\_sparsedec.c@{nnstreamer/elements/gsttensor\_sparsedec.c}}


G\+Streamer element to decode sparse tensors into dense tensors.  


{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$nnstreamer\+\_\+util.\+h$>$}\newline
{\ttfamily \#include \char`\"{}gsttensor\+\_\+sparsedec.\+h\char`\"{}}\newline
Include dependency graph for gsttensor\+\_\+sparsedec.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{gsttensor__sparsedec_8c_a49606be7356624568932ec81c0d429f4}{D\+BG}}~(!self-\/$>$silent)
\begin{DoxyCompactList}\small\item\em Macro for debug mode. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{gsttensor__sparsedec_8c_adef911caed7c65a1643062817f4a59d7}{G\+S\+T\+\_\+\+C\+A\+T\+\_\+\+D\+E\+F\+A\+U\+LT}}~gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+debug
\item 
\#define \mbox{\hyperlink{gsttensor__sparsedec_8c_a18d799dbbbb0fd0132807aa9bb7d9adf}{D\+E\+F\+A\+U\+L\+T\+\_\+\+S\+I\+L\+E\+NT}}~\mbox{\hyperlink{gsttensor__if_8c_a834713a9a17ec303f21e3dc4ecbe9161}{T\+R\+UE}}
\begin{DoxyCompactList}\small\item\em Flag to print minimized log. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{gsttensor__sparsedec_8c_ab49e16d2298b6fa5f6af8c7d914fb410}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+parent\+\_\+class}}~parent\+\_\+class
\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \{ \mbox{\hyperlink{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034ac37dda0da1a44e10c0504afeeb863f3c}{P\+R\+O\+P\+\_\+0}}, 
\mbox{\hyperlink{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034a707b785966c328fb5a6088b7879c7bb5}{P\+R\+O\+P\+\_\+\+S\+I\+L\+E\+NT}}
 \}
\begin{DoxyCompactList}\small\item\em tensor\+\_\+sparse\+\_\+dec properties \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{gsttensor__sparsedec_8c_a6c887d90a4c08aceb209ce3daecf24d7}{G\+S\+T\+\_\+\+D\+E\+B\+U\+G\+\_\+\+C\+A\+T\+E\+G\+O\+R\+Y\+\_\+\+S\+T\+A\+T\+IC}} (gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+debug)
\item 
\mbox{\hyperlink{gsttensor__sparsedec_8c_ac46e4122330539e57952b220975d3c02}{G\+\_\+\+D\+E\+F\+I\+N\+E\+\_\+\+T\+Y\+PE}} (\mbox{\hyperlink{gsttensor__sparsedec_8h_a5845a781a65d4cb48a647a0d7bc0d818}{Gst\+Tensor\+Sparse\+Dec}}, gst\+\_\+tensor\+\_\+sparse\+\_\+dec, G\+S\+T\+\_\+\+T\+Y\+P\+E\+\_\+\+E\+L\+E\+M\+E\+NT)
\item 
static void \mbox{\hyperlink{gsttensor__sparsedec_8c_ad5d51cb106fb6c563906517cc9549b56}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+finalize}} (G\+Object $\ast$object)
\begin{DoxyCompactList}\small\item\em Function to finalize instance. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{gsttensor__sparsedec_8c_adcc8e32b7efef2b75d913ff443a6e6f0}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+set\+\_\+property}} (G\+Object $\ast$object, guint prop\+\_\+id, const G\+Value $\ast$value, G\+Param\+Spec $\ast$pspec)
\begin{DoxyCompactList}\small\item\em Setter for tensor\+\_\+sparse\+\_\+dec properties. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{gsttensor__sparsedec_8c_af0e89ee5e34a7e0dfddbcbddb5ef96f3}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+get\+\_\+property}} (G\+Object $\ast$object, guint prop\+\_\+id, G\+Value $\ast$value, G\+Param\+Spec $\ast$pspec)
\begin{DoxyCompactList}\small\item\em Getter for tensor\+\_\+sparse\+\_\+dec properties. \end{DoxyCompactList}\item 
static Gst\+Flow\+Return \mbox{\hyperlink{gsttensor__sparsedec_8c_aaedca3e41a3a7fad89a22b50c2824393}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+chain}} (Gst\+Pad $\ast$pad, Gst\+Object $\ast$parent, Gst\+Buffer $\ast$buf)
\begin{DoxyCompactList}\small\item\em Internal function to transform the input buffer. \end{DoxyCompactList}\item 
static gboolean \mbox{\hyperlink{gsttensor__sparsedec_8c_a457d6331178f34d495266177d29d5442}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+sink\+\_\+event}} (Gst\+Pad $\ast$pad, Gst\+Object $\ast$parent, Gst\+Event $\ast$event)
\begin{DoxyCompactList}\small\item\em This function handles sink pad event. \end{DoxyCompactList}\item 
static gboolean \mbox{\hyperlink{gsttensor__sparsedec_8c_a5e585b10b0cab323b030c95ca31f3098}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+sink\+\_\+query}} (Gst\+Pad $\ast$pad, Gst\+Object $\ast$parent, Gst\+Query $\ast$query)
\begin{DoxyCompactList}\small\item\em This function handles sink pad query. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{gsttensor__sparsedec_8c_acda73f38ad8bce1481d77cdcfe45c10f}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+class\+\_\+init}} (\mbox{\hyperlink{gsttensor__sparsedec_8h_a5b4b59ed0227a9a09322e3fcd183bc49}{Gst\+Tensor\+Sparse\+Dec\+Class}} $\ast$klass)
\begin{DoxyCompactList}\small\item\em Initialize the tensor\+\_\+sparse\textquotesingle{}s class. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{gsttensor__sparsedec_8c_a3c9dbe31db74dee17573fea423e7e0bc}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+init}} (\mbox{\hyperlink{gsttensor__sparsedec_8h_a5845a781a65d4cb48a647a0d7bc0d818}{Gst\+Tensor\+Sparse\+Dec}} $\ast$self)
\begin{DoxyCompactList}\small\item\em Initialize tensor\+\_\+sparse\+\_\+dec element. \end{DoxyCompactList}\item 
static Gst\+Caps $\ast$ \mbox{\hyperlink{gsttensor__sparsedec_8c_aa63d614b81051ec843706f09f89ed4a7}{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+query\+\_\+caps}} (\mbox{\hyperlink{gsttensor__sparsedec_8h_a5845a781a65d4cb48a647a0d7bc0d818}{Gst\+Tensor\+Sparse\+Dec}} $\ast$self, Gst\+Pad $\ast$pad, Gst\+Caps $\ast$filter)
\begin{DoxyCompactList}\small\item\em Get pad caps for caps negotiation. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static Gst\+Static\+Pad\+Template \mbox{\hyperlink{gsttensor__sparsedec_8c_a26e2485c5fd610ac13e266fb32008cf7}{sink\+\_\+template}}
\begin{DoxyCompactList}\small\item\em Template for sink pad. \end{DoxyCompactList}\item 
static Gst\+Static\+Pad\+Template \mbox{\hyperlink{gsttensor__sparsedec_8c_a643731249f31c7864f3fb8d64d41a373}{src\+\_\+template}}
\begin{DoxyCompactList}\small\item\em Template for src pad. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
G\+Streamer element to decode sparse tensors into dense tensors. 

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

\begin{DoxyDate}{Date}
27 Jul 2021 
\end{DoxyDate}
\begin{DoxySeeAlso}{See also}
\href{https://github.com/nnstreamer/nnstreamer}{\texttt{ https\+://github.\+com/nnstreamer/nnstreamer}} 
\end{DoxySeeAlso}
\begin{DoxyAuthor}{Author}
Yongjoo Ahn \href{mailto:yongjoo1.ahn@samsung.com}{\texttt{ yongjoo1.\+ahn@samsung.\+com}} 
\end{DoxyAuthor}
\begin{DoxyRefDesc}{Bug}
\item[\mbox{\hyperlink{bug__bug000056}{Bug}}]No known bugs except for N\+YI items \end{DoxyRefDesc}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_a49606be7356624568932ec81c0d429f4}\label{gsttensor__sparsedec_8c_a49606be7356624568932ec81c0d429f4}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!DBG@{DBG}}
\index{DBG@{DBG}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{DBG}{DBG}}
{\footnotesize\ttfamily \#define D\+BG~(!self-\/$>$silent)}



Macro for debug mode. 

S\+E\+C\+T\+I\+ON\+:element-\/tensor\+\_\+sparse\+\_\+dec

tensor\+\_\+sparse\+\_\+dec is a G\+Streamer element to decode incoming sparse tensor into static (dense) format.

The input is always in the format of other/tensors,format=sparse. The output is always in the format of ohter/tensors,format=static.

Please see also tensor\+\_\+sparse\+\_\+enc.

$<$refsect2$>$ $<$title$>$Example launch line$<$/title$>$ $\vert$\mbox{[} gst-\/launch-\/1.\+0 ... ! other/tensors,format=static ! \textbackslash{} tensor\+\_\+sparse\+\_\+enc ! other/tensors,format=sparse ! \textbackslash{} tensor\+\_\+sparse\+\_\+dec ! tensor\+\_\+sink \mbox{]}$\vert$ $<$/refsect2$>$ 

Definition at line 45 of file gsttensor\+\_\+sparsedec.\+c.

\mbox{\Hypertarget{gsttensor__sparsedec_8c_a18d799dbbbb0fd0132807aa9bb7d9adf}\label{gsttensor__sparsedec_8c_a18d799dbbbb0fd0132807aa9bb7d9adf}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!DEFAULT\_SILENT@{DEFAULT\_SILENT}}
\index{DEFAULT\_SILENT@{DEFAULT\_SILENT}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{DEFAULT\_SILENT}{DEFAULT\_SILENT}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+S\+I\+L\+E\+NT~\mbox{\hyperlink{gsttensor__if_8c_a834713a9a17ec303f21e3dc4ecbe9161}{T\+R\+UE}}}



Flag to print minimized log. 



Definition at line 63 of file gsttensor\+\_\+sparsedec.\+c.

\mbox{\Hypertarget{gsttensor__sparsedec_8c_adef911caed7c65a1643062817f4a59d7}\label{gsttensor__sparsedec_8c_adef911caed7c65a1643062817f4a59d7}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!GST\_CAT\_DEFAULT@{GST\_CAT\_DEFAULT}}
\index{GST\_CAT\_DEFAULT@{GST\_CAT\_DEFAULT}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{GST\_CAT\_DEFAULT}{GST\_CAT\_DEFAULT}}
{\footnotesize\ttfamily \#define G\+S\+T\+\_\+\+C\+A\+T\+\_\+\+D\+E\+F\+A\+U\+LT~gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+debug}



Definition at line 49 of file gsttensor\+\_\+sparsedec.\+c.

\mbox{\Hypertarget{gsttensor__sparsedec_8c_ab49e16d2298b6fa5f6af8c7d914fb410}\label{gsttensor__sparsedec_8c_ab49e16d2298b6fa5f6af8c7d914fb410}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_parent\_class@{gst\_tensor\_sparse\_dec\_parent\_class}}
\index{gst\_tensor\_sparse\_dec\_parent\_class@{gst\_tensor\_sparse\_dec\_parent\_class}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_parent\_class}{gst\_tensor\_sparse\_dec\_parent\_class}}
{\footnotesize\ttfamily \#define gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+parent\+\_\+class~parent\+\_\+class}



Definition at line 81 of file gsttensor\+\_\+sparsedec.\+c.



\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034}\label{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034}} 
\doxysubsubsection{\texorpdfstring{anonymous enum}{anonymous enum}}
{\footnotesize\ttfamily anonymous enum}



tensor\+\_\+sparse\+\_\+dec properties 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{PROP\_0@{PROP\_0}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!PROP\_0@{PROP\_0}}}\mbox{\Hypertarget{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034ac37dda0da1a44e10c0504afeeb863f3c}\label{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034ac37dda0da1a44e10c0504afeeb863f3c}} 
P\+R\+O\+P\+\_\+0&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{PROP\_SILENT@{PROP\_SILENT}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!PROP\_SILENT@{PROP\_SILENT}}}\mbox{\Hypertarget{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034a707b785966c328fb5a6088b7879c7bb5}\label{gsttensor__sparsedec_8c_aac34dfe6c6b73b43a4656c9dce041034a707b785966c328fb5a6088b7879c7bb5}} 
P\+R\+O\+P\+\_\+\+S\+I\+L\+E\+NT&\\
\hline

\end{DoxyEnumFields}


Definition at line 54 of file gsttensor\+\_\+sparsedec.\+c.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_ac46e4122330539e57952b220975d3c02}\label{gsttensor__sparsedec_8c_ac46e4122330539e57952b220975d3c02}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!G\_DEFINE\_TYPE@{G\_DEFINE\_TYPE}}
\index{G\_DEFINE\_TYPE@{G\_DEFINE\_TYPE}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{G\_DEFINE\_TYPE()}{G\_DEFINE\_TYPE()}}
{\footnotesize\ttfamily G\+\_\+\+D\+E\+F\+I\+N\+E\+\_\+\+T\+Y\+PE (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{gsttensor__sparsedec_8h_a5845a781a65d4cb48a647a0d7bc0d818}{Gst\+Tensor\+Sparse\+Dec}}}]{,  }\item[{gst\+\_\+tensor\+\_\+sparse\+\_\+dec}]{,  }\item[{G\+S\+T\+\_\+\+T\+Y\+P\+E\+\_\+\+E\+L\+E\+M\+E\+NT}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gsttensor__sparsedec_8c_a6c887d90a4c08aceb209ce3daecf24d7}\label{gsttensor__sparsedec_8c_a6c887d90a4c08aceb209ce3daecf24d7}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!GST\_DEBUG\_CATEGORY\_STATIC@{GST\_DEBUG\_CATEGORY\_STATIC}}
\index{GST\_DEBUG\_CATEGORY\_STATIC@{GST\_DEBUG\_CATEGORY\_STATIC}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{GST\_DEBUG\_CATEGORY\_STATIC()}{GST\_DEBUG\_CATEGORY\_STATIC()}}
{\footnotesize\ttfamily G\+S\+T\+\_\+\+D\+E\+B\+U\+G\+\_\+\+C\+A\+T\+E\+G\+O\+R\+Y\+\_\+\+S\+T\+A\+T\+IC (\begin{DoxyParamCaption}\item[{gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+debug}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gsttensor__sparsedec_8c_aaedca3e41a3a7fad89a22b50c2824393}\label{gsttensor__sparsedec_8c_aaedca3e41a3a7fad89a22b50c2824393}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_chain@{gst\_tensor\_sparse\_dec\_chain}}
\index{gst\_tensor\_sparse\_dec\_chain@{gst\_tensor\_sparse\_dec\_chain}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_chain()}{gst\_tensor\_sparse\_dec\_chain()}}
{\footnotesize\ttfamily static Gst\+Flow\+Return gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+chain (\begin{DoxyParamCaption}\item[{Gst\+Pad $\ast$}]{pad,  }\item[{Gst\+Object $\ast$}]{parent,  }\item[{Gst\+Buffer $\ast$}]{buf }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Internal function to transform the input buffer. 

\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{todo__todo000031}{Todo}}]consider more error handling \end{DoxyRefDesc}


Definition at line 359 of file gsttensor\+\_\+sparsedec.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_aaedca3e41a3a7fad89a22b50c2824393_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_aaedca3e41a3a7fad89a22b50c2824393_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_acda73f38ad8bce1481d77cdcfe45c10f}\label{gsttensor__sparsedec_8c_acda73f38ad8bce1481d77cdcfe45c10f}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_class\_init@{gst\_tensor\_sparse\_dec\_class\_init}}
\index{gst\_tensor\_sparse\_dec\_class\_init@{gst\_tensor\_sparse\_dec\_class\_init}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_class\_init()}{gst\_tensor\_sparse\_dec\_class\_init()}}
{\footnotesize\ttfamily static void gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+class\+\_\+init (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{gsttensor__sparsedec_8h_a5b4b59ed0227a9a09322e3fcd183bc49}{Gst\+Tensor\+Sparse\+Dec\+Class}} $\ast$}]{klass }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Initialize the tensor\+\_\+sparse\textquotesingle{}s class. 

\mbox{\hyperlink{struct__GstTensorSparseDec_a07a7de385ecb153e645725a9152890ea}{Gst\+Tensor\+Sparse\+Dec\+::silent}}\+:

The flag to enable/disable debugging messages.

Definition at line 101 of file gsttensor\+\_\+sparsedec.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_acda73f38ad8bce1481d77cdcfe45c10f_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_ad5d51cb106fb6c563906517cc9549b56}\label{gsttensor__sparsedec_8c_ad5d51cb106fb6c563906517cc9549b56}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_finalize@{gst\_tensor\_sparse\_dec\_finalize}}
\index{gst\_tensor\_sparse\_dec\_finalize@{gst\_tensor\_sparse\_dec\_finalize}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_finalize()}{gst\_tensor\_sparse\_dec\_finalize()}}
{\footnotesize\ttfamily static void gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+finalize (\begin{DoxyParamCaption}\item[{G\+Object $\ast$}]{object }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Function to finalize instance. 



Definition at line 172 of file gsttensor\+\_\+sparsedec.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_ad5d51cb106fb6c563906517cc9549b56_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_ad5d51cb106fb6c563906517cc9549b56_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_af0e89ee5e34a7e0dfddbcbddb5ef96f3}\label{gsttensor__sparsedec_8c_af0e89ee5e34a7e0dfddbcbddb5ef96f3}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_get\_property@{gst\_tensor\_sparse\_dec\_get\_property}}
\index{gst\_tensor\_sparse\_dec\_get\_property@{gst\_tensor\_sparse\_dec\_get\_property}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_get\_property()}{gst\_tensor\_sparse\_dec\_get\_property()}}
{\footnotesize\ttfamily static void gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+get\+\_\+property (\begin{DoxyParamCaption}\item[{G\+Object $\ast$}]{object,  }\item[{guint}]{prop\+\_\+id,  }\item[{G\+Value $\ast$}]{value,  }\item[{G\+Param\+Spec $\ast$}]{pspec }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Getter for tensor\+\_\+sparse\+\_\+dec properties. 



Definition at line 208 of file gsttensor\+\_\+sparsedec.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_af0e89ee5e34a7e0dfddbcbddb5ef96f3_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_a3c9dbe31db74dee17573fea423e7e0bc}\label{gsttensor__sparsedec_8c_a3c9dbe31db74dee17573fea423e7e0bc}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_init@{gst\_tensor\_sparse\_dec\_init}}
\index{gst\_tensor\_sparse\_dec\_init@{gst\_tensor\_sparse\_dec\_init}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_init()}{gst\_tensor\_sparse\_dec\_init()}}
{\footnotesize\ttfamily static void gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+init (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{gsttensor__sparsedec_8h_a5845a781a65d4cb48a647a0d7bc0d818}{Gst\+Tensor\+Sparse\+Dec}} $\ast$}]{self }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Initialize tensor\+\_\+sparse\+\_\+dec element. 



Definition at line 141 of file gsttensor\+\_\+sparsedec.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_a3c9dbe31db74dee17573fea423e7e0bc_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_aa63d614b81051ec843706f09f89ed4a7}\label{gsttensor__sparsedec_8c_aa63d614b81051ec843706f09f89ed4a7}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_query\_caps@{gst\_tensor\_sparse\_dec\_query\_caps}}
\index{gst\_tensor\_sparse\_dec\_query\_caps@{gst\_tensor\_sparse\_dec\_query\_caps}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_query\_caps()}{gst\_tensor\_sparse\_dec\_query\_caps()}}
{\footnotesize\ttfamily static Gst\+Caps$\ast$ gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+query\+\_\+caps (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{gsttensor__sparsedec_8h_a5845a781a65d4cb48a647a0d7bc0d818}{Gst\+Tensor\+Sparse\+Dec}} $\ast$}]{self,  }\item[{Gst\+Pad $\ast$}]{pad,  }\item[{Gst\+Caps $\ast$}]{filter }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Get pad caps for caps negotiation. 

pad don\textquotesingle{}t have current caps. use the template caps

Definition at line 229 of file gsttensor\+\_\+sparsedec.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_aa63d614b81051ec843706f09f89ed4a7_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_adcc8e32b7efef2b75d913ff443a6e6f0}\label{gsttensor__sparsedec_8c_adcc8e32b7efef2b75d913ff443a6e6f0}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_set\_property@{gst\_tensor\_sparse\_dec\_set\_property}}
\index{gst\_tensor\_sparse\_dec\_set\_property@{gst\_tensor\_sparse\_dec\_set\_property}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_set\_property()}{gst\_tensor\_sparse\_dec\_set\_property()}}
{\footnotesize\ttfamily static void gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+set\+\_\+property (\begin{DoxyParamCaption}\item[{G\+Object $\ast$}]{object,  }\item[{guint}]{prop\+\_\+id,  }\item[{const G\+Value $\ast$}]{value,  }\item[{G\+Param\+Spec $\ast$}]{pspec }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Setter for tensor\+\_\+sparse\+\_\+dec properties. 



Definition at line 187 of file gsttensor\+\_\+sparsedec.\+c.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_adcc8e32b7efef2b75d913ff443a6e6f0_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_a457d6331178f34d495266177d29d5442}\label{gsttensor__sparsedec_8c_a457d6331178f34d495266177d29d5442}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_sink\_event@{gst\_tensor\_sparse\_dec\_sink\_event}}
\index{gst\_tensor\_sparse\_dec\_sink\_event@{gst\_tensor\_sparse\_dec\_sink\_event}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_sink\_event()}{gst\_tensor\_sparse\_dec\_sink\_event()}}
{\footnotesize\ttfamily static gboolean gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+sink\+\_\+event (\begin{DoxyParamCaption}\item[{Gst\+Pad $\ast$}]{pad,  }\item[{Gst\+Object $\ast$}]{parent,  }\item[{Gst\+Event $\ast$}]{event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



This function handles sink pad event. 



Definition at line 313 of file gsttensor\+\_\+sparsedec.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_a457d6331178f34d495266177d29d5442_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gsttensor__sparsedec_8c_a457d6331178f34d495266177d29d5442_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_a5e585b10b0cab323b030c95ca31f3098}\label{gsttensor__sparsedec_8c_a5e585b10b0cab323b030c95ca31f3098}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!gst\_tensor\_sparse\_dec\_sink\_query@{gst\_tensor\_sparse\_dec\_sink\_query}}
\index{gst\_tensor\_sparse\_dec\_sink\_query@{gst\_tensor\_sparse\_dec\_sink\_query}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{gst\_tensor\_sparse\_dec\_sink\_query()}{gst\_tensor\_sparse\_dec\_sink\_query()}}
{\footnotesize\ttfamily static gboolean gst\+\_\+tensor\+\_\+sparse\+\_\+dec\+\_\+sink\+\_\+query (\begin{DoxyParamCaption}\item[{Gst\+Pad $\ast$}]{pad,  }\item[{Gst\+Object $\ast$}]{parent,  }\item[{Gst\+Query $\ast$}]{query }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



This function handles sink pad query. 



Definition at line 260 of file gsttensor\+\_\+sparsedec.\+c.

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


\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{gsttensor__sparsedec_8c_a26e2485c5fd610ac13e266fb32008cf7}\label{gsttensor__sparsedec_8c_a26e2485c5fd610ac13e266fb32008cf7}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!sink\_template@{sink\_template}}
\index{sink\_template@{sink\_template}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{sink\_template}{sink\_template}}
{\footnotesize\ttfamily Gst\+Static\+Pad\+Template sink\+\_\+template\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= GST\_STATIC\_PAD\_TEMPLATE (\textcolor{stringliteral}{"sink"},}
\DoxyCodeLine{    GST\_PAD\_SINK,}
\DoxyCodeLine{    GST\_PAD\_ALWAYS,}
\DoxyCodeLine{    GST\_STATIC\_CAPS (\mbox{\hyperlink{tensor__typedef_8h_a21a07d818b9fe6dbee3cccdde72cc2e1}{GST\_TENSORS\_SPARSE\_CAP\_DEFAULT}}))}

\end{DoxyCode}


Template for sink pad. 



Definition at line 68 of file gsttensor\+\_\+sparsedec.\+c.

\mbox{\Hypertarget{gsttensor__sparsedec_8c_a643731249f31c7864f3fb8d64d41a373}\label{gsttensor__sparsedec_8c_a643731249f31c7864f3fb8d64d41a373}} 
\index{gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}!src\_template@{src\_template}}
\index{src\_template@{src\_template}!gsttensor\_sparsedec.c@{gsttensor\_sparsedec.c}}
\doxysubsubsection{\texorpdfstring{src\_template}{src\_template}}
{\footnotesize\ttfamily Gst\+Static\+Pad\+Template src\+\_\+template\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= GST\_STATIC\_PAD\_TEMPLATE (\textcolor{stringliteral}{"src"},}
\DoxyCodeLine{    GST\_PAD\_SRC,}
\DoxyCodeLine{    GST\_PAD\_ALWAYS,}
\DoxyCodeLine{    GST\_STATIC\_CAPS (\mbox{\hyperlink{tensor__typedef_8h_a439a25631e5849f93c9f1dcdc7c2baa5}{GST\_TENSORS\_CAP\_DEFAULT}}))}

\end{DoxyCode}


Template for src pad. 



Definition at line 76 of file gsttensor\+\_\+sparsedec.\+c.

