\hypertarget{a00820}{\section{A\+C\+G\+:\+:Mesh\+Compiler\+Face\+Input Class Reference}
\label{a00820}\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
}
Inheritance diagram for A\+C\+G\+:\+:Mesh\+Compiler\+Face\+Input\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{a00820}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00820_a0ca0c193d01e1198253d9e3bdd9cf743}{virtual int {\bfseries get\+Num\+Faces} () const =0}\label{a00820_a0ca0c193d01e1198253d9e3bdd9cf743}

\item 
virtual int \hyperlink{a00820_a46d97b3dc907594c9a3db5a2c6f75861}{get\+Num\+Indices} () const =0
\item 
virtual int \hyperlink{a00820_a8ecea4ae3be27075e8d2ab4b54433be5}{get\+Face\+Size} (const int \+\_\+face\+I\+D) const =0
\item 
virtual int \hyperlink{a00820_afb6f2e2ef7397447a094e833e0bbb150}{get\+Single\+Face\+Attr} (const int \+\_\+face\+I\+D, const int \+\_\+face\+Corner, const int \+\_\+attr\+I\+D) const 
\item 
virtual bool \hyperlink{a00820_a6f07f52460ababef5bde73bbfe4d76bb}{get\+Face\+Attr} (const int \+\_\+face\+I\+D, const int \+\_\+attr\+I\+D, int $\ast$\+\_\+out) const 
\item 
virtual int $\ast$ \hyperlink{a00820_ad55a4562dc9b1402b9249ae9637c9687}{get\+Face\+Attr} (const int \+\_\+face\+I\+D, const int \+\_\+attr\+I\+D) const 
\item 
virtual int \hyperlink{a00820_ab8c30922a8d9e83afa0b3398fa77d480}{get\+Vertex\+Adj\+Count} (const int \+\_\+vertex\+I\+D) const 
\item 
virtual int \hyperlink{a00820_adb2c46ac9330e3f3b83a678cba43e5c8}{get\+Vertex\+Adj\+Face} (const int \+\_\+vertex\+I\+D, const int \+\_\+k) const 
\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 134 of file Mesh\+Compiler.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a00820_a6f07f52460ababef5bde73bbfe4d76bb}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Face\+Attr@{get\+Face\+Attr}}
\index{get\+Face\+Attr@{get\+Face\+Attr}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Face\+Attr}]{\setlength{\rightskip}{0pt plus 5cm}virtual bool A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Face\+Attr (
\begin{DoxyParamCaption}
\item[{const int}]{\+\_\+face\+I\+D, }
\item[{const int}]{\+\_\+attr\+I\+D, }
\item[{int $\ast$}]{\+\_\+out}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00820_a6f07f52460ababef5bde73bbfe4d76bb}
Get an index buffer of a face for a specific attribute channel. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+I\+D} & face index \\
\hline
{\em \+\_\+attr\+I\+D} & 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 in \hyperlink{a00506_a2b300ed027572c11af6457891880683e}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}, and \hyperlink{a00818_a13e628e98b8f4d20f34760f0c39352ba}{A\+C\+G\+::\+Mesh\+Compiler\+Default\+Face\+Input}.



Definition at line 171 of file Mesh\+Compiler.\+hh.

\hypertarget{a00820_ad55a4562dc9b1402b9249ae9637c9687}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Face\+Attr@{get\+Face\+Attr}}
\index{get\+Face\+Attr@{get\+Face\+Attr}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Face\+Attr}]{\setlength{\rightskip}{0pt plus 5cm}virtual int$\ast$ A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Face\+Attr (
\begin{DoxyParamCaption}
\item[{const int}]{\+\_\+face\+I\+D, }
\item[{const int}]{\+\_\+attr\+I\+D}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00820_ad55a4562dc9b1402b9249ae9637c9687}
Get an index buffer of a face for a specific attribute channel. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+I\+D} & face index \\
\hline
{\em \+\_\+attr\+I\+D} & 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 in \hyperlink{a00506_a4abac979694e1d1c2cce5e0dd54d168b}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}.



Definition at line 178 of file Mesh\+Compiler.\+hh.

\hypertarget{a00820_a8ecea4ae3be27075e8d2ab4b54433be5}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Face\+Size@{get\+Face\+Size}}
\index{get\+Face\+Size@{get\+Face\+Size}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Face\+Size}]{\setlength{\rightskip}{0pt plus 5cm}virtual int A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Face\+Size (
\begin{DoxyParamCaption}
\item[{const int}]{\+\_\+face\+I\+D}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{a00820_a8ecea4ae3be27075e8d2ab4b54433be5}
Get number of vertices per face. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+face\+I\+D} & face index \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{a00506_a3313bb5273aeb74dcf5fb2a532099423}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}, and \hyperlink{a00818_a4a8ea35c8746c27544bf94906510e1f8}{A\+C\+G\+::\+Mesh\+Compiler\+Default\+Face\+Input}.

\hypertarget{a00820_a46d97b3dc907594c9a3db5a2c6f75861}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Num\+Indices@{get\+Num\+Indices}}
\index{get\+Num\+Indices@{get\+Num\+Indices}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Num\+Indices}]{\setlength{\rightskip}{0pt plus 5cm}virtual int A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Num\+Indices (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [pure virtual]}}}\label{a00820_a46d97b3dc907594c9a3db5a2c6f75861}
Get total number of indices in one attribute channel.

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

Implemented in \hyperlink{a00506_a533b37f46048879ba6e62e668e509ed6}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}, and \hyperlink{a00818_aab4639fb84164397dc0b0f2eb69911e5}{A\+C\+G\+::\+Mesh\+Compiler\+Default\+Face\+Input}.

\hypertarget{a00820_afb6f2e2ef7397447a094e833e0bbb150}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Single\+Face\+Attr@{get\+Single\+Face\+Attr}}
\index{get\+Single\+Face\+Attr@{get\+Single\+Face\+Attr}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Single\+Face\+Attr}]{\setlength{\rightskip}{0pt plus 5cm}int A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Single\+Face\+Attr (
\begin{DoxyParamCaption}
\item[{const int}]{\+\_\+face\+I\+D, }
\item[{const int}]{\+\_\+face\+Corner, }
\item[{const int}]{\+\_\+attr\+I\+D}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00820_afb6f2e2ef7397447a094e833e0bbb150}
Get a single vertex-\/index entry of a face.


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


Reimplemented in \hyperlink{a00506_ad5781369e09d75239759a387465db4a7}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}, and \hyperlink{a00818_aba9699f7ffea003ff82dfa77bfab6aa2}{A\+C\+G\+::\+Mesh\+Compiler\+Default\+Face\+Input}.



Definition at line 4152 of file Mesh\+Compiler.\+cc.

\hypertarget{a00820_ab8c30922a8d9e83afa0b3398fa77d480}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Vertex\+Adj\+Count@{get\+Vertex\+Adj\+Count}}
\index{get\+Vertex\+Adj\+Count@{get\+Vertex\+Adj\+Count}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Vertex\+Adj\+Count}]{\setlength{\rightskip}{0pt plus 5cm}virtual int A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Vertex\+Adj\+Count (
\begin{DoxyParamCaption}
\item[{const int}]{\+\_\+vertex\+I\+D}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00820_ab8c30922a8d9e83afa0b3398fa77d480}
Get the number of adjacent faces for a vertex. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+vertex\+I\+D} & vertex index \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
number of adjacent faces, return -\/1 if adjacency information unavailable 
\end{DoxyReturn}


Reimplemented in \hyperlink{a00506_aa64d630d1e44d6a80cc00dfdf4ed996e}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}, and \hyperlink{a01130_a260e9bdc854d52a30ce4768712ee64dd}{S\+B\+F\+Reader}.



Definition at line 188 of file Mesh\+Compiler.\+hh.

\hypertarget{a00820_adb2c46ac9330e3f3b83a678cba43e5c8}{\index{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}!get\+Vertex\+Adj\+Face@{get\+Vertex\+Adj\+Face}}
\index{get\+Vertex\+Adj\+Face@{get\+Vertex\+Adj\+Face}!A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input@{A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input}}
\subsubsection[{get\+Vertex\+Adj\+Face}]{\setlength{\rightskip}{0pt plus 5cm}virtual int A\+C\+G\+::\+Mesh\+Compiler\+Face\+Input\+::get\+Vertex\+Adj\+Face (
\begin{DoxyParamCaption}
\item[{const int}]{\+\_\+vertex\+I\+D, }
\item[{const int}]{\+\_\+k}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00820_adb2c46ac9330e3f3b83a678cba43e5c8}
Get the index of an adjacent face for a vertex. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+vertex\+I\+D} & 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 in \hyperlink{a00506_afe7ce7eba720c8da626261d99ca431a4}{A\+C\+G\+::\+Draw\+Mesh\+Face\+Input$<$ Mesh $>$}, and \hyperlink{a01130_a7f9577359f78830a83575c005d689fe3}{S\+B\+F\+Reader}.



Definition at line 195 of file Mesh\+Compiler.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
A\+C\+G/\+G\+L/Mesh\+Compiler.\+hh\item 
A\+C\+G/\+G\+L/Mesh\+Compiler.\+cc\end{DoxyCompactItemize}
