\hypertarget{a00786}{\section{Open\+Mesh\+:\+:Loop\+Scheme\+Mask\+T$<$ T\+\_\+, cache\+\_\+size\+\_\+ $>$ Class Template Reference}
\label{a00786}\index{Open\+Mesh\+::\+Loop\+Scheme\+Mask\+T$<$ T\+\_\+, cache\+\_\+size\+\_\+ $>$@{Open\+Mesh\+::\+Loop\+Scheme\+Mask\+T$<$ T\+\_\+, cache\+\_\+size\+\_\+ $>$}}
}


{\ttfamily \#include $<$libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Core/\+Geometry/\+Loop\+Scheme\+Mask\+T.\+hh$>$}

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00786_a2ca8d450aef71e157dc36c078edb87ce}{enum \{ {\bfseries cache\+\_\+size} = cache\+\_\+size\+\_\+
 \}}\label{a00786_a2ca8d450aef71e157dc36c078edb87ce}

\item 
\hypertarget{a00786_a0f815ec9bb2e657f7a3f84d878f9ff5f}{typedef T\+\_\+ {\bfseries Scalar}}\label{a00786_a0f815ec9bb2e657f7a3f84d878f9ff5f}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00786_acbdea978ae019757ddbff2dbf9f5f170}{Scalar {\bfseries proj\+\_\+weight} (uint \+\_\+valence) const }\label{a00786_acbdea978ae019757ddbff2dbf9f5f170}

\item 
\hypertarget{a00786_a3806e0ec9a24f1c2e6ac6bbe9c85c41a}{Scalar {\bfseries limit\+\_\+weight} (uint \+\_\+valence) const }\label{a00786_a3806e0ec9a24f1c2e6ac6bbe9c85c41a}

\item 
\hypertarget{a00786_ad58fa94c6ca6038adb2ce964d0d18513}{Scalar {\bfseries step\+\_\+weight} (uint \+\_\+valence, uint \+\_\+step) const }\label{a00786_ad58fa94c6ca6038adb2ce964d0d18513}

\item 
\hypertarget{a00786_aac15dc2b5e4b57b53cc225fbe8fd1efd}{Scalar {\bfseries tang0\+\_\+weight} (uint \+\_\+valence, uint \+\_\+ver\+\_\+id) const }\label{a00786_aac15dc2b5e4b57b53cc225fbe8fd1efd}

\item 
\hypertarget{a00786_ab4ca5c047cd362258939e37875d73a7c}{Scalar {\bfseries tang1\+\_\+weight} (uint \+\_\+valence, uint \+\_\+ver\+\_\+id) const }\label{a00786_ab4ca5c047cd362258939e37875d73a7c}

\item 
\hypertarget{a00786_a0b20b73b3e1d2085170c4f4a19d971a5}{void {\bfseries dump} (uint \+\_\+max\+\_\+valency=cache\+\_\+size-\/1) const }\label{a00786_a0b20b73b3e1d2085170c4f4a19d971a5}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00786_a10b947070422ff2faff866ec549ea16f}{void {\bfseries cache\+\_\+weights} ()}\label{a00786_a10b947070422ff2faff866ec549ea16f}

\end{DoxyCompactItemize}
\subsection*{Static Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00786_a197b41d65d2d79b476357146bb457921}{static Scalar {\bfseries compute\+\_\+proj\+\_\+weight} (uint \+\_\+valence)}\label{a00786_a197b41d65d2d79b476357146bb457921}

\item 
\hypertarget{a00786_a45fbfb0f3843c64a7b227f4cd34919fa}{static Scalar {\bfseries compute\+\_\+limit\+\_\+weight} (uint \+\_\+valence)}\label{a00786_a45fbfb0f3843c64a7b227f4cd34919fa}

\item 
\hypertarget{a00786_ae2c973f5129e4051fb46bea6ecbf9a4d}{static Scalar {\bfseries compute\+\_\+step\+\_\+weight} (uint \+\_\+valence)}\label{a00786_ae2c973f5129e4051fb46bea6ecbf9a4d}

\item 
\hypertarget{a00786_a0ca6cbf8744e8c0910dfbbb8dbcb6655}{static Scalar {\bfseries compute\+\_\+tang0\+\_\+weight} (uint \+\_\+valence, uint \+\_\+ver\+\_\+id)}\label{a00786_a0ca6cbf8744e8c0910dfbbb8dbcb6655}

\item 
\hypertarget{a00786_a051e64db92d06bd72490b63f193fedde}{static Scalar {\bfseries compute\+\_\+tang1\+\_\+weight} (uint \+\_\+valence, uint \+\_\+ver\+\_\+id)}\label{a00786_a051e64db92d06bd72490b63f193fedde}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00786_a201247c73dbc940b06adfbf6b6661af3}{Scalar {\bfseries proj\+\_\+weights\+\_\+} \mbox{[}cache\+\_\+size\mbox{]}}\label{a00786_a201247c73dbc940b06adfbf6b6661af3}

\item 
\hypertarget{a00786_a8fc9781741937caeb34fac4abf252e05}{Scalar {\bfseries limit\+\_\+weights\+\_\+} \mbox{[}cache\+\_\+size\mbox{]}}\label{a00786_a8fc9781741937caeb34fac4abf252e05}

\item 
\hypertarget{a00786_aad3108336bda6bc7a6a70b53cca3a43a}{Scalar {\bfseries step\+\_\+weights\+\_\+} \mbox{[}cache\+\_\+size\mbox{]}}\label{a00786_aad3108336bda6bc7a6a70b53cca3a43a}

\item 
\hypertarget{a00786_a33077b36397d36ada75a5bbdbb2479f2}{std\+::vector$<$ Scalar $>$ {\bfseries tang0\+\_\+weights\+\_\+} \mbox{[}cache\+\_\+size\mbox{]}}\label{a00786_a33077b36397d36ada75a5bbdbb2479f2}

\item 
\hypertarget{a00786_a9f3a55d7d78f363622f60b1b31ceba08}{std\+::vector$<$ Scalar $>$ {\bfseries tang1\+\_\+weights\+\_\+} \mbox{[}cache\+\_\+size\mbox{]}}\label{a00786_a9f3a55d7d78f363622f60b1b31ceba08}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class T\+\_\+, unsigned int cache\+\_\+size\+\_\+ = 100$>$class Open\+Mesh\+::\+Loop\+Scheme\+Mask\+T$<$ T\+\_\+, cache\+\_\+size\+\_\+ $>$}

implements cache for the weights of the original Loop scheme supported\+:
\begin{DoxyItemize}
\item vertex projection rule on the next level
\item vertex projection rule on the limit surface
\item vertex projection rule on the k-\/th (level) step (Barthe, Kobbelt'2003)
\item vertex tangents on the limit surface 
\end{DoxyItemize}

Definition at line 71 of file Loop\+Scheme\+Mask\+T.\+hh.



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