\hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4}{}\section{utl\+:\+:\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$ Class Template Reference}
\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4}\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}


A virtual base class implementation.  




{\ttfamily \#include $<$\+\_\+1wire.\+h$>$}

Inheritance diagram for utl\+:\+:\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classutl_1_1__1wire__i_3_01virtual__tag_01_4}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} \{ \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512ac6ce23be5d350ce18a665427d2d950f7}{Speed\+::\+S\+TD}} =0, 
\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512a1cbf38b04c4249d8ec27d1ec96aaff68}{Speed\+::\+O\+V\+DR}}
 \}
\begin{DoxyCompactList}\small\item\em 1-\/wire bus speed \end{DoxyCompactList}\item 
using \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} = \mbox{\hyperlink{classutl_1_1__1wire__i}{\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$
\begin{DoxyCompactList}\small\item\em Export type as identity meta-\/function. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{Indent}\textbf{ User functionality provided by the interface}\par
\begin{DoxyCompactItemize}
\item 
bool \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a735ed5cb622a1478c57537c131ede7a7}{reset}} (\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\begin{DoxyCompactList}\small\item\em Generate a 1-\/wire reset. \end{DoxyCompactList}\item 
\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9fbf69bafc3b697d3cf5ab09055540c8}{tx\+\_\+data}} (\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} out, \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\item 
\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2fe8eabe2f67410123913b240f039b33}{tx\+\_\+data}} (const \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $\ast$out, \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $\ast$in, \mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} n, \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\item 
\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a525b58c7a1110d39f1eb594f12edb16c}{rx\+\_\+data}} (\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\item 
\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a5f3c707157c571d07a8a3d882900de95}{rx\+\_\+data}} (\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $\ast$in, \mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} n, \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\item 
void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_ac9c4e6123eee9b0af8d94fc8b22af04a}{match}} (\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&id, \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\item 
void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9a3e64459e7fddc89d160a3a379552b6}{match\+\_\+n\+\_\+ovdr}} (\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&id)
\item 
void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_ad480b5053884e51e8089cdc691017e4d}{skip}} (\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD)
\item 
void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a8d45e55f347c35e77ec55b905516f8fd}{skip\+\_\+n\+\_\+ovdr}} ()
\item 
\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a0fb2e35eb9c244640014f69808ae2758}{first}} (\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD, bool alarm=false)
\begin{DoxyCompactList}\small\item\em \textquotesingle{}first\textquotesingle{} operation, to search on the 1-\/\+Wire for the first device. This is performed by setting dec\+\_\+, pos\+\_\+ and cur\+\_\+ to zero and then doing the search. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6a3b511a6f7c20bae1e8c7af9f50a0ff}{next}} (\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}} s=Speed\+::\+S\+TD, bool alarm=false)
\begin{DoxyCompactList}\small\item\em \textquotesingle{}next\textquotesingle{} operation, to search on the 1-\/\+Wire for the next device. This search is usually performed after a \textquotesingle{}first\textquotesingle{} operation or another \textquotesingle{}next\textquotesingle{} operation. Based on maxim-\/ic application note 187. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Object lifetime}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a21dfe2ba7060c3a8617ced1f841bddaf}{\+\_\+1wire\+\_\+i}} ()=default
\begin{DoxyCompactList}\small\item\em Allow constructor from derived only. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a8f60bc0402c885a3409ba0d53239510f}{\+\_\+1wire\+\_\+i}} (const \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} \&)=delete
\begin{DoxyCompactList}\small\item\em No copies. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} \& \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a3e2e3e5f3727eaa9fdf152ae7098c7be}{operator=}} (const \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} \&)=delete
\item 
virtual \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af1e2fea1b65ea57f4331c9dbc43e4bbf}{$\sim$\+\_\+1wire\+\_\+i}} ()=default
\end{DoxyCompactItemize}
\subsection*{Friends api to provide functionality to all class specializations}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_aedee6f129425833a172784ec3c6e21e9}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch}} (\+\_\+T \&, \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}}, typename \+\_\+\+T\+::\+Speed)
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6deca63bf5935ba3c3aa07f6ca23e33a}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match}} (\+\_\+T \&obj, \mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&id, typename \+\_\+\+T\+::\+Speed s)
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6b70d3457970aa791dd68e20800b6d0d}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr}} (\+\_\+T \&obj, \mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&id)
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9041b1220dfa52b4f4b161b718c3d33a}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip}} (\+\_\+T \&obj, typename \+\_\+\+T\+::\+Speed s)
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\void \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af4dfbd90b0d5606f1f2e515d38a43d66}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr}} (\+\_\+T \&obj)
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a05f0872f43d7b305269904d1522fa437}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first}} (\+\_\+T \&, typename \+\_\+\+T\+::\+Speed, bool)
\item 
{\footnotesize template$<$typename \+\_\+T $>$ }\\\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af9a6a28b49cd3f51736f7c1f8e67327a}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next}} (\+\_\+T \&, typename \+\_\+\+T\+::\+Speed, bool)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$$>$\newline
class utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}

A virtual base class implementation. 


\begin{DoxyParams}{Parameters}
{\em impl\+\_\+t} & = \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} \\
\hline
\end{DoxyParams}


Definition at line 260 of file \+\_\+1wire.\+h.



\subsection{Member Typedef Documentation}
\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!type@{type}}
\index{type@{type}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{type}{type}}
{\footnotesize\ttfamily using \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} =  \mbox{\hyperlink{classutl_1_1__1wire__i}{\+\_\+1wire\+\_\+i}}$<$\mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}}$>$}



Export type as identity meta-\/function. 



Definition at line 262 of file \+\_\+1wire.\+h.



\subsection{Member Enumeration Documentation}
\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!Speed@{Speed}}
\index{Speed@{Speed}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{Speed}{Speed}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}\hspace{0.3cm}{\ttfamily [strong]}}



1-\/wire bus speed 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{S\+TD@{S\+TD}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!S\+TD@{S\+TD}}}\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512ac6ce23be5d350ce18a665427d2d950f7}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512ac6ce23be5d350ce18a665427d2d950f7}} 
S\+TD&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{O\+V\+DR@{O\+V\+DR}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!O\+V\+DR@{O\+V\+DR}}}\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512a1cbf38b04c4249d8ec27d1ec96aaff68}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512a1cbf38b04c4249d8ec27d1ec96aaff68}} 
O\+V\+DR&\\
\hline

\end{DoxyEnumFields}


Definition at line 265 of file \+\_\+1wire.\+h.



\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a21dfe2ba7060c3a8617ced1f841bddaf}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a21dfe2ba7060c3a8617ced1f841bddaf}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i@{\+\_\+1wire\+\_\+i}}
\index{\+\_\+1wire\+\_\+i@{\+\_\+1wire\+\_\+i}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i()}{\_1wire\_i()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::\mbox{\hyperlink{classutl_1_1__1wire__i}{\+\_\+1wire\+\_\+i}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [default]}}



Allow constructor from derived only. 

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a8f60bc0402c885a3409ba0d53239510f}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a8f60bc0402c885a3409ba0d53239510f}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i@{\+\_\+1wire\+\_\+i}}
\index{\+\_\+1wire\+\_\+i@{\+\_\+1wire\+\_\+i}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i()}{\_1wire\_i()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::\mbox{\hyperlink{classutl_1_1__1wire__i}{\+\_\+1wire\+\_\+i}} (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [delete]}}



No copies. 

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af1e2fea1b65ea57f4331c9dbc43e4bbf}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af1e2fea1b65ea57f4331c9dbc43e4bbf}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!````~\+\_\+1wire\+\_\+i@{$\sim$\+\_\+1wire\+\_\+i}}
\index{````~\+\_\+1wire\+\_\+i@{$\sim$\+\_\+1wire\+\_\+i}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{$\sim$\+\_\+1wire\+\_\+i()}{~\_1wire\_i()}}
{\footnotesize\ttfamily virtual \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::$\sim$\mbox{\hyperlink{classutl_1_1__1wire__i}{\+\_\+1wire\+\_\+i}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}, {\ttfamily [default]}}

Virtual default destructor 

\subsection{Member Function Documentation}
\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a0fb2e35eb9c244640014f69808ae2758}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a0fb2e35eb9c244640014f69808ae2758}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!first@{first}}
\index{first@{first}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{first()}{first()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::first (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD},  }\item[{bool}]{alarm = {\ttfamily false} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



\textquotesingle{}first\textquotesingle{} operation, to search on the 1-\/\+Wire for the first device. This is performed by setting dec\+\_\+, pos\+\_\+ and cur\+\_\+ to zero and then doing the search. 


\begin{DoxyParams}{Parameters}
{\em s} & The bus speed \\
\hline
{\em alarm} & If set, search for alarm devices \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
ID The rom\+ID \begin{DoxyItemize}
\item null\+Dev Indicate no \mbox{[}more\mbox{]} device\mbox{[}s\mbox{]} \end{DoxyItemize}

\end{DoxyReturn}


Definition at line 406 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_ac9c4e6123eee9b0af8d94fc8b22af04a}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_ac9c4e6123eee9b0af8d94fc8b22af04a}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!match@{match}}
\index{match@{match}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{match()}{match()}}
{\footnotesize\ttfamily void \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::match (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&}]{id,  }\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Send match rom command 
\begin{DoxyParams}{Parameters}
{\em id} & The ID to select on the bus \\
\hline
{\em s} & The speed to use for the command \\
\hline
\end{DoxyParams}


Definition at line 372 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9a3e64459e7fddc89d160a3a379552b6}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9a3e64459e7fddc89d160a3a379552b6}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!match\+\_\+n\+\_\+ovdr@{match\+\_\+n\+\_\+ovdr}}
\index{match\+\_\+n\+\_\+ovdr@{match\+\_\+n\+\_\+ovdr}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{match\+\_\+n\+\_\+ovdr()}{match\_n\_ovdr()}}
{\footnotesize\ttfamily void \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::match\+\_\+n\+\_\+ovdr (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&}]{id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Match and overdrive sequence 
\begin{DoxyParams}{Parameters}
{\em obj} & The object from which we call private members \\
\hline
{\em id} & The ID to select on the bus \\
\hline
\end{DoxyParams}


Definition at line 380 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6a3b511a6f7c20bae1e8c7af9f50a0ff}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6a3b511a6f7c20bae1e8c7af9f50a0ff}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!next@{next}}
\index{next@{next}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{next()}{next()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::next (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD},  }\item[{bool}]{alarm = {\ttfamily false} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



\textquotesingle{}next\textquotesingle{} operation, to search on the 1-\/\+Wire for the next device. This search is usually performed after a \textquotesingle{}first\textquotesingle{} operation or another \textquotesingle{}next\textquotesingle{} operation. Based on maxim-\/ic application note 187. 


\begin{DoxyParams}{Parameters}
{\em s} & The bus speed \\
\hline
{\em alarm} & If set, search for alarm devices \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
ID The rom\+ID \begin{DoxyItemize}
\item null\+Dev Indicate no \mbox{[}more\mbox{]} device\mbox{[}s\mbox{]} \end{DoxyItemize}

\end{DoxyReturn}


Definition at line 419 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a3e2e3e5f3727eaa9fdf152ae7098c7be}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a3e2e3e5f3727eaa9fdf152ae7098c7be}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!operator=@{operator=}}
\index{operator=@{operator=}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{operator=()}{operator=()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}}\& \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a1b2fa0f5a2946723cd29e689bd38359d}{type}} \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [delete]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a735ed5cb622a1478c57537c131ede7a7}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a735ed5cb622a1478c57537c131ede7a7}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!reset@{reset}}
\index{reset@{reset}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{reset()}{reset()}}
{\footnotesize\ttfamily bool \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::reset (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Generate a 1-\/wire reset. 


\begin{DoxyParams}{Parameters}
{\em s} & Bus speed \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The status of the operation \begin{DoxyItemize}
\item 0 Fail \item 1 Success \end{DoxyItemize}

\end{DoxyReturn}


Definition at line 327 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a525b58c7a1110d39f1eb594f12edb16c}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a525b58c7a1110d39f1eb594f12edb16c}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!rx\+\_\+data@{rx\+\_\+data}}
\index{rx\+\_\+data@{rx\+\_\+data}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{rx\+\_\+data()}{rx\_data()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::rx\+\_\+data (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Receive a byte from 1-\/\+Wire bus while transmitting 0x\+FF 
\begin{DoxyParams}{Parameters}
{\em s} & Bus speed to use \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The byte received. 
\end{DoxyReturn}


Definition at line 355 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a5f3c707157c571d07a8a3d882900de95}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a5f3c707157c571d07a8a3d882900de95}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!rx\+\_\+data@{rx\+\_\+data}}
\index{rx\+\_\+data@{rx\+\_\+data}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{rx\+\_\+data()}{rx\_data()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::rx\+\_\+data (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $\ast$}]{in,  }\item[{\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}}}]{n,  }\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})}

Receive a number of bytes from 1-\/wire bus while transmitting 0x\+F\+Fs 
\begin{DoxyParams}{Parameters}
{\em in} & Pointer to data to store \\
\hline
{\em n} & Number of bytes \\
\hline
{\em s} & Speed to use \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of transmitted bytes 
\end{DoxyReturn}


Definition at line 446 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_ad480b5053884e51e8089cdc691017e4d}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_ad480b5053884e51e8089cdc691017e4d}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!skip@{skip}}
\index{skip@{skip}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{skip()}{skip()}}
{\footnotesize\ttfamily void \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::skip (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Send skip command to the bus 
\begin{DoxyParams}{Parameters}
{\em id} & The ID to select on the bus \\
\hline
\end{DoxyParams}


Definition at line 387 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a8d45e55f347c35e77ec55b905516f8fd}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a8d45e55f347c35e77ec55b905516f8fd}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!skip\+\_\+n\+\_\+ovdr@{skip\+\_\+n\+\_\+ovdr}}
\index{skip\+\_\+n\+\_\+ovdr@{skip\+\_\+n\+\_\+ovdr}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{skip\+\_\+n\+\_\+ovdr()}{skip\_n\_ovdr()}}
{\footnotesize\ttfamily void \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::skip\+\_\+n\+\_\+ovdr (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Send the Skip and Overdrive sequence 

Definition at line 393 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9fbf69bafc3b697d3cf5ab09055540c8}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9fbf69bafc3b697d3cf5ab09055540c8}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!tx\+\_\+data@{tx\+\_\+data}}
\index{tx\+\_\+data@{tx\+\_\+data}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{tx\+\_\+data()}{tx\_data()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::tx\+\_\+data (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}}}]{out,  }\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Transmit a byte to 1-\/\+Wire bus and read the response 
\begin{DoxyParams}{Parameters}
{\em out} & The byte to write \\
\hline
{\em s} & Bus speed to use \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The byte received. 
\end{DoxyReturn}


Definition at line 337 of file \+\_\+1wire.\+h.

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2fe8eabe2f67410123913b240f039b33}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2fe8eabe2f67410123913b240f039b33}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!tx\+\_\+data@{tx\+\_\+data}}
\index{tx\+\_\+data@{tx\+\_\+data}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{tx\+\_\+data()}{tx\_data()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1__1wire__i}{utl\+::\+\_\+1wire\+\_\+i}}$<$ \mbox{\hyperlink{structutl_1_1virtual__tag}{virtual\+\_\+tag}} $>$\+::tx\+\_\+data (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $\ast$}]{out,  }\item[{\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} $\ast$}]{in,  }\item[{\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}}}]{n,  }\item[{\mbox{\hyperlink{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a2abb8c6344d17269c55ae0cba63ec512}{Speed}}}]{s = {\ttfamily Speed\+:\+:STD} }\end{DoxyParamCaption})}

Transmit a number of bytes to 1-\/wire bus and read the response 
\begin{DoxyParams}{Parameters}
{\em out} & Pointer to data to transmit \\
\hline
{\em in} & Pointer to data to store \\
\hline
{\em n} & Number of bytes \\
\hline
{\em s} & Speed to use \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of transmitted bytes 
\end{DoxyReturn}


Definition at line 440 of file \+\_\+1wire.\+h.



\subsection{Friends And Related Function Documentation}
\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a05f0872f43d7b305269904d1522fa437}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a05f0872f43d7b305269904d1522fa437}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first}{\_1wire\_i\_det::\_first}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_a237719ffa105f988cb175d6720712a4a}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+first}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{,  }\item[{typename \+\_\+\+T\+::\+Speed}]{,  }\item[{bool}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6deca63bf5935ba3c3aa07f6ca23e33a}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6deca63bf5935ba3c3aa07f6ca23e33a}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match}{\_1wire\_i\_det::\_match}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
void \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_a1b07e623a39ce82f1514846169f3a954}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{obj,  }\item[{\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&}]{id,  }\item[{typename \+\_\+\+T\+::\+Speed}]{s }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6b70d3457970aa791dd68e20800b6d0d}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a6b70d3457970aa791dd68e20800b6d0d}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr}{\_1wire\_i\_det::\_match\_n\_ovdr}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
void \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_a1e14f734d5e232c914be6ea97982aa40}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+match\+\_\+n\+\_\+ovdr}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{obj,  }\item[{\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \&}]{id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af9a6a28b49cd3f51736f7c1f8e67327a}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af9a6a28b49cd3f51736f7c1f8e67327a}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next}{\_1wire\_i\_det::\_next}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
\mbox{\hyperlink{classutl_1_1__1wire__id__t}{\+\_\+1wire\+\_\+id\+\_\+t}} \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_a1f7b692a40769ebe59343613b147e01d}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+next}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{,  }\item[{typename \+\_\+\+T\+::\+Speed}]{,  }\item[{bool}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9041b1220dfa52b4f4b161b718c3d33a}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_a9041b1220dfa52b4f4b161b718c3d33a}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip}{\_1wire\_i\_det::\_skip}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
void \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_a9ea80f4ef2422a7fd71788c42b228053}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{obj,  }\item[{typename \+\_\+\+T\+::\+Speed}]{s }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af4dfbd90b0d5606f1f2e515d38a43d66}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_af4dfbd90b0d5606f1f2e515d38a43d66}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr}{\_1wire\_i\_det::\_skip\_n\_ovdr}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
void \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_ace224a4d329166bfd9f3448e492baf2b}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+skip\+\_\+n\+\_\+ovdr}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{obj }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}

\mbox{\Hypertarget{classutl_1_1__1wire__i_3_01virtual__tag_01_4_aedee6f129425833a172784ec3c6e21e9}\label{classutl_1_1__1wire__i_3_01virtual__tag_01_4_aedee6f129425833a172784ec3c6e21e9}} 
\index{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}!\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch}}
\index{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch@{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch}!utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$@{utl\+::\+\_\+1wire\+\_\+i$<$ virtual\+\_\+tag $>$}}
\subsubsection{\texorpdfstring{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch}{\_1wire\_i\_det::\_touch}}
{\footnotesize\ttfamily template$<$typename \+\_\+T $>$ \\
\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}} \mbox{\hyperlink{namespaceutl_1_1__1wire__i__det_a85a3a19778edb037f6341f37135a5494}{\+\_\+1wire\+\_\+i\+\_\+det\+::\+\_\+touch}} (\begin{DoxyParamCaption}\item[{\+\_\+T \&}]{,  }\item[{\mbox{\hyperlink{namespaceutl_a1427cb5a2b13313147a902173b91e3c1}{byte\+\_\+t}}}]{,  }\item[{typename \+\_\+\+T\+::\+Speed}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [friend]}}



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
include/utl/com/\mbox{\hyperlink{__1wire_8h}{\+\_\+1wire.\+h}}\end{DoxyCompactItemize}
