Micro template library A library for building device drivers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

94 lines
7.4 KiB

  1. \hypertarget{namespaceutl_1_1i2c__i__details}{}\section{utl\+:\+:i2c\+\_\+i\+\_\+details Namespace Reference}
  2. \label{namespaceutl_1_1i2c__i__details}\index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  3. \subsection*{Classes}
  4. \begin{DoxyCompactItemize}
  5. \item
  6. struct \mbox{\hyperlink{structutl_1_1i2c__i__details_1_1is__i2c__}{is\+\_\+i2c\+\_\+}}
  7. \begin{DoxyCompactList}\small\item\em Primary template to catch any non I2C interface types. \end{DoxyCompactList}\item
  8. struct \mbox{\hyperlink{structutl_1_1i2c__i__details_1_1is__i2c___3_01___tp_00_01meta_1_1void__t_3_01typename_01___tp_1_1_sequence_00_01void_01_4_01_4}{is\+\_\+i2c\+\_\+$<$ \+\_\+\+Tp, meta\+::void\+\_\+t$<$ typename \+\_\+\+Tp\+::\+Sequence, void $>$ $>$}}
  9. \begin{DoxyCompactList}\small\item\em template to catch a proper I2C interface type \end{DoxyCompactList}\end{DoxyCompactItemize}
  10. \subsection*{Typedefs}
  11. \begin{DoxyCompactItemize}
  12. \item
  13. {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a81c12a06fe9cf6f643718f9175da8769}{try\+\_\+cclk\+\_\+t}} = decltype(declval$<$ const \+\_\+\+Tp $>$().clock())
  14. \item
  15. {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_adaf6b9dbc57caeda1a6a85bd17ac6317}{try\+\_\+clk\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().clock(declval$<$ uint32\+\_\+t $>$()))
  16. \item
  17. {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a173335d0a45cba1b159bf33bcefb3a46}{try\+\_\+start\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().start())
  18. \item
  19. {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a25cbce342478441f05d3a101fcafc02c}{try\+\_\+stop\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().stop())
  20. \item
  21. {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a10de1b351bd683c5435e2db3d682819c}{try\+\_\+rx\+\_\+data\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().rx\+\_\+data(declval$<$ bool $>$(), declval$<$ typename \+\_\+\+Tp\+::\+Sequence $>$()))
  22. \item
  23. {\footnotesize template$<$class \+\_\+\+Tp $>$ }\\using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_ad8d87a56b12244ba8060f8d27207083f}{try\+\_\+tx\+\_\+data\+\_\+t}} = decltype(declval$<$ \+\_\+\+Tp $>$().tx\+\_\+data(declval$<$ \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $>$(), declval$<$ typename \+\_\+\+Tp\+::\+Sequence $>$()))
  24. \end{DoxyCompactItemize}
  25. \subsection{Typedef Documentation}
  26. \mbox{\Hypertarget{namespaceutl_1_1i2c__i__details_a81c12a06fe9cf6f643718f9175da8769}\label{namespaceutl_1_1i2c__i__details_a81c12a06fe9cf6f643718f9175da8769}}
  27. \index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}!try\+\_\+cclk\+\_\+t@{try\+\_\+cclk\+\_\+t}}
  28. \index{try\+\_\+cclk\+\_\+t@{try\+\_\+cclk\+\_\+t}!utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  29. \subsubsection{\texorpdfstring{try\+\_\+cclk\+\_\+t}{try\_cclk\_t}}
  30. {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
  31. using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a81c12a06fe9cf6f643718f9175da8769}{utl\+::i2c\+\_\+i\+\_\+details\+::try\+\_\+cclk\+\_\+t}} = typedef decltype (declval$<$const \+\_\+\+Tp$>$().clock())}
  32. Definition at line 246 of file i2c.\+h.
  33. \mbox{\Hypertarget{namespaceutl_1_1i2c__i__details_adaf6b9dbc57caeda1a6a85bd17ac6317}\label{namespaceutl_1_1i2c__i__details_adaf6b9dbc57caeda1a6a85bd17ac6317}}
  34. \index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}!try\+\_\+clk\+\_\+t@{try\+\_\+clk\+\_\+t}}
  35. \index{try\+\_\+clk\+\_\+t@{try\+\_\+clk\+\_\+t}!utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  36. \subsubsection{\texorpdfstring{try\+\_\+clk\+\_\+t}{try\_clk\_t}}
  37. {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
  38. using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_adaf6b9dbc57caeda1a6a85bd17ac6317}{utl\+::i2c\+\_\+i\+\_\+details\+::try\+\_\+clk\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().clock(declval$<$uint32\+\_\+t$>$()))}
  39. Definition at line 247 of file i2c.\+h.
  40. \mbox{\Hypertarget{namespaceutl_1_1i2c__i__details_a10de1b351bd683c5435e2db3d682819c}\label{namespaceutl_1_1i2c__i__details_a10de1b351bd683c5435e2db3d682819c}}
  41. \index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}!try\+\_\+rx\+\_\+data\+\_\+t@{try\+\_\+rx\+\_\+data\+\_\+t}}
  42. \index{try\+\_\+rx\+\_\+data\+\_\+t@{try\+\_\+rx\+\_\+data\+\_\+t}!utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  43. \subsubsection{\texorpdfstring{try\+\_\+rx\+\_\+data\+\_\+t}{try\_rx\_data\_t}}
  44. {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
  45. using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a10de1b351bd683c5435e2db3d682819c}{utl\+::i2c\+\_\+i\+\_\+details\+::try\+\_\+rx\+\_\+data\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().rx\+\_\+data (declval$<$bool$>$(), declval$<$typename \+\_\+\+Tp\+::\+Sequence$>$()))}
  46. Definition at line 251 of file i2c.\+h.
  47. \mbox{\Hypertarget{namespaceutl_1_1i2c__i__details_a173335d0a45cba1b159bf33bcefb3a46}\label{namespaceutl_1_1i2c__i__details_a173335d0a45cba1b159bf33bcefb3a46}}
  48. \index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}!try\+\_\+start\+\_\+t@{try\+\_\+start\+\_\+t}}
  49. \index{try\+\_\+start\+\_\+t@{try\+\_\+start\+\_\+t}!utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  50. \subsubsection{\texorpdfstring{try\+\_\+start\+\_\+t}{try\_start\_t}}
  51. {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
  52. using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a173335d0a45cba1b159bf33bcefb3a46}{utl\+::i2c\+\_\+i\+\_\+details\+::try\+\_\+start\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().start())}
  53. Definition at line 248 of file i2c.\+h.
  54. \mbox{\Hypertarget{namespaceutl_1_1i2c__i__details_a25cbce342478441f05d3a101fcafc02c}\label{namespaceutl_1_1i2c__i__details_a25cbce342478441f05d3a101fcafc02c}}
  55. \index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}!try\+\_\+stop\+\_\+t@{try\+\_\+stop\+\_\+t}}
  56. \index{try\+\_\+stop\+\_\+t@{try\+\_\+stop\+\_\+t}!utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  57. \subsubsection{\texorpdfstring{try\+\_\+stop\+\_\+t}{try\_stop\_t}}
  58. {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
  59. using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_a25cbce342478441f05d3a101fcafc02c}{utl\+::i2c\+\_\+i\+\_\+details\+::try\+\_\+stop\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().stop())}
  60. Definition at line 249 of file i2c.\+h.
  61. \mbox{\Hypertarget{namespaceutl_1_1i2c__i__details_ad8d87a56b12244ba8060f8d27207083f}\label{namespaceutl_1_1i2c__i__details_ad8d87a56b12244ba8060f8d27207083f}}
  62. \index{utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}!try\+\_\+tx\+\_\+data\+\_\+t@{try\+\_\+tx\+\_\+data\+\_\+t}}
  63. \index{try\+\_\+tx\+\_\+data\+\_\+t@{try\+\_\+tx\+\_\+data\+\_\+t}!utl\+::i2c\+\_\+i\+\_\+details@{utl\+::i2c\+\_\+i\+\_\+details}}
  64. \subsubsection{\texorpdfstring{try\+\_\+tx\+\_\+data\+\_\+t}{try\_tx\_data\_t}}
  65. {\footnotesize\ttfamily template$<$class \+\_\+\+Tp $>$ \\
  66. using \mbox{\hyperlink{namespaceutl_1_1i2c__i__details_ad8d87a56b12244ba8060f8d27207083f}{utl\+::i2c\+\_\+i\+\_\+details\+::try\+\_\+tx\+\_\+data\+\_\+t}} = typedef decltype (declval$<$\+\_\+\+Tp$>$().tx\+\_\+data (declval$<$\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}}$>$(), declval$<$typename \+\_\+\+Tp\+::\+Sequence$>$()))}
  67. Definition at line 253 of file i2c.\+h.