\hypertarget{nnstreamer__plugin__api__trainer_8h}{}\doxysection{nnstreamer/include/nnstreamer\+\_\+plugin\+\_\+api\+\_\+trainer.h File Reference}
\label{nnstreamer__plugin__api__trainer_8h}\index{nnstreamer/include/nnstreamer\_plugin\_api\_trainer.h@{nnstreamer/include/nnstreamer\_plugin\_api\_trainer.h}}


Mandatory A\+P\+Is for N\+N\+Streamer Trainer sub-\/plugins (No External Dependencies)  


{\ttfamily \#include \char`\"{}tensor\+\_\+typedef.\+h\char`\"{}}\newline
Include dependency graph for nnstreamer\+\_\+plugin\+\_\+api\+\_\+trainer.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=211pt]{nnstreamer__plugin__api__trainer_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=344pt]{nnstreamer__plugin__api__trainer_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__GstTensorTrainerProperties}{\+\_\+\+Gst\+Tensor\+Trainer\+Properties}}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s properties for neural network framework (internal data structure) \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{struct__GstTensorTrainerFrameworkInfo}{\+\_\+\+Gst\+Tensor\+Trainer\+Framework\+Info}}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s subplugin framework related information. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{struct__GstTensorTrainerEventNotifier}{\+\_\+\+Gst\+Tensor\+Trainer\+Event\+Notifier}}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s event notifier. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{struct__GstTensorTrainerFramework}{\+\_\+\+Gst\+Tensor\+Trainer\+Framework}}
\begin{DoxyCompactList}\small\item\em tensor\+\_\+trainer subplugin definition \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_aedfd1a467bf170ceae8e24bb8c40f21e}{G\+S\+T\+\_\+\+T\+E\+N\+S\+O\+R\+\_\+\+T\+R\+A\+I\+N\+E\+R\+\_\+\+F\+R\+A\+M\+E\+W\+O\+R\+K\+\_\+\+B\+A\+SE}}~(0x\+D\+E\+A\+F\+D\+E\+A\+D00000000\+U\+LL)
\item 
\#define \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac3021a3cea4740af60e4ca6216fb35c5}{G\+S\+T\+\_\+\+T\+E\+N\+S\+O\+R\+\_\+\+T\+R\+A\+I\+N\+E\+R\+\_\+\+F\+R\+A\+M\+E\+W\+O\+R\+K\+\_\+\+V1}}~(\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_aedfd1a467bf170ceae8e24bb8c40f21e}{G\+S\+T\+\_\+\+T\+E\+N\+S\+O\+R\+\_\+\+T\+R\+A\+I\+N\+E\+R\+\_\+\+F\+R\+A\+M\+E\+W\+O\+R\+K\+\_\+\+B\+A\+SE}} $\vert$ 0x10000\+U\+LL)
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \mbox{\hyperlink{struct__GstTensorTrainerProperties}{\+\_\+\+Gst\+Tensor\+Trainer\+Properties}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a2608a46bb1180136135ced9a29eb822d}{Gst\+Tensor\+Trainer\+Properties}}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s properties for neural network framework (internal data structure) \end{DoxyCompactList}\item 
typedef struct \mbox{\hyperlink{struct__GstTensorTrainerFrameworkInfo}{\+\_\+\+Gst\+Tensor\+Trainer\+Framework\+Info}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a121d1de3b7c8eb3a30176afff0bf3dec}{Gst\+Tensor\+Trainer\+Framework\+Info}}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s subplugin framework related information. \end{DoxyCompactList}\item 
typedef struct \mbox{\hyperlink{struct__GstTensorTrainerFramework}{\+\_\+\+Gst\+Tensor\+Trainer\+Framework}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}{Gst\+Tensor\+Trainer\+Framework}}
\item 
typedef struct \mbox{\hyperlink{struct__GstTensorTrainerEventNotifier}{\+\_\+\+Gst\+Tensor\+Trainer\+Event\+Notifier}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a7fb58afa4d009e4e4fd4fd96919e79cf}{Gst\+Tensor\+Trainer\+Event\+Notifier}}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s event notifier. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577}{Gst\+Tensor\+Trainer\+Event\+Type}} \{ \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a69b89d07d43f8602dec6d2987d199342}{T\+R\+A\+I\+N\+E\+R\+\_\+\+E\+V\+E\+N\+T\+\_\+\+E\+P\+O\+C\+H\+\_\+\+C\+O\+M\+P\+L\+E\+T\+I\+ON}}, 
\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a164b190e803c8c465b21103b0f305e9a}{T\+R\+A\+I\+N\+E\+R\+\_\+\+E\+V\+E\+N\+T\+\_\+\+T\+R\+A\+I\+N\+I\+N\+G\+\_\+\+C\+O\+M\+P\+L\+E\+T\+I\+ON}}, 
\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a506872a61c30ab72c6c346b97489a950}{T\+R\+A\+I\+N\+E\+R\+\_\+\+E\+V\+E\+N\+T\+\_\+\+U\+N\+K\+N\+O\+WN}}
 \}
\begin{DoxyCompactList}\small\item\em Gst\+Tensor\+Trainer\textquotesingle{}s event type list. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a9622abd6aa52d8a47e5805b148761c23}{nnstreamer\+\_\+trainer\+\_\+probe}} (\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}{Gst\+Tensor\+Trainer\+Framework}} $\ast$ttsp)
\begin{DoxyCompactList}\small\item\em Trainer\textquotesingle{}s sub-\/plugin should call this function to register itself. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ae98653dc4018274cb466a41b27d61f0d}{nnstreamer\+\_\+trainer\+\_\+exit}} (\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}{Gst\+Tensor\+Trainer\+Framework}} $\ast$ttsp)
\begin{DoxyCompactList}\small\item\em Trainer\textquotesingle{}s sub-\/plugin may call this to unregister itself. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a683339281e8aad384c51c502b2e3f438}{nnstreamer\+\_\+trainer\+\_\+notify\+\_\+event}} (\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a7fb58afa4d009e4e4fd4fd96919e79cf}{Gst\+Tensor\+Trainer\+Event\+Notifier}} $\ast$notifier, \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577}{Gst\+Tensor\+Trainer\+Event\+Type}} \mbox{\hyperlink{gsttensor__if_8c_ae3c4ba0b643db0fa0b5b96496abd1803}{type}}, void $\ast$\mbox{\hyperlink{gsttensor__if_8c_a3c9cc8d6e8da85fef51da4c7115b97f6}{data}})
\begin{DoxyCompactList}\small\item\em Trainer\textquotesingle{}s sub-\/plugin call this to notify event. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Mandatory A\+P\+Is for N\+N\+Streamer Trainer sub-\/plugins (No External Dependencies) 

N\+N\+Streamer A\+PI for Tensor\+\_\+\+Trainer Sub-\/\+Plugins Copyright (C) 2022 Hyunil Park \href{mailto:hyunil46.park@samsung.com}{\texttt{ hyunil46.\+park@samsung.\+com}}

\begin{DoxyDate}{Date}
1 Dec 2022 
\end{DoxyDate}
\begin{DoxySeeAlso}{See also}
\href{https://github.com/nnstreamer/nnstreamer}{\texttt{ https\+://github.\+com/nnstreamer/nnstreamer}} 
\end{DoxySeeAlso}
\begin{DoxyAuthor}{Author}
Hyunil Park \href{mailto:hyunil46.park@samsung.com}{\texttt{ hyunil46.\+park@samsung.\+com}} 
\end{DoxyAuthor}
\begin{DoxyRefDesc}{Bug}
\item[\mbox{\hyperlink{bug__bug000076}{Bug}}]No known bugs except for N\+YI items \end{DoxyRefDesc}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_aedfd1a467bf170ceae8e24bb8c40f21e}\label{nnstreamer__plugin__api__trainer_8h_aedfd1a467bf170ceae8e24bb8c40f21e}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GST\_TENSOR\_TRAINER\_FRAMEWORK\_BASE@{GST\_TENSOR\_TRAINER\_FRAMEWORK\_BASE}}
\index{GST\_TENSOR\_TRAINER\_FRAMEWORK\_BASE@{GST\_TENSOR\_TRAINER\_FRAMEWORK\_BASE}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GST\_TENSOR\_TRAINER\_FRAMEWORK\_BASE}{GST\_TENSOR\_TRAINER\_FRAMEWORK\_BASE}}
{\footnotesize\ttfamily \#define G\+S\+T\+\_\+\+T\+E\+N\+S\+O\+R\+\_\+\+T\+R\+A\+I\+N\+E\+R\+\_\+\+F\+R\+A\+M\+E\+W\+O\+R\+K\+\_\+\+B\+A\+SE~(0x\+D\+E\+A\+F\+D\+E\+A\+D00000000\+U\+LL)}



Definition at line 19 of file nnstreamer\+\_\+plugin\+\_\+api\+\_\+trainer.\+h.

\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_ac3021a3cea4740af60e4ca6216fb35c5}\label{nnstreamer__plugin__api__trainer_8h_ac3021a3cea4740af60e4ca6216fb35c5}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GST\_TENSOR\_TRAINER\_FRAMEWORK\_V1@{GST\_TENSOR\_TRAINER\_FRAMEWORK\_V1}}
\index{GST\_TENSOR\_TRAINER\_FRAMEWORK\_V1@{GST\_TENSOR\_TRAINER\_FRAMEWORK\_V1}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GST\_TENSOR\_TRAINER\_FRAMEWORK\_V1}{GST\_TENSOR\_TRAINER\_FRAMEWORK\_V1}}
{\footnotesize\ttfamily \#define G\+S\+T\+\_\+\+T\+E\+N\+S\+O\+R\+\_\+\+T\+R\+A\+I\+N\+E\+R\+\_\+\+F\+R\+A\+M\+E\+W\+O\+R\+K\+\_\+\+V1~(\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_aedfd1a467bf170ceae8e24bb8c40f21e}{G\+S\+T\+\_\+\+T\+E\+N\+S\+O\+R\+\_\+\+T\+R\+A\+I\+N\+E\+R\+\_\+\+F\+R\+A\+M\+E\+W\+O\+R\+K\+\_\+\+B\+A\+SE}} $\vert$ 0x10000\+U\+LL)}



Definition at line 20 of file nnstreamer\+\_\+plugin\+\_\+api\+\_\+trainer.\+h.



\doxysubsection{Typedef Documentation}
\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a7fb58afa4d009e4e4fd4fd96919e79cf}\label{nnstreamer__plugin__api__trainer_8h_a7fb58afa4d009e4e4fd4fd96919e79cf}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GstTensorTrainerEventNotifier@{GstTensorTrainerEventNotifier}}
\index{GstTensorTrainerEventNotifier@{GstTensorTrainerEventNotifier}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GstTensorTrainerEventNotifier}{GstTensorTrainerEventNotifier}}
{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{struct__GstTensorTrainerEventNotifier}{\+\_\+\+Gst\+Tensor\+Trainer\+Event\+Notifier}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a7fb58afa4d009e4e4fd4fd96919e79cf}{Gst\+Tensor\+Trainer\+Event\+Notifier}}}



Gst\+Tensor\+Trainer\textquotesingle{}s event notifier. 

Subplugins must send events to tensor\+\_\+trainer with a notifier. \mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}\label{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GstTensorTrainerFramework@{GstTensorTrainerFramework}}
\index{GstTensorTrainerFramework@{GstTensorTrainerFramework}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GstTensorTrainerFramework}{GstTensorTrainerFramework}}
{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{struct__GstTensorTrainerFramework}{\+\_\+\+Gst\+Tensor\+Trainer\+Framework}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}{Gst\+Tensor\+Trainer\+Framework}}}



Definition at line 60 of file nnstreamer\+\_\+plugin\+\_\+api\+\_\+trainer.\+h.

\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a121d1de3b7c8eb3a30176afff0bf3dec}\label{nnstreamer__plugin__api__trainer_8h_a121d1de3b7c8eb3a30176afff0bf3dec}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GstTensorTrainerFrameworkInfo@{GstTensorTrainerFrameworkInfo}}
\index{GstTensorTrainerFrameworkInfo@{GstTensorTrainerFrameworkInfo}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GstTensorTrainerFrameworkInfo}{GstTensorTrainerFrameworkInfo}}
{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{struct__GstTensorTrainerFrameworkInfo}{\+\_\+\+Gst\+Tensor\+Trainer\+Framework\+Info}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a121d1de3b7c8eb3a30176afff0bf3dec}{Gst\+Tensor\+Trainer\+Framework\+Info}}}



Gst\+Tensor\+Trainer\textquotesingle{}s subplugin framework related information. 

All the information is provided statically. \mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a2608a46bb1180136135ced9a29eb822d}\label{nnstreamer__plugin__api__trainer_8h_a2608a46bb1180136135ced9a29eb822d}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GstTensorTrainerProperties@{GstTensorTrainerProperties}}
\index{GstTensorTrainerProperties@{GstTensorTrainerProperties}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GstTensorTrainerProperties}{GstTensorTrainerProperties}}
{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{struct__GstTensorTrainerProperties}{\+\_\+\+Gst\+Tensor\+Trainer\+Properties}} \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a2608a46bb1180136135ced9a29eb822d}{Gst\+Tensor\+Trainer\+Properties}}}



Gst\+Tensor\+Trainer\textquotesingle{}s properties for neural network framework (internal data structure) 

Internal data of Gst\+Tensor\+Trainer required by tensor\+\_\+trainer\textquotesingle{}s custom subplugin. 

\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577}\label{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!GstTensorTrainerEventType@{GstTensorTrainerEventType}}
\index{GstTensorTrainerEventType@{GstTensorTrainerEventType}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{GstTensorTrainerEventType}{GstTensorTrainerEventType}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577}{Gst\+Tensor\+Trainer\+Event\+Type}}}



Gst\+Tensor\+Trainer\textquotesingle{}s event type list. 

Event types that subplugins must send to tensor\+\_\+trainer \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{TRAINER\_EVENT\_EPOCH\_COMPLETION@{TRAINER\_EVENT\_EPOCH\_COMPLETION}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!TRAINER\_EVENT\_EPOCH\_COMPLETION@{TRAINER\_EVENT\_EPOCH\_COMPLETION}}}\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a69b89d07d43f8602dec6d2987d199342}\label{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a69b89d07d43f8602dec6d2987d199342}} 
T\+R\+A\+I\+N\+E\+R\+\_\+\+E\+V\+E\+N\+T\+\_\+\+E\+P\+O\+C\+H\+\_\+\+C\+O\+M\+P\+L\+E\+T\+I\+ON&one epoch is complete in subplugin \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{TRAINER\_EVENT\_TRAINING\_COMPLETION@{TRAINER\_EVENT\_TRAINING\_COMPLETION}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!TRAINER\_EVENT\_TRAINING\_COMPLETION@{TRAINER\_EVENT\_TRAINING\_COMPLETION}}}\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a164b190e803c8c465b21103b0f305e9a}\label{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a164b190e803c8c465b21103b0f305e9a}} 
T\+R\+A\+I\+N\+E\+R\+\_\+\+E\+V\+E\+N\+T\+\_\+\+T\+R\+A\+I\+N\+I\+N\+G\+\_\+\+C\+O\+M\+P\+L\+E\+T\+I\+ON&training is complete in subplugin \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{TRAINER\_EVENT\_UNKNOWN@{TRAINER\_EVENT\_UNKNOWN}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!TRAINER\_EVENT\_UNKNOWN@{TRAINER\_EVENT\_UNKNOWN}}}\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a506872a61c30ab72c6c346b97489a950}\label{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577a506872a61c30ab72c6c346b97489a950}} 
T\+R\+A\+I\+N\+E\+R\+\_\+\+E\+V\+E\+N\+T\+\_\+\+U\+N\+K\+N\+O\+WN&unknown event \\
\hline

\end{DoxyEnumFields}


Definition at line 67 of file nnstreamer\+\_\+plugin\+\_\+api\+\_\+trainer.\+h.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_ae98653dc4018274cb466a41b27d61f0d}\label{nnstreamer__plugin__api__trainer_8h_ae98653dc4018274cb466a41b27d61f0d}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!nnstreamer\_trainer\_exit@{nnstreamer\_trainer\_exit}}
\index{nnstreamer\_trainer\_exit@{nnstreamer\_trainer\_exit}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{nnstreamer\_trainer\_exit()}{nnstreamer\_trainer\_exit()}}
{\footnotesize\ttfamily int nnstreamer\+\_\+trainer\+\_\+exit (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}{Gst\+Tensor\+Trainer\+Framework}} $\ast$}]{ttsp }\end{DoxyParamCaption})}



Trainer\textquotesingle{}s sub-\/plugin may call this to unregister itself. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em ttsp} & tensor\+\_\+trainer sub-\/plugin to be unregistered. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
T\+R\+UE if unregistered. F\+A\+L\+SE is failed. 
\end{DoxyReturn}


Definition at line 1398 of file gsttensor\+\_\+trainer.\+c.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{nnstreamer__plugin__api__trainer_8h_ae98653dc4018274cb466a41b27d61f0d_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a683339281e8aad384c51c502b2e3f438}\label{nnstreamer__plugin__api__trainer_8h_a683339281e8aad384c51c502b2e3f438}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!nnstreamer\_trainer\_notify\_event@{nnstreamer\_trainer\_notify\_event}}
\index{nnstreamer\_trainer\_notify\_event@{nnstreamer\_trainer\_notify\_event}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{nnstreamer\_trainer\_notify\_event()}{nnstreamer\_trainer\_notify\_event()}}
{\footnotesize\ttfamily void nnstreamer\+\_\+trainer\+\_\+notify\+\_\+event (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a7fb58afa4d009e4e4fd4fd96919e79cf}{Gst\+Tensor\+Trainer\+Event\+Notifier}} $\ast$}]{notifier,  }\item[{\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_a77debe11c1cb2e7c6679aa31141f8577}{Gst\+Tensor\+Trainer\+Event\+Type}}}]{type,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Trainer\textquotesingle{}s sub-\/plugin call this to notify event. 


\begin{DoxyParams}{Parameters}
{\em notifier} & sub-\/plugin must send events to tensor\+\_\+trainer with a notifier. \\
\hline
{\em type} & Event types that subplugins must send to tensor\+\_\+trainer \\
\hline
{\em data} & Optional data for the event\\
\hline
\end{DoxyParams}
Trainer\textquotesingle{}s sub-\/plugin call this to notify event.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em notifier} & event notifier, sub-\/plugin must send events with this. \\
\hline
\mbox{\texttt{ in}}  & {\em type} & event type \\
\hline
\end{DoxyParams}


Definition at line 1425 of file gsttensor\+\_\+trainer.\+c.

\mbox{\Hypertarget{nnstreamer__plugin__api__trainer_8h_a9622abd6aa52d8a47e5805b148761c23}\label{nnstreamer__plugin__api__trainer_8h_a9622abd6aa52d8a47e5805b148761c23}} 
\index{nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}!nnstreamer\_trainer\_probe@{nnstreamer\_trainer\_probe}}
\index{nnstreamer\_trainer\_probe@{nnstreamer\_trainer\_probe}!nnstreamer\_plugin\_api\_trainer.h@{nnstreamer\_plugin\_api\_trainer.h}}
\doxysubsubsection{\texorpdfstring{nnstreamer\_trainer\_probe()}{nnstreamer\_trainer\_probe()}}
{\footnotesize\ttfamily int nnstreamer\+\_\+trainer\+\_\+probe (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{nnstreamer__plugin__api__trainer_8h_ac349cd79cfa1849ccec1b439cf4178d4}{Gst\+Tensor\+Trainer\+Framework}} $\ast$}]{ttsp }\end{DoxyParamCaption})}



Trainer\textquotesingle{}s sub-\/plugin should call this function to register itself. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em ttsp} & tensor\+\_\+trainer sub-\/plugin to be registered. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
T\+R\+UE if registered. F\+A\+L\+SE is failed.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
Do not change the subplugins callbacks after probing the filter.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em ttsp} & tensor\+\_\+trainer sub-\/plugin to be registered. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
T\+R\+UE if registered. F\+A\+L\+SE is failed or duplicated. 
\end{DoxyReturn}


Definition at line 1371 of file gsttensor\+\_\+trainer.\+c.

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