\hypertarget{namespaceutl_1_1spi__i__details}{}\section{utl\+:\+:spi\+\_\+i\+\_\+details Namespace Reference} \label{namespaceutl_1_1spi__i__details}\index{utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}} \subsection*{Classes} \begin{DoxyCompactItemize} \item struct \mbox{\hyperlink{structutl_1_1spi__i__details_1_1is__spi__}{is\+\_\+spi\+\_\+}} \begin{DoxyCompactList}\small\item\em Primary template to catch any non S\+PI interface types. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structutl_1_1spi__i__details_1_1is__spi___3_01___tp_00_01meta_1_1void__t_3_01meta_1_1use__if__sa2db29f6d65d34ecf5e49ec30b6600d78}{is\+\_\+spi\+\_\+$<$ \+\_\+\+Tp, meta\+::void\+\_\+t$<$ meta\+::use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+cclock\+\_\+t$<$ \+\_\+\+Tp $>$, uint32\+\_\+t $>$, meta\+::use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+clock\+\_\+t$<$ \+\_\+\+Tp $>$, void $>$, meta\+::use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+tx\+\_\+t$<$ \+\_\+\+Tp $>$, byte\+\_\+t $>$, meta\+::use\+\_\+if\+\_\+same\+\_\+t$<$ try\+\_\+rx\+\_\+t$<$ \+\_\+\+Tp $>$, byte\+\_\+t $>$ $>$ $>$}} \begin{DoxyCompactList}\small\item\em template to catch a proper S\+PI interface type \end{DoxyCompactList}\end{DoxyCompactItemize} \subsection*{Typedefs} \begin{DoxyCompactItemize} \item {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_ae1a4fad6acf8faccc5e85ee9b710c109}{try\+\_\+cclock\+\_\+t}} = decltype(declval$<$ const \+\_\+\+Tp $>$().clock()) \item {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_af2f4800aa77af82767a3ac55b9b242a6}{try\+\_\+clock\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().clock(declval$<$ uint32\+\_\+t $>$())) \item {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_a755d8f10cfde3f5c3b9900eb11c858bd}{try\+\_\+tx\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().tx\+\_\+data(declval$<$ \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $>$())) \item {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_a4dcf3c71fddf790e45a3be2c19906c97}{try\+\_\+rx\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().rx\+\_\+data()) \end{DoxyCompactItemize} \subsection{Detailed Description} i2c interface concept \subsection{Typedef Documentation} \mbox{\Hypertarget{namespaceutl_1_1spi__i__details_ae1a4fad6acf8faccc5e85ee9b710c109}\label{namespaceutl_1_1spi__i__details_ae1a4fad6acf8faccc5e85ee9b710c109}} \index{utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}!try\+\_\+cclock\+\_\+t@{try\+\_\+cclock\+\_\+t}} \index{try\+\_\+cclock\+\_\+t@{try\+\_\+cclock\+\_\+t}!utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}} \subsubsection{\texorpdfstring{try\+\_\+cclock\+\_\+t}{try\_cclock\_t}} {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\ using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_ae1a4fad6acf8faccc5e85ee9b710c109}{utl\+::spi\+\_\+i\+\_\+details\+::try\+\_\+cclock\+\_\+t}} = typedef decltype (declval$<$const \+\_\+\+Tp$>$().clock())} Definition at line 298 of file spi.\+h. \mbox{\Hypertarget{namespaceutl_1_1spi__i__details_af2f4800aa77af82767a3ac55b9b242a6}\label{namespaceutl_1_1spi__i__details_af2f4800aa77af82767a3ac55b9b242a6}} \index{utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}!try\+\_\+clock\+\_\+t@{try\+\_\+clock\+\_\+t}} \index{try\+\_\+clock\+\_\+t@{try\+\_\+clock\+\_\+t}!utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}} \subsubsection{\texorpdfstring{try\+\_\+clock\+\_\+t}{try\_clock\_t}} {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\ using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_af2f4800aa77af82767a3ac55b9b242a6}{utl\+::spi\+\_\+i\+\_\+details\+::try\+\_\+clock\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().clock(declval$<$uint32\+\_\+t$>$()))} Definition at line 299 of file spi.\+h. \mbox{\Hypertarget{namespaceutl_1_1spi__i__details_a4dcf3c71fddf790e45a3be2c19906c97}\label{namespaceutl_1_1spi__i__details_a4dcf3c71fddf790e45a3be2c19906c97}} \index{utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}!try\+\_\+rx\+\_\+t@{try\+\_\+rx\+\_\+t}} \index{try\+\_\+rx\+\_\+t@{try\+\_\+rx\+\_\+t}!utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}} \subsubsection{\texorpdfstring{try\+\_\+rx\+\_\+t}{try\_rx\_t}} {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\ using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_a4dcf3c71fddf790e45a3be2c19906c97}{utl\+::spi\+\_\+i\+\_\+details\+::try\+\_\+rx\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().rx\+\_\+data())} Definition at line 301 of file spi.\+h. \mbox{\Hypertarget{namespaceutl_1_1spi__i__details_a755d8f10cfde3f5c3b9900eb11c858bd}\label{namespaceutl_1_1spi__i__details_a755d8f10cfde3f5c3b9900eb11c858bd}} \index{utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}!try\+\_\+tx\+\_\+t@{try\+\_\+tx\+\_\+t}} \index{try\+\_\+tx\+\_\+t@{try\+\_\+tx\+\_\+t}!utl\+::spi\+\_\+i\+\_\+details@{utl\+::spi\+\_\+i\+\_\+details}} \subsubsection{\texorpdfstring{try\+\_\+tx\+\_\+t}{try\_tx\_t}} {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\ using \mbox{\hyperlink{namespaceutl_1_1spi__i__details_a755d8f10cfde3f5c3b9900eb11c858bd}{utl\+::spi\+\_\+i\+\_\+details\+::try\+\_\+tx\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().tx\+\_\+data(declval$<$\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}}$>$()))} Definition at line 300 of file spi.\+h.