\hypertarget{a07300}{}\section{A\+CG\+:\+:Draw\+Mesh\+Face\+Input$<$ Mesh $>$ Class Template Reference}
\label{a07300}\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}}
Inheritance diagram for A\+CG\+:\+:Draw\+Mesh\+Face\+Input$<$ Mesh $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a07300}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a07300_a8364b2f0658476e43b5f2882cb703deb}\label{a07300_a8364b2f0658476e43b5f2882cb703deb}} 
{\bfseries Draw\+Mesh\+Face\+Input} (\hyperlink{a08764}{Mesh} \&\+\_\+mesh)
\item 
\mbox{\Hypertarget{a07300_a2ae3f6508e4151fce13c342d962934a4}\label{a07300_a2ae3f6508e4151fce13c342d962934a4}} 
int {\bfseries get\+Num\+Faces} () const
\item 
int \hyperlink{a07300_a22cf9dd0b1b65d6e3fbdc0a22e7b158a}{get\+Num\+Indices} () const
\item 
int \hyperlink{a07300_af8b374e6d4d352b1653de002bc4772fd}{get\+Face\+Size} (const int \+\_\+face\+ID) const
\item 
int \hyperlink{a07300_a2026a199b2fa02082c89a133fb930a1a}{get\+Single\+Face\+Attr} (const int \+\_\+face\+ID, const int \+\_\+face\+Corner, const int \+\_\+attr\+ID) const
\item 
bool \hyperlink{a07300_ae442e20775a4312befc7ab300d139d51}{get\+Face\+Attr} (const int \+\_\+face\+ID, const int \+\_\+attr\+ID, int $\ast$\+\_\+out) const
\item 
int $\ast$ \hyperlink{a07300_a8680ebb7f00fd9be443bd6864078001c}{get\+Face\+Attr} (const int \+\_\+face\+ID, const int \+\_\+attr\+ID) const
\item 
int \hyperlink{a07300_ae10264a07e857285bfdf33e0b1e4a463}{get\+Vertex\+Adj\+Count} (const int \+\_\+vertex\+ID) const
\item 
int \hyperlink{a07300_a71eb1b4c919cd7a079372aa3a9f8b114}{get\+Vertex\+Adj\+Face} (const int \+\_\+vertex\+ID, const int \+\_\+k) const
\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a07300_aceab4309335c7d87c450a5497ab84484}\label{a07300_aceab4309335c7d87c450a5497ab84484}} 
std\+::vector$<$ int $>$ {\bfseries attribute\+Stored\+Per\+Halfedge\+\_\+}
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a07300_a60b931e741eef238d5826501f875d7d1}\label{a07300_a60b931e741eef238d5826501f875d7d1}} 
\hyperlink{a08764}{Mesh} \& {\bfseries mesh\+\_\+}
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class Mesh$>$\newline
class A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}



Definition at line 245 of file Draw\+Mesh\+T\+\_\+impl.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a07300_ae442e20775a4312befc7ab300d139d51}\label{a07300_ae442e20775a4312befc7ab300d139d51}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Face\+Attr@{get\+Face\+Attr}}
\index{get\+Face\+Attr@{get\+Face\+Attr}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Face\+Attr()}{getFaceAttr()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
bool \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Face\+Attr (\begin{DoxyParamCaption}\item[{const int}]{\+\_\+face\+ID,  }\item[{const int}]{\+\_\+attr\+ID,  }\item[{int $\ast$}]{\+\_\+out }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get an index buffer of a face for a specific attribute channel. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+ID} & face index \\
\hline
{\em \+\_\+attr\+ID} & attribute channel \\
\hline
{\em \+\_\+out} & pointer to output buffer, use get\+Face\+Size(\+\_\+face\+I\+D) to get the size needed to store face data \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if successful, false otherwise 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07488_a019fdd5fc6453c11d6aa3b29d42d5087}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 341 of file Draw\+Mesh\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{a07300_a8680ebb7f00fd9be443bd6864078001c}\label{a07300_a8680ebb7f00fd9be443bd6864078001c}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Face\+Attr@{get\+Face\+Attr}}
\index{get\+Face\+Attr@{get\+Face\+Attr}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Face\+Attr()}{getFaceAttr()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
int$\ast$ \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Face\+Attr (\begin{DoxyParamCaption}\item[{const int}]{\+\_\+face\+ID,  }\item[{const int}]{\+\_\+attr\+ID }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get an index buffer of a face for a specific attribute channel. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+ID} & face index \\
\hline
{\em \+\_\+attr\+ID} & attribute channel \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
array data of size \char`\"{}get\+Face\+Size(\+\_\+face\+I\+D)\char`\"{}, allowed to return 0 when array data not permanently available in memory 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07488_a447176453b9af7b22f9e9984aed9690c}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 362 of file Draw\+Mesh\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{a07300_af8b374e6d4d352b1653de002bc4772fd}\label{a07300_af8b374e6d4d352b1653de002bc4772fd}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Face\+Size@{get\+Face\+Size}}
\index{get\+Face\+Size@{get\+Face\+Size}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Face\+Size()}{getFaceSize()}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
int \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Face\+Size (\begin{DoxyParamCaption}\item[{const int}]{\+\_\+face\+ID }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get number of vertices per face. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+ID} & face index \\
\hline
\end{DoxyParams}


Implements \hyperlink{a07488_a8ecea4ae3be27075e8d2ab4b54433be5}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 267 of file Draw\+Mesh\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{a07300_a22cf9dd0b1b65d6e3fbdc0a22e7b158a}\label{a07300_a22cf9dd0b1b65d6e3fbdc0a22e7b158a}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Num\+Indices@{get\+Num\+Indices}}
\index{get\+Num\+Indices@{get\+Num\+Indices}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Num\+Indices()}{getNumIndices()}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
int \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Num\+Indices (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get total number of indices in one attribute channel.

i.\+e. total number of position indices of the whole mesh 

Implements \hyperlink{a07488_a46d97b3dc907594c9a3db5a2c6f75861}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 262 of file Draw\+Mesh\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{a07300_a2026a199b2fa02082c89a133fb930a1a}\label{a07300_a2026a199b2fa02082c89a133fb930a1a}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Single\+Face\+Attr@{get\+Single\+Face\+Attr}}
\index{get\+Single\+Face\+Attr@{get\+Single\+Face\+Attr}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Single\+Face\+Attr()}{getSingleFaceAttr()}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
int \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Single\+Face\+Attr (\begin{DoxyParamCaption}\item[{const int}]{\+\_\+face\+ID,  }\item[{const int}]{\+\_\+face\+Corner,  }\item[{const int}]{\+\_\+attr\+ID }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get a single vertex-\/index entry of a face.


\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+ID} & face index \\
\hline
{\em \+\_\+face\+Corner} & vertex corner of the face \\
\hline
{\em \+\_\+attr\+ID} & attribute channel \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
index-\/data if successful, -\/1 otherwise 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07488_a3157a5d0c73c9561885c7822c7535780}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 279 of file Draw\+Mesh\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{a07300_ae10264a07e857285bfdf33e0b1e4a463}\label{a07300_ae10264a07e857285bfdf33e0b1e4a463}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Vertex\+Adj\+Count@{get\+Vertex\+Adj\+Count}}
\index{get\+Vertex\+Adj\+Count@{get\+Vertex\+Adj\+Count}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Vertex\+Adj\+Count()}{getVertexAdjCount()}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
int \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Vertex\+Adj\+Count (\begin{DoxyParamCaption}\item[{const int}]{\+\_\+vertex\+ID }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get the number of adjacent faces for a vertex. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+vertex\+ID} & vertex index \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
number of adjacent faces, return -\/1 if adjacency information unavailable 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07488_a1f1309f17f13d5be38c4918acc87dfb4}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 370 of file Draw\+Mesh\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{a07300_a71eb1b4c919cd7a079372aa3a9f8b114}\label{a07300_a71eb1b4c919cd7a079372aa3a9f8b114}} 
\index{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}!get\+Vertex\+Adj\+Face@{get\+Vertex\+Adj\+Face}}
\index{get\+Vertex\+Adj\+Face@{get\+Vertex\+Adj\+Face}!A\+C\+G\+::\+Draw\+Mesh\+Face\+Input@{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}}
\subsubsection{\texorpdfstring{get\+Vertex\+Adj\+Face()}{getVertexAdjFace()}}
{\footnotesize\ttfamily template$<$class Mesh$>$ \\
int \hyperlink{a07300}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input}$<$ \hyperlink{a08764}{Mesh} $>$\+::get\+Vertex\+Adj\+Face (\begin{DoxyParamCaption}\item[{const int}]{\+\_\+vertex\+ID,  }\item[{const int}]{\+\_\+k }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Get the index of an adjacent face for a vertex. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+vertex\+ID} & vertex index \\
\hline
{\em \+\_\+k} & adjacency list entry in range \mbox{[}0, .., adj\+Count -\/ 1\mbox{]} \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
face id of adjacent face, return -\/1 if adjacency information is available 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07488_ab540d39e2a7e1007863acfca35b239b6}{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}.



Definition at line 384 of file Draw\+Mesh\+T\+\_\+impl.\+hh.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+A\+C\+G/\+G\+L/Draw\+Mesh\+T\+\_\+impl.\+hh\end{DoxyCompactItemize}
