\hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{}\section{Open\+Mesh\+:\+:Iterators\+:\+:Generic\+IteratorT$<$ Mesh, Value\+Handle, Member\+Owner, Primitive\+Status\+Member, Primitive\+Count\+Member $>$ Class Template Reference}
\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT}\index{Open\+Mesh\+::\+Iterators\+::\+Generic\+Iterator\+T$<$ Mesh, Value\+Handle, Member\+Owner, Primitive\+Status\+Member, Primitive\+Count\+Member $>$@{Open\+Mesh\+::\+Iterators\+::\+Generic\+Iterator\+T$<$ Mesh, Value\+Handle, Member\+Owner, Primitive\+Status\+Member, Primitive\+Count\+Member $>$}}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a1299f511741d25fb21b5c899699bda89}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a1299f511741d25fb21b5c899699bda89}} 
typedef Value\+Handle {\bfseries value\+\_\+handle}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa6e1c25ce6a57bd9951626f6a0ad6bbe}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa6e1c25ce6a57bd9951626f6a0ad6bbe}} 
typedef value\+\_\+handle {\bfseries value\+\_\+type}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a2f56a296ceed8e646e670e283451507d}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a2f56a296ceed8e646e670e283451507d}} 
typedef std\+::bidirectional\+\_\+iterator\+\_\+tag {\bfseries iterator\+\_\+category}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a1e9dff487b994ffc60fb41c463f32bf3}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a1e9dff487b994ffc60fb41c463f32bf3}} 
typedef std\+::ptrdiff\+\_\+t {\bfseries difference\+\_\+type}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a7108bc7ff422cfe6cddb34469b55fd00}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a7108bc7ff422cfe6cddb34469b55fd00}} 
typedef const \hyperlink{classOpenMesh_1_1TriMesh__ArrayKernelT}{Mesh} $\ast$ {\bfseries mesh\+\_\+ptr}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_af3a626d87c170679d4192ecf4966a025}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_af3a626d87c170679d4192ecf4966a025}} 
typedef const \hyperlink{classOpenMesh_1_1TriMesh__ArrayKernelT}{Mesh} \& {\bfseries mesh\+\_\+ref}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_ae596a810afe8285909bdf82793c0795b}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_ae596a810afe8285909bdf82793c0795b}} 
typedef const \hyperlink{structOpenMesh_1_1SmartHandle}{Smart\+Handle} \& {\bfseries reference}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a46ba35cd8895110472e14ac04972c575}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a46ba35cd8895110472e14ac04972c575}} 
typedef const \hyperlink{structOpenMesh_1_1SmartHandle}{Smart\+Handle} $\ast$ {\bfseries pointer}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a6cecca78525d76fe52d0490fdd211b00}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a6cecca78525d76fe52d0490fdd211b00}} 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a6cecca78525d76fe52d0490fdd211b00}{Generic\+IteratorT} ()
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a5c6bfa063f3e7f9f27b44d4bc75cc682}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a5c6bfa063f3e7f9f27b44d4bc75cc682}} 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a5c6bfa063f3e7f9f27b44d4bc75cc682}{Generic\+IteratorT} (\hyperlink{classOpenMesh_1_1TriMesh__ArrayKernelT}{mesh\+\_\+ref} \+\_\+mesh, value\+\_\+handle \+\_\+hnd, bool \+\_\+skip=false)
\begin{DoxyCompactList}\small\item\em Construct with mesh and a target handle. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a9d1c92794897df808a433858f4114198}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a9d1c92794897df808a433858f4114198}} 
\hyperlink{structOpenMesh_1_1SmartHandle}{reference} \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a9d1c92794897df808a433858f4114198}{operator$\ast$} () const
\begin{DoxyCompactList}\small\item\em Standard dereferencing operator. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a79b47c7e6187e154c843cd221c54bfbf}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a79b47c7e6187e154c843cd221c54bfbf}} 
\hyperlink{structOpenMesh_1_1SmartHandle}{pointer} \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a79b47c7e6187e154c843cd221c54bfbf}{operator-\/$>$} () const
\begin{DoxyCompactList}\small\item\em Standard pointer operator. \end{DoxyCompactList}\item 
value\+\_\+handle \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_ae7c0787dc36b622d71271bf64a1af3ff}{handle} () const
\begin{DoxyCompactList}\small\item\em Get the handle of the item the iterator refers to. \end{DoxyCompactList}\item 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a2a96dd08f32e4b2391f542e53f5a8c8c}{operator value\+\_\+handle} () const
\begin{DoxyCompactList}\small\item\em Cast to the handle of the item the iterator refers to. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa834fa8e32ca42a4bebf714e030f63fb}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa834fa8e32ca42a4bebf714e030f63fb}} 
bool \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa834fa8e32ca42a4bebf714e030f63fb}{operator==} (const \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Generic\+IteratorT} \&\+\_\+rhs) const
\begin{DoxyCompactList}\small\item\em Are two iterators equal? Only valid if they refer to the same mesh! \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_af5b99b1b7f744e42373001b2aa6147d2}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_af5b99b1b7f744e42373001b2aa6147d2}} 
bool \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_af5b99b1b7f744e42373001b2aa6147d2}{operator!=} (const \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Generic\+IteratorT} \&\+\_\+rhs) const
\begin{DoxyCompactList}\small\item\em Not equal? \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a65f48b36dd8ea69fa4a6e0662a65280e}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a65f48b36dd8ea69fa4a6e0662a65280e}} 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Generic\+IteratorT} \& \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a65f48b36dd8ea69fa4a6e0662a65280e}{operator++} ()
\begin{DoxyCompactList}\small\item\em Standard pre-\/increment operator. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a7fe3ea57330fe770267bc3f383fb8e96}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a7fe3ea57330fe770267bc3f383fb8e96}} 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Generic\+IteratorT} \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a7fe3ea57330fe770267bc3f383fb8e96}{operator++} (int)
\begin{DoxyCompactList}\small\item\em Standard post-\/increment operator. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_acf8e53a6668bcbcf668c63343b97e5ce}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_acf8e53a6668bcbcf668c63343b97e5ce}} 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Generic\+IteratorT} \& \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_acf8e53a6668bcbcf668c63343b97e5ce}{operator-\/-\/} ()
\begin{DoxyCompactList}\small\item\em Standard pre-\/decrement operator. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a528e2f310c2dc7a39b55137d6db07b29}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a528e2f310c2dc7a39b55137d6db07b29}} 
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Generic\+IteratorT} \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a528e2f310c2dc7a39b55137d6db07b29}{operator-\/-\/} (int)
\begin{DoxyCompactList}\small\item\em Standard post-\/decrement operator. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a93aa0c48ebdd5fd7b7bba15e8b9035b6}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a93aa0c48ebdd5fd7b7bba15e8b9035b6}} 
void \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a93aa0c48ebdd5fd7b7bba15e8b9035b6}{enable\+\_\+skipping} ()
\begin{DoxyCompactList}\small\item\em Turn on skipping\+: automatically skip deleted/hidden elements. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a159d814a1b199b9e780e9d5d69af4a03}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a159d814a1b199b9e780e9d5d69af4a03}} 
void \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a159d814a1b199b9e780e9d5d69af4a03}{disable\+\_\+skipping} ()
\begin{DoxyCompactList}\small\item\em Turn on skipping\+: automatically skip deleted/hidden elements. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a61ebbcecdd3a90a7b49dfb071dea9df6}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a61ebbcecdd3a90a7b49dfb071dea9df6}} 
decltype(\hyperlink{namespaceOpenMesh_a01823bd95e3ef1afee35b1abc97c754f}{make\+\_\+smart}(std\+::declval$<$ Value\+Handle $>$(), std\+::declval$<$ \hyperlink{classOpenMesh_1_1TriMesh__ArrayKernelT}{Mesh} $>$())) typedef {\bfseries Smart\+Handle}
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa7ad2a011af2cf6d961cb9058bebc72b}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_aa7ad2a011af2cf6d961cb9058bebc72b}} 
\hyperlink{structOpenMesh_1_1SmartHandle}{Smart\+Handle} {\bfseries hnd\+\_\+}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a4583e32a7c3961dedd5ebf309d172fa0}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a4583e32a7c3961dedd5ebf309d172fa0}} 
unsigned int {\bfseries skip\+\_\+bits\+\_\+}
\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a56667920be7f985f8efda77587576322}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a56667920be7f985f8efda77587576322}} 
void {\bfseries skip\+\_\+fwd} ()
\item 
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a00a98a0b25df38f2209704859495d220}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a00a98a0b25df38f2209704859495d220}} 
void {\bfseries skip\+\_\+bwd} ()
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class Mesh, class Value\+Handle, class Member\+Owner, bool(\+Member\+Owner\+::$\ast$)() const Primitive\+Status\+Member, size\+\_\+t(\+Member\+Owner\+::$\ast$)() const Primitive\+Count\+Member$>$\newline
class Open\+Mesh\+::\+Iterators\+::\+Generic\+Iterator\+T$<$ Mesh, Value\+Handle, Member\+Owner, Primitive\+Status\+Member, Primitive\+Count\+Member $>$}



Definition at line 83 of file Iterators\+T.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_ae7c0787dc36b622d71271bf64a1af3ff}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_ae7c0787dc36b622d71271bf64a1af3ff}} 
\index{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT@{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT}!handle@{handle}}
\index{handle@{handle}!Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT@{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT}}
\subsubsection{\texorpdfstring{handle()}{handle()}}
{\footnotesize\ttfamily template$<$class Mesh , class Value\+Handle , class Member\+Owner , bool(\+Member\+Owner\+::$\ast$)() const Primitive\+Status\+Member, size\+\_\+t(\+Member\+Owner\+::$\ast$)() const Primitive\+Count\+Member$>$ \\
value\+\_\+handle \hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT}$<$ \hyperlink{classOpenMesh_1_1TriMesh__ArrayKernelT}{Mesh}, Value\+Handle, Member\+Owner, Primitive\+Status\+Member, Primitive\+Count\+Member $>$\+::handle (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Get the handle of the item the iterator refers to. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000007}{Deprecated}]This function clutters your code. Use dereferencing operators -\/$>$ and $\ast$ instead. \end{DoxyRefDesc}


Definition at line 125 of file Iterators\+T.\+hh.

\mbox{\Hypertarget{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a2a96dd08f32e4b2391f542e53f5a8c8c}\label{classOpenMesh_1_1Iterators_1_1GenericIteratorT_a2a96dd08f32e4b2391f542e53f5a8c8c}} 
\index{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT@{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT}!operator value\+\_\+handle@{operator value\+\_\+handle}}
\index{operator value\+\_\+handle@{operator value\+\_\+handle}!Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT@{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT}}
\subsubsection{\texorpdfstring{operator value\+\_\+handle()}{operator value\_handle()}}
{\footnotesize\ttfamily template$<$class Mesh , class Value\+Handle , class Member\+Owner , bool(\+Member\+Owner\+::$\ast$)() const Primitive\+Status\+Member, size\+\_\+t(\+Member\+Owner\+::$\ast$)() const Primitive\+Count\+Member$>$ \\
\hyperlink{classOpenMesh_1_1Iterators_1_1GenericIteratorT}{Open\+Mesh\+::\+Iterators\+::\+Generic\+IteratorT}$<$ \hyperlink{classOpenMesh_1_1TriMesh__ArrayKernelT}{Mesh}, Value\+Handle, Member\+Owner, Primitive\+Status\+Member, Primitive\+Count\+Member $>$\+::operator value\+\_\+handle (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}



Cast to the handle of the item the iterator refers to. 

\begin{DoxyRefDesc}{Deprecated}
\item[\hyperlink{deprecated__deprecated000008}{Deprecated}]Implicit casts of iterators are unsafe. Use dereferencing operators -\/$>$ and $\ast$ instead. \end{DoxyRefDesc}


Definition at line 136 of file Iterators\+T.\+hh.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+Mesh/Iterators\+T.\+hh\end{DoxyCompactItemize}
