\hypertarget{layer__node_8h}{}\doxysection{layers/layer\+\_\+node.h File Reference}
\label{layer__node_8h}\index{layers/layer\_node.h@{layers/layer\_node.h}}


This is the layer node for network graph.  


{\ttfamily \#include $<$memory$>$}\newline
{\ttfamily \#include $<$tuple$>$}\newline
{\ttfamily \#include $<$vector$>$}\newline
{\ttfamily \#include $<$graph\+\_\+node.\+h$>$}\newline
{\ttfamily \#include $<$layer.\+h$>$}\newline
{\ttfamily \#include $<$layer\+\_\+context.\+h$>$}\newline
{\ttfamily \#include $<$layer\+\_\+devel.\+h$>$}\newline
{\ttfamily \#include $<$weight.\+h$>$}\newline
Include dependency graph for layer\+\_\+node.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{layer__node_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]{layer__node_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \mbox{\hyperlink{classnntrainer_1_1LayerNode}{nntrainer\+::\+Layer\+Node}}
\begin{DoxyCompactList}\small\item\em layer node class for the graph \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
 \mbox{\hyperlink{namespacenntrainer}{nntrainer}}
\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{namespacenntrainer_ac07577ef715522b25f33e1ae1c2f317e}{nntrainer\+::\+In\+Place}} \{ \mbox{\hyperlink{namespacenntrainer_ac07577ef715522b25f33e1ae1c2f317eab50339a10e1de285ac99d4c3990b8693}{nntrainer\+::\+In\+Place\+::\+N\+O\+NE}}, 
\mbox{\hyperlink{namespacenntrainer_ac07577ef715522b25f33e1ae1c2f317ea5e6e2c7f119226111e052ea81d59effe}{nntrainer\+::\+In\+Place\+::\+R\+E\+S\+T\+R\+I\+C\+T\+I\+NG}}, 
\mbox{\hyperlink{namespacenntrainer_ac07577ef715522b25f33e1ae1c2f317eae74dc5e1f6b6b101e21fd764685eba5b}{nntrainer\+::\+In\+Place\+::\+N\+O\+N\+\_\+\+R\+E\+S\+T\+R\+I\+C\+T\+I\+NG}}
 \}
\begin{DoxyCompactList}\small\item\em Enum class for the various types of inplace modes supported by layer. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
std\+::unique\+\_\+ptr$<$ Layer\+Node $>$ \mbox{\hyperlink{namespacenntrainer_a04be82378b46e79b499cceeeb2dd48d5}{nntrainer\+::create\+Layer\+Node}} (const ml\+::train\+::\+Layer\+Type \&type, const std\+::vector$<$ std\+::string $>$ \&properties)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{classLayer}{Layer}} factory creator with constructor. \end{DoxyCompactList}\item 
std\+::unique\+\_\+ptr$<$ Layer\+Node $>$ \mbox{\hyperlink{namespacenntrainer_a51a272801b52c00849e47687e1e05df2}{nntrainer\+::create\+Layer\+Node}} (const std\+::string \&type, const std\+::vector$<$ std\+::string $>$ \&properties)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{classLayer}{Layer}} factory creator with constructor. \end{DoxyCompactList}\item 
std\+::unique\+\_\+ptr$<$ Layer\+Node $>$ \mbox{\hyperlink{namespacenntrainer_ab80b39d88a067bf48ad3d990eb973827}{nntrainer\+::create\+Layer\+Node}} (std\+::unique\+\_\+ptr$<$ nntrainer\+::\+Layer $>$ \&\&layer, const std\+::vector$<$ std\+::string $>$ \&properties)
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{classLayer}{Layer}} factory creator with constructor. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
This is the layer node for network graph. 

Copyright (C) 2021 Parichay Kapoor \href{mailto:pk.kapoor@samsung.com}{\texttt{ pk.\+kapoor@samsung.\+com}}

\begin{DoxyDate}{Date}
1 April 2021 
\end{DoxyDate}
\begin{DoxySeeAlso}{See also}
\href{https://github.com/nnstreamer/nntrainer}{\texttt{ https\+://github.\+com/nnstreamer/nntrainer}} 
\end{DoxySeeAlso}
\begin{DoxyAuthor}{Author}
Parichay Kapoor \href{mailto:pk.kapoor@samsung.com}{\texttt{ pk.\+kapoor@samsung.\+com}} 
\end{DoxyAuthor}
\begin{DoxyRefDesc}{Bug}
\item[\mbox{\hyperlink{bug__bug000105}{Bug}}]No known bugs except for N\+YI items \end{DoxyRefDesc}
\begin{DoxyRefDesc}{Todo}
\item[\mbox{\hyperlink{todo__todo000078}{Todo}}]Add print\+Preset support\end{DoxyRefDesc}


Layer\+Node provides a node wrapper around the \mbox{\hyperlink{classLayer}{Layer}} class to form a Graph\+Node. Each layer is wrapped with Layer\+Node in order to add it to a graph. Each Layer\+Node contains only 1 layer inside. Layer\+Node also intercepts certain properties of the layer which are either related to graph related connections (input\+\_\+connections, output\+\_\+connections, activation, flatten, distribute, name) or essential for the description of the layer (trainable, input\+\_\+dims) itself. These properties, if needed by the layer object, are provided access to via Layer\+Context. 