\hypertarget{namespaceutl_1_1in__dev__details}{}\section{utl\+:\+:in\+\_\+dev\+\_\+details Namespace Reference}
\label{namespaceutl_1_1in__dev__details}\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structutl_1_1in__dev__details_1_1is__in__dev__}{is\+\_\+in\+\_\+dev\+\_\+}}
\begin{DoxyCompactList}\small\item\em Primary template to catch any non input device types. \end{DoxyCompactList}\item 
struct \mbox{\hyperlink{structutl_1_1in__dev__details_1_1is__in__dev___3_01___tp_00_01void__t_3_01typename_01___tp_1_1dad922a62deb7c32e2cff18d66b8c887d2}{is\+\_\+in\+\_\+dev\+\_\+$<$ \+\_\+\+Tp, void\+\_\+t$<$ typename \+\_\+\+Tp\+::data\+\_\+type, typename \+\_\+\+Tp\+::pointer\+\_\+type, typename \+\_\+\+Tp\+::iterator, typename \+\_\+\+Tp\+::const\+\_\+iterator, use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+get1\+\_\+t$<$ \+\_\+\+Tp $>$, size\+\_\+t $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+get2\+\_\+t$<$ \+\_\+\+Tp $>$, size\+\_\+t $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+begin\+\_\+t$<$ \+\_\+\+Tp $>$, typename \+\_\+\+Tp\+::iterator $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ tryc\+\_\+begin\+\_\+t$<$ \+\_\+\+Tp $>$, typename \+\_\+\+Tp\+::const\+\_\+iterator $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+cbegin\+\_\+t$<$ \+\_\+\+Tp $>$, typename \+\_\+\+Tp\+::const\+\_\+iterator $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+end\+\_\+t$<$ \+\_\+\+Tp $>$, typename \+\_\+\+Tp\+::iterator $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ tryc\+\_\+end\+\_\+t$<$ \+\_\+\+Tp $>$, typename \+\_\+\+Tp\+::const\+\_\+iterator $>$, use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+cend\+\_\+t$<$ \+\_\+\+Tp $>$, typename \+\_\+\+Tp\+::const\+\_\+iterator $>$ $>$ $>$}}
\begin{DoxyCompactList}\small\item\em template to catch a proper input device type \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_a560eec1b326b0f6b91fa96f64f15ef61}{try\+\_\+get1\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().\mbox{\hyperlink{namespaceutl_a29057d2e164fe6dd3f3095f0d69c6546}{get}}(declval$<$ typename \+\_\+\+Tp\+::data\+\_\+type \& $>$()))
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_ae11bccc2282ed8f2aaac67687d756167}{try\+\_\+get2\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().\mbox{\hyperlink{namespaceutl_a29057d2e164fe6dd3f3095f0d69c6546}{get}}(declval$<$ typename \+\_\+\+Tp\+::data\+\_\+type $\ast$ $>$(), declval$<$ \mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} $>$()))
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_af790d5cec9db9f80cc8d67e9755e823e}{try\+\_\+begin\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().begin())
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_af7cb4a98688e65b04793cef145a90202}{tryc\+\_\+begin\+\_\+t}} = decltype(declval$<$ const \+\_\+\+Tp $>$().begin())
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_a857d70a4119a4ff5615141d68e59ba7b}{try\+\_\+cbegin\+\_\+t}} = decltype(declval$<$ const \+\_\+\+Tp $>$().cbegin())
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_acc72ca7012e26a9a0de8b08047dc9de8}{try\+\_\+end\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().begin())
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_ad2dad6ed501b94ba1fa9cffade343762}{tryc\+\_\+end\+\_\+t}} = decltype(declval$<$ const \+\_\+\+Tp $>$().begin())
\item 
{\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_ab268028c81d5385f19bbeb0c978ec9b2}{try\+\_\+cend\+\_\+t}} = decltype(declval$<$ const \+\_\+\+Tp $>$().cend())
\end{DoxyCompactItemize}


\subsection{Typedef Documentation}
\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_af790d5cec9db9f80cc8d67e9755e823e}\label{namespaceutl_1_1in__dev__details_af790d5cec9db9f80cc8d67e9755e823e}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!try\+\_\+begin\+\_\+t@{try\+\_\+begin\+\_\+t}}
\index{try\+\_\+begin\+\_\+t@{try\+\_\+begin\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{try\+\_\+begin\+\_\+t}{try\_begin\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_af790d5cec9db9f80cc8d67e9755e823e}{utl\+::in\+\_\+dev\+\_\+details\+::try\+\_\+begin\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().begin())}



Definition at line 298 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_a857d70a4119a4ff5615141d68e59ba7b}\label{namespaceutl_1_1in__dev__details_a857d70a4119a4ff5615141d68e59ba7b}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!try\+\_\+cbegin\+\_\+t@{try\+\_\+cbegin\+\_\+t}}
\index{try\+\_\+cbegin\+\_\+t@{try\+\_\+cbegin\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{try\+\_\+cbegin\+\_\+t}{try\_cbegin\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_a857d70a4119a4ff5615141d68e59ba7b}{utl\+::in\+\_\+dev\+\_\+details\+::try\+\_\+cbegin\+\_\+t}} = typedef decltype (declval$<$const \+\_\+\+Tp$>$().cbegin())}



Definition at line 300 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_ab268028c81d5385f19bbeb0c978ec9b2}\label{namespaceutl_1_1in__dev__details_ab268028c81d5385f19bbeb0c978ec9b2}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!try\+\_\+cend\+\_\+t@{try\+\_\+cend\+\_\+t}}
\index{try\+\_\+cend\+\_\+t@{try\+\_\+cend\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{try\+\_\+cend\+\_\+t}{try\_cend\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_ab268028c81d5385f19bbeb0c978ec9b2}{utl\+::in\+\_\+dev\+\_\+details\+::try\+\_\+cend\+\_\+t}} = typedef decltype (declval$<$const \+\_\+\+Tp$>$().cend())}



Definition at line 303 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_acc72ca7012e26a9a0de8b08047dc9de8}\label{namespaceutl_1_1in__dev__details_acc72ca7012e26a9a0de8b08047dc9de8}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!try\+\_\+end\+\_\+t@{try\+\_\+end\+\_\+t}}
\index{try\+\_\+end\+\_\+t@{try\+\_\+end\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{try\+\_\+end\+\_\+t}{try\_end\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_acc72ca7012e26a9a0de8b08047dc9de8}{utl\+::in\+\_\+dev\+\_\+details\+::try\+\_\+end\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().begin())}



Definition at line 301 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_a560eec1b326b0f6b91fa96f64f15ef61}\label{namespaceutl_1_1in__dev__details_a560eec1b326b0f6b91fa96f64f15ef61}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!try\+\_\+get1\+\_\+t@{try\+\_\+get1\+\_\+t}}
\index{try\+\_\+get1\+\_\+t@{try\+\_\+get1\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{try\+\_\+get1\+\_\+t}{try\_get1\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_a560eec1b326b0f6b91fa96f64f15ef61}{utl\+::in\+\_\+dev\+\_\+details\+::try\+\_\+get1\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().\mbox{\hyperlink{namespaceutl_a29057d2e164fe6dd3f3095f0d69c6546}{get}} (declval$<$typename \+\_\+\+Tp\+::data\+\_\+type\&$>$()))}



Definition at line 293 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_ae11bccc2282ed8f2aaac67687d756167}\label{namespaceutl_1_1in__dev__details_ae11bccc2282ed8f2aaac67687d756167}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!try\+\_\+get2\+\_\+t@{try\+\_\+get2\+\_\+t}}
\index{try\+\_\+get2\+\_\+t@{try\+\_\+get2\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{try\+\_\+get2\+\_\+t}{try\_get2\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_ae11bccc2282ed8f2aaac67687d756167}{utl\+::in\+\_\+dev\+\_\+details\+::try\+\_\+get2\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().\mbox{\hyperlink{namespaceutl_a29057d2e164fe6dd3f3095f0d69c6546}{get}} (declval$<$typename \+\_\+\+Tp\+::data\+\_\+type$\ast$$>$(), declval$<$\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}}$>$()))}



Definition at line 294 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_af7cb4a98688e65b04793cef145a90202}\label{namespaceutl_1_1in__dev__details_af7cb4a98688e65b04793cef145a90202}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!tryc\+\_\+begin\+\_\+t@{tryc\+\_\+begin\+\_\+t}}
\index{tryc\+\_\+begin\+\_\+t@{tryc\+\_\+begin\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{tryc\+\_\+begin\+\_\+t}{tryc\_begin\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_af7cb4a98688e65b04793cef145a90202}{utl\+::in\+\_\+dev\+\_\+details\+::tryc\+\_\+begin\+\_\+t}} = typedef decltype (declval$<$const \+\_\+\+Tp$>$().begin())}



Definition at line 299 of file in\+\_\+dev.\+h.

\mbox{\Hypertarget{namespaceutl_1_1in__dev__details_ad2dad6ed501b94ba1fa9cffade343762}\label{namespaceutl_1_1in__dev__details_ad2dad6ed501b94ba1fa9cffade343762}} 
\index{utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}!tryc\+\_\+end\+\_\+t@{tryc\+\_\+end\+\_\+t}}
\index{tryc\+\_\+end\+\_\+t@{tryc\+\_\+end\+\_\+t}!utl\+::in\+\_\+dev\+\_\+details@{utl\+::in\+\_\+dev\+\_\+details}}
\subsubsection{\texorpdfstring{tryc\+\_\+end\+\_\+t}{tryc\_end\_t}}
{\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
using \mbox{\hyperlink{namespaceutl_1_1in__dev__details_ad2dad6ed501b94ba1fa9cffade343762}{utl\+::in\+\_\+dev\+\_\+details\+::tryc\+\_\+end\+\_\+t}} = typedef decltype (declval$<$const \+\_\+\+Tp$>$().begin())}



Definition at line 302 of file in\+\_\+dev.\+h.

