408 lines
25 KiB
TeX
408 lines
25 KiB
TeX
\hypertarget{classutl_1_1out__dev}{}\section{utl\+:\+:out\+\_\+dev$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$ Class Template Reference}
|
|
\label{classutl_1_1out__dev}\index{utl\+::out\+\_\+dev$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$@{utl\+::out\+\_\+dev$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$}}
|
|
|
|
|
|
Abstract base classes for output devices.
|
|
|
|
|
|
|
|
|
|
{\ttfamily \#include $<$out\+\_\+dev.\+h$>$}
|
|
|
|
\subsection*{Public Types}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
using \mbox{\hyperlink{classutl_1_1out__dev_aebda5d42d26027e9266bfe74bf71a960}{type}} = \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}
|
|
\begin{DoxyCompactList}\small\item\em Export type as identity meta-\/function. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\textbf{ }\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
using \mbox{\hyperlink{classutl_1_1out__dev_ac6b32afc51452a7dd2297a41f74e63e4}{data\+\_\+type}} = data\+\_\+t
|
|
\item
|
|
using \mbox{\hyperlink{classutl_1_1out__dev_abfb6a95c13fc63c09776141ad16e98e3}{pointer\+\_\+type}} = data\+\_\+t $\ast$
|
|
\end{DoxyCompactItemize}
|
|
|
|
\subsection*{Public Member Functions}
|
|
\begin{Indent}\textbf{ Common output device interface}\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1out__dev_a640214f205468c235dec25bab8fb6c08}{put}} (const data\+\_\+t \&data)
|
|
\begin{DoxyCompactList}\small\item\em Put interface. This function should send a single data\+\_\+t object to device. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1out__dev_a0cfe5f4d3c3e4fb21abe9e88101e0bb8}{put}} (const data\+\_\+t $\ast$data, \mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} n)
|
|
\begin{DoxyCompactList}\small\item\em Put interface. This function should send a stream of data\+\_\+t objects to device. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\end{Indent}
|
|
\begin{Indent}\textbf{ Stream operator $<$$<$ interface}\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
{\footnotesize template$<$typename \+\_\+\+Src\+\_\+t $>$ }\\\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \& \mbox{\hyperlink{classutl_1_1out__dev_a73612dfcce721cbc386bad3e7d6864b4}{operator$<$$<$}} (\+\_\+\+Src\+\_\+t \&src)
|
|
\begin{DoxyCompactList}\small\item\em Template operator$<$$<$ implementation for for all by value/ref parameters. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$typename \+\_\+\+Src\+\_\+t $>$ }\\\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \& \mbox{\hyperlink{classutl_1_1out__dev_a934913c0d594e8fd366b248bc01116aa}{operator$<$$<$}} (\+\_\+\+Src\+\_\+t $\ast$src)=delete
|
|
\begin{DoxyCompactList}\small\item\em Overload to disallow pointer types as source. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \& \mbox{\hyperlink{classutl_1_1out__dev_a22dce1d313a4f6b4686d4253cbd7f485}{operator$<$$<$}} (const data\+\_\+t \&src)
|
|
\begin{DoxyCompactList}\small\item\em Overload for single data\+\_\+t object. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\end{Indent}
|
|
\textbf{ }\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}{iterator}} \mbox{\hyperlink{classutl_1_1out__dev_a34aeac23c0184d243c6631e713208e27}{end}} () noexcept
|
|
\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev_a0e89b3e0a5bddc3031b543ef32eb401e}{end}} () const noexcept
|
|
\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev_a71487ce8df820dd688d1698b035fe4fe}{cend}} () const noexcept
|
|
\end{DoxyCompactItemize}
|
|
|
|
\subsection*{Protected Member Functions}
|
|
\begin{Indent}\textbf{ Constructor / Destructor}\par
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_a0c04af11ec0f3f9954399d22069e314d}{$\sim$out\+\_\+dev}} ()=default
|
|
\begin{DoxyCompactList}\small\item\em Allow destructor from derived only. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_a0ceaf76475484f35174d96561dea73bf}{out\+\_\+dev}} ()=default
|
|
\begin{DoxyCompactList}\small\item\em A default constructor from derived only. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_a36aed8619cf12b4f04334c7e0b219fb6}{out\+\_\+dev}} (const \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \&)=delete
|
|
\begin{DoxyCompactList}\small\item\em No copies. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \& \mbox{\hyperlink{classutl_1_1out__dev_aba2f65a858ae47167f46979337299f44}{operator=}} (const \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \&)=delete
|
|
\end{DoxyCompactItemize}
|
|
\end{Indent}
|
|
\subsection*{S\+T\+L-\/like Output iterator interface}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
using \mbox{\hyperlink{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}{iterator}} = \mbox{\hyperlink{classutl_1_1outdev__it}{outdev\+\_\+it}}$<$ \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}, data\+\_\+t $\ast$, streamsize $>$
|
|
\begin{DoxyCompactList}\small\item\em Iterator. \end{DoxyCompactList}\item
|
|
using \mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} = \mbox{\hyperlink{classutl_1_1outdev__it}{outdev\+\_\+it}}$<$ const \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}, data\+\_\+t $\ast$, streamsize $>$
|
|
\begin{DoxyCompactList}\small\item\em Const iterator. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}{iterator}} \mbox{\hyperlink{classutl_1_1out__dev_a6396fb83348828e37d853d1566b0d742}{begin}} () noexcept
|
|
\begin{DoxyCompactList}\small\item\em .begin implementation \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev_ab08cdc4935ec15a388e34610e905d375}{begin}} () const noexcept
|
|
\item
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev_ace309e9fd1a113691c5a84fde268c676}{cbegin}} () const noexcept
|
|
\end{DoxyCompactItemize}
|
|
|
|
|
|
\subsection{Detailed Description}
|
|
\subsubsection*{template$<$typename impl\+\_\+t, typename data\+\_\+t, size\+\_\+t streamsize = 0$>$\newline
|
|
class utl\+::out\+\_\+dev$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$}
|
|
|
|
Abstract base classes for output devices.
|
|
|
|
Template base class for output devices. using C\+R\+TP
|
|
|
|
This class force a common interface for output devices. By using this common interface the class implements
|
|
\begin{DoxyItemize}
|
|
\item Stream-\/like inserting operator
|
|
\item Output iterator
|
|
\item Const output iterator to inherit to implementation.
|
|
\end{DoxyItemize}
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em impl\+\_\+t} & The C\+R\+TP type (the derived/implementation class typename). \\
|
|
\hline
|
|
{\em data\+\_\+t} & The devices base type of data \\
|
|
\hline
|
|
{\em streamsize} & The number of elements to indicate eos. \begin{DoxyItemize}
|
|
\item None or 0 Stream only. No iterator as \mbox{\hyperlink{classutl_1_1out__dev_a6396fb83348828e37d853d1566b0d742}{begin()}} now equals \mbox{\hyperlink{classutl_1_1out__dev_a34aeac23c0184d243c6631e713208e27}{end()}}. \end{DoxyItemize}
|
|
\\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Definition at line 54 of file out\+\_\+dev.\+h.
|
|
|
|
|
|
|
|
\subsection{Member Typedef Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}\label{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!const\+\_\+iterator@{const\+\_\+iterator}}
|
|
\index{const\+\_\+iterator@{const\+\_\+iterator}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{const\+\_\+iterator}{const\_iterator}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
using \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} = \mbox{\hyperlink{classutl_1_1outdev__it}{outdev\+\_\+it}} $<$const \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}, data\+\_\+t$\ast$, streamsize$>$}
|
|
|
|
|
|
|
|
Const iterator.
|
|
|
|
|
|
|
|
Definition at line 153 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_ac6b32afc51452a7dd2297a41f74e63e4}\label{classutl_1_1out__dev_ac6b32afc51452a7dd2297a41f74e63e4}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!data\+\_\+type@{data\+\_\+type}}
|
|
\index{data\+\_\+type@{data\+\_\+type}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{data\+\_\+type}{data\_type}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
using \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev_ac6b32afc51452a7dd2297a41f74e63e4}{data\+\_\+type}} = data\+\_\+t}
|
|
|
|
Export types as input device concept demands
|
|
|
|
Definition at line 61 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}\label{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!iterator@{iterator}}
|
|
\index{iterator@{iterator}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{iterator}{iterator}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
using \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}{iterator}} = \mbox{\hyperlink{classutl_1_1outdev__it}{outdev\+\_\+it}} $<$\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}, data\+\_\+t$\ast$, streamsize$>$}
|
|
|
|
|
|
|
|
Iterator.
|
|
|
|
|
|
|
|
Definition at line 152 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_abfb6a95c13fc63c09776141ad16e98e3}\label{classutl_1_1out__dev_abfb6a95c13fc63c09776141ad16e98e3}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!pointer\+\_\+type@{pointer\+\_\+type}}
|
|
\index{pointer\+\_\+type@{pointer\+\_\+type}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{pointer\+\_\+type}{pointer\_type}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
using \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev_abfb6a95c13fc63c09776141ad16e98e3}{pointer\+\_\+type}} = data\+\_\+t$\ast$}
|
|
|
|
|
|
|
|
Definition at line 62 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_aebda5d42d26027e9266bfe74bf71a960}\label{classutl_1_1out__dev_aebda5d42d26027e9266bfe74bf71a960}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!type@{type}}
|
|
\index{type@{type}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{type}{type}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
using \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev_aebda5d42d26027e9266bfe74bf71a960}{type}} = \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}}
|
|
|
|
|
|
|
|
Export type as identity meta-\/function.
|
|
|
|
|
|
|
|
Definition at line 64 of file out\+\_\+dev.\+h.
|
|
|
|
|
|
|
|
\subsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a0c04af11ec0f3f9954399d22069e314d}\label{classutl_1_1out__dev_a0c04af11ec0f3f9954399d22069e314d}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!````~out\+\_\+dev@{$\sim$out\+\_\+dev}}
|
|
\index{````~out\+\_\+dev@{$\sim$out\+\_\+dev}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{$\sim$out\+\_\+dev()}{~out\_dev()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::$\sim$\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [default]}}
|
|
|
|
|
|
|
|
Allow destructor from derived only.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a0ceaf76475484f35174d96561dea73bf}\label{classutl_1_1out__dev_a0ceaf76475484f35174d96561dea73bf}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!out\+\_\+dev@{out\+\_\+dev}}
|
|
\index{out\+\_\+dev@{out\+\_\+dev}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{out\+\_\+dev()}{out\_dev()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [default]}}
|
|
|
|
|
|
|
|
A default constructor from derived only.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a36aed8619cf12b4f04334c7e0b219fb6}\label{classutl_1_1out__dev_a36aed8619cf12b4f04334c7e0b219fb6}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!out\+\_\+dev@{out\+\_\+dev}}
|
|
\index{out\+\_\+dev@{out\+\_\+dev}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{out\+\_\+dev()}{out\_dev()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev}} (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [delete]}}
|
|
|
|
|
|
|
|
No copies.
|
|
|
|
|
|
|
|
\subsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a6396fb83348828e37d853d1566b0d742}\label{classutl_1_1out__dev_a6396fb83348828e37d853d1566b0d742}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!begin@{begin}}
|
|
\index{begin@{begin}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{begin()}{begin()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}{iterator}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::begin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}
|
|
|
|
|
|
|
|
.begin implementation
|
|
|
|
|
|
|
|
Definition at line 156 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_ab08cdc4935ec15a388e34610e905d375}\label{classutl_1_1out__dev_ab08cdc4935ec15a388e34610e905d375}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!begin@{begin}}
|
|
\index{begin@{begin}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{begin()}{begin()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::begin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}
|
|
|
|
|
|
|
|
Definition at line 157 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_ace309e9fd1a113691c5a84fde268c676}\label{classutl_1_1out__dev_ace309e9fd1a113691c5a84fde268c676}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!cbegin@{cbegin}}
|
|
\index{cbegin@{cbegin}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{cbegin()}{cbegin()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::cbegin (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}
|
|
|
|
|
|
|
|
Definition at line 158 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a71487ce8df820dd688d1698b035fe4fe}\label{classutl_1_1out__dev_a71487ce8df820dd688d1698b035fe4fe}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!cend@{cend}}
|
|
\index{cend@{cend}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{cend()}{cend()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::cend (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}
|
|
|
|
|
|
|
|
Definition at line 163 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a34aeac23c0184d243c6631e713208e27}\label{classutl_1_1out__dev_a34aeac23c0184d243c6631e713208e27}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!end@{end}}
|
|
\index{end@{end}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{end()}{end()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev_ad7f16990cdb6d54a54c774224f758f13}{iterator}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}
|
|
|
|
.end implementation
|
|
|
|
Definition at line 161 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a0e89b3e0a5bddc3031b543ef32eb401e}\label{classutl_1_1out__dev_a0e89b3e0a5bddc3031b543ef32eb401e}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!end@{end}}
|
|
\index{end@{end}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{end()}{end()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev_acaf94b09de592226f78d4d2d43f348ed}{const\+\_\+iterator}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}}
|
|
|
|
|
|
|
|
Definition at line 162 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a73612dfcce721cbc386bad3e7d6864b4}\label{classutl_1_1out__dev_a73612dfcce721cbc386bad3e7d6864b4}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!operator$<$$<$@{operator$<$$<$}}
|
|
\index{operator$<$$<$@{operator$<$$<$}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{operator$<$$<$()}{operator<<()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
template$<$typename \+\_\+\+Src\+\_\+t $>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}\& \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::operator$<$$<$ (\begin{DoxyParamCaption}\item[{\+\_\+\+Src\+\_\+t \&}]{src }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Template operator$<$$<$ implementation for for all by value/ref parameters.
|
|
|
|
\begin{DoxyNote}{Note}
|
|
In the case \+\_\+\+Src\+\_\+t size is not an exact multiple of data\+\_\+t size the write data will be truncated and there may be data loss.
|
|
\end{DoxyNote}
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em src} & Reference to source data \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
Reference to this device for chaining
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 131 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a934913c0d594e8fd366b248bc01116aa}\label{classutl_1_1out__dev_a934913c0d594e8fd366b248bc01116aa}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!operator$<$$<$@{operator$<$$<$}}
|
|
\index{operator$<$$<$@{operator$<$$<$}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{operator$<$$<$()}{operator<<()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
template$<$typename \+\_\+\+Src\+\_\+t $>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}\& \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::operator$<$$<$ (\begin{DoxyParamCaption}\item[{\+\_\+\+Src\+\_\+t $\ast$}]{src }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}}
|
|
|
|
|
|
|
|
Overload to disallow pointer types as source.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a22dce1d313a4f6b4686d4253cbd7f485}\label{classutl_1_1out__dev_a22dce1d313a4f6b4686d4253cbd7f485}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!operator$<$$<$@{operator$<$$<$}}
|
|
\index{operator$<$$<$@{operator$<$$<$}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{operator$<$$<$()}{operator<<()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}\& \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::operator$<$$<$ (\begin{DoxyParamCaption}\item[{const data\+\_\+t \&}]{src }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Overload for single data\+\_\+t object.
|
|
|
|
|
|
|
|
Definition at line 142 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_aba2f65a858ae47167f46979337299f44}\label{classutl_1_1out__dev_aba2f65a858ae47167f46979337299f44}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!operator=@{operator=}}
|
|
\index{operator=@{operator=}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{operator=()}{operator=()}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}}\& \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classutl_1_1out__dev}{out\+\_\+dev\+\_\+t}} \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [delete]}}
|
|
|
|
No copy assignments \mbox{\Hypertarget{classutl_1_1out__dev_a640214f205468c235dec25bab8fb6c08}\label{classutl_1_1out__dev_a640214f205468c235dec25bab8fb6c08}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!put@{put}}
|
|
\index{put@{put}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{put()}{put()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::put (\begin{DoxyParamCaption}\item[{const data\+\_\+t \&}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Put interface. This function should send a single data\+\_\+t object to device.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em data} & The data to send \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
The number of transmitted data items
|
|
\end{DoxyReturn}
|
|
\begin{DoxyNote}{Note}
|
|
A successful call should return 1
|
|
\end{DoxyNote}
|
|
|
|
|
|
Definition at line 99 of file out\+\_\+dev.\+h.
|
|
|
|
\mbox{\Hypertarget{classutl_1_1out__dev_a0cfe5f4d3c3e4fb21abe9e88101e0bb8}\label{classutl_1_1out__dev_a0cfe5f4d3c3e4fb21abe9e88101e0bb8}}
|
|
\index{utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}!put@{put}}
|
|
\index{put@{put}!utl\+::out\+\_\+dev@{utl\+::out\+\_\+dev}}
|
|
\subsubsection{\texorpdfstring{put()}{put()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$typename impl\+\_\+t , typename data\+\_\+t , size\+\_\+t streamsize = 0$>$ \\
|
|
\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}} \mbox{\hyperlink{classutl_1_1out__dev}{utl\+::out\+\_\+dev}}$<$ impl\+\_\+t, data\+\_\+t, streamsize $>$\+::put (\begin{DoxyParamCaption}\item[{const data\+\_\+t $\ast$}]{data, }\item[{\mbox{\hyperlink{namespaceutl_a22cbecb50ee5c1032de66133e96cbac6}{size\+\_\+t}}}]{n }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
Put interface. This function should send a stream of data\+\_\+t objects to device.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em data} & Pointer to buffer indenting write to device. \\
|
|
\hline
|
|
{\em n} & The number of data of type data\+\_\+t to send \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
The number of transmitted items.
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 111 of file out\+\_\+dev.\+h.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
include/utl/dev/\mbox{\hyperlink{out__dev_8h}{out\+\_\+dev.\+h}}\end{DoxyCompactItemize}
|