\hypertarget{classnntrainer_1_1PermuteLayer}{}\doxysection{nntrainer\+::Permute\+Layer Class Reference}
\label{classnntrainer_1_1PermuteLayer}\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}


Permute layer to transpose a tensor.  




{\ttfamily \#include $<$permute\+\_\+layer.\+h$>$}



Inheritance diagram for nntrainer\+::Permute\+Layer\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=215pt]{classnntrainer_1_1PermuteLayer__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for nntrainer\+::Permute\+Layer\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=215pt]{classnntrainer_1_1PermuteLayer__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a886ac8e64c83061ecd4f6b80a893db29}{Permute\+Layer}} ()
\begin{DoxyCompactList}\small\item\em Constructor of Permute \mbox{\hyperlink{classLayer}{Layer}}. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_afb91558f15bf44b6d314cf8d671abf4a}\label{classnntrainer_1_1PermuteLayer_afb91558f15bf44b6d314cf8d671abf4a}} 
\mbox{\hyperlink{classnntrainer_1_1PermuteLayer_afb91558f15bf44b6d314cf8d671abf4a}{$\sim$\+Permute\+Layer}} ()=default
\begin{DoxyCompactList}\small\item\em Destructor of Permute \mbox{\hyperlink{classLayer}{Layer}}. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classnntrainer_1_1PermuteLayer_aa9edba447eed0416f719037ce6f8d2e3}{Permute\+Layer}} (\mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}} \&\&rhs) noexcept=default
\begin{DoxyCompactList}\small\item\em Move constructor. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}} \& \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a00f4e4034a83299c510884a6a57c1e5a}{operator=}} (\mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}} \&\&rhs)=default
\begin{DoxyCompactList}\small\item\em Move assignment operator. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a5670f823ceb153ae484da2b33f582063}{finalize}} (\mbox{\hyperlink{classnntrainer_1_1InitLayerContext}{Init\+Layer\+Context}} \&context) override
\item 
void \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a14015f01beeb360068ac3e4850400c9a}{forwarding}} (\mbox{\hyperlink{classnntrainer_1_1RunLayerContext}{Run\+Layer\+Context}} \&context, bool training) override
\item 
void \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a325b8fdca9fa626c73e56e515979646b}{calc\+Derivative}} (\mbox{\hyperlink{classnntrainer_1_1RunLayerContext}{Run\+Layer\+Context}} \&context) override
\item 
void \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_af35eb92c2d258ff51bf910115ad2953a}{export\+To}} (\mbox{\hyperlink{classnntrainer_1_1Exporter}{Exporter}} \&exporter, const ml\+::train\+::\+Export\+Methods \&method) const override
\item 
const std\+::string \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a5589b38e198099c96eeab5d3ca6cbf5b}{get\+Type}} () const override
\item 
bool \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a956935c406468922f7a8a795721b7c47}{support\+Backwarding}} () const override
\item 
void \mbox{\hyperlink{classnntrainer_1_1PermuteLayer_a5896196ede8b1cb96255563fce90b991}{set\+Property}} (const std\+::vector$<$ std\+::string $>$ \&values) override
\end{DoxyCompactItemize}
\doxysubsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_ad6e22ec341c1a4beb06f263c6b4489f5}\label{classnntrainer_1_1PermuteLayer_ad6e22ec341c1a4beb06f263c6b4489f5}} 
static const std\+::string {\bfseries type} = \char`\"{}permute\char`\"{}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Permute layer to transpose a tensor. 

Definition at line 50 of file permute\+\_\+layer.\+h.



\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a886ac8e64c83061ecd4f6b80a893db29}\label{classnntrainer_1_1PermuteLayer_a886ac8e64c83061ecd4f6b80a893db29}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!PermuteLayer@{PermuteLayer}}
\index{PermuteLayer@{PermuteLayer}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{PermuteLayer()}{PermuteLayer()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily nntrainer\+::\+Permute\+Layer\+::\+Permute\+Layer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Constructor of Permute \mbox{\hyperlink{classLayer}{Layer}}. 


\begin{DoxyParams}{Parameters}
{\em direction} & direction to permute \\
\hline
\end{DoxyParams}


Definition at line 56 of file permute\+\_\+layer.\+h.

\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_aa9edba447eed0416f719037ce6f8d2e3}\label{classnntrainer_1_1PermuteLayer_aa9edba447eed0416f719037ce6f8d2e3}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!PermuteLayer@{PermuteLayer}}
\index{PermuteLayer@{PermuteLayer}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{PermuteLayer()}{PermuteLayer()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily nntrainer\+::\+Permute\+Layer\+::\+Permute\+Layer (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}} \&\&}]{rhs }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}}



Move constructor. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em \mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}}} & \&\& \\
\hline
\end{DoxyParams}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a325b8fdca9fa626c73e56e515979646b}\label{classnntrainer_1_1PermuteLayer_a325b8fdca9fa626c73e56e515979646b}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!calcDerivative@{calcDerivative}}
\index{calcDerivative@{calcDerivative}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{calcDerivative()}{calcDerivative()}}
{\footnotesize\ttfamily void nntrainer\+::\+Permute\+Layer\+::calc\+Derivative (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classnntrainer_1_1RunLayerContext}{Run\+Layer\+Context}} \&}]{context }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}}







Definition at line 77 of file permute\+\_\+layer.\+cpp.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classnntrainer_1_1PermuteLayer_a325b8fdca9fa626c73e56e515979646b_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_af35eb92c2d258ff51bf910115ad2953a}\label{classnntrainer_1_1PermuteLayer_af35eb92c2d258ff51bf910115ad2953a}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!exportTo@{exportTo}}
\index{exportTo@{exportTo}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{exportTo()}{exportTo()}}
{\footnotesize\ttfamily void nntrainer\+::\+Permute\+Layer\+::export\+To (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classnntrainer_1_1Exporter}{Exporter}} \&}]{exporter,  }\item[{const ml\+::train\+::\+Export\+Methods \&}]{method }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [override]}}







Definition at line 84 of file permute\+\_\+layer.\+cpp.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classnntrainer_1_1PermuteLayer_af35eb92c2d258ff51bf910115ad2953a_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a5670f823ceb153ae484da2b33f582063}\label{classnntrainer_1_1PermuteLayer_a5670f823ceb153ae484da2b33f582063}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!finalize@{finalize}}
\index{finalize@{finalize}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{finalize()}{finalize()}}
{\footnotesize\ttfamily void nntrainer\+::\+Permute\+Layer\+::finalize (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classnntrainer_1_1InitLayerContext}{Init\+Layer\+Context}} \&}]{context }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}}





$<$ check if transpose contains all axis

Definition at line 46 of file permute\+\_\+layer.\+cpp.

\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a14015f01beeb360068ac3e4850400c9a}\label{classnntrainer_1_1PermuteLayer_a14015f01beeb360068ac3e4850400c9a}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!forwarding@{forwarding}}
\index{forwarding@{forwarding}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{forwarding()}{forwarding()}}
{\footnotesize\ttfamily void nntrainer\+::\+Permute\+Layer\+::forwarding (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classnntrainer_1_1RunLayerContext}{Run\+Layer\+Context}} \&}]{context,  }\item[{bool}]{training }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}}







Definition at line 70 of file permute\+\_\+layer.\+cpp.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classnntrainer_1_1PermuteLayer_a14015f01beeb360068ac3e4850400c9a_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a5589b38e198099c96eeab5d3ca6cbf5b}\label{classnntrainer_1_1PermuteLayer_a5589b38e198099c96eeab5d3ca6cbf5b}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!getType@{getType}}
\index{getType@{getType}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{getType()}{getType()}}
{\footnotesize\ttfamily const std\+::string nntrainer\+::\+Permute\+Layer\+::get\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}}







Definition at line 100 of file permute\+\_\+layer.\+h.

\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a00f4e4034a83299c510884a6a57c1e5a}\label{classnntrainer_1_1PermuteLayer_a00f4e4034a83299c510884a6a57c1e5a}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!operator=@{operator=}}
\index{operator=@{operator=}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}}\& nntrainer\+::\+Permute\+Layer\+::operator= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}} \&\&}]{rhs }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}}



Move assignment operator. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em rhs} & \mbox{\hyperlink{classnntrainer_1_1PermuteLayer}{Permute\+Layer}} to be moved. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a5896196ede8b1cb96255563fce90b991}\label{classnntrainer_1_1PermuteLayer_a5896196ede8b1cb96255563fce90b991}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!setProperty@{setProperty}}
\index{setProperty@{setProperty}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{setProperty()}{setProperty()}}
{\footnotesize\ttfamily void nntrainer\+::\+Permute\+Layer\+::set\+Property (\begin{DoxyParamCaption}\item[{const std\+::vector$<$ std\+::string $>$ \&}]{values }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}}







Definition at line 89 of file permute\+\_\+layer.\+cpp.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classnntrainer_1_1PermuteLayer_a5896196ede8b1cb96255563fce90b991_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{classnntrainer_1_1PermuteLayer_a956935c406468922f7a8a795721b7c47}\label{classnntrainer_1_1PermuteLayer_a956935c406468922f7a8a795721b7c47}} 
\index{nntrainer::PermuteLayer@{nntrainer::PermuteLayer}!supportBackwarding@{supportBackwarding}}
\index{supportBackwarding@{supportBackwarding}!nntrainer::PermuteLayer@{nntrainer::PermuteLayer}}
\doxysubsubsection{\texorpdfstring{supportBackwarding()}{supportBackwarding()}}
{\footnotesize\ttfamily bool nntrainer\+::\+Permute\+Layer\+::support\+Backwarding (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}}







Definition at line 105 of file permute\+\_\+layer.\+h.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
layers/\mbox{\hyperlink{permute__layer_8h}{permute\+\_\+layer.\+h}}\item 
layers/\mbox{\hyperlink{permute__layer_8cpp}{permute\+\_\+layer.\+cpp}}\end{DoxyCompactItemize}
