\hypertarget{class_s_c_i_run_1_1_v_mesh_1_1_elem}{\section{V\-Mesh\-:\-:Elem Class Reference}
\label{class_s_c_i_run_1_1_v_mesh_1_1_elem}\index{V\-Mesh\-::\-Elem@{V\-Mesh\-::\-Elem}}
}


{\ttfamily \#include $<$V\-Mesh.\-h$>$}

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \hyperlink{struct_s_c_i_run_1_1_v_elem_iterator}{V\-Elem\-Iterator}\\*
$<$ \hyperlink{class_s_c_i_run_1_1_v_mesh_a1f6a952c3acbba342540b49d049d389e}{V\-Mesh\-::index\-\_\-type} $>$ \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_elem_a8efe1e38f9c4d1bbe6ae92565ece7e25}{iterator}
\item 
typedef \hyperlink{struct_s_c_i_run_1_1_v_elem_index}{V\-Elem\-Index}\\*
$<$ \hyperlink{class_s_c_i_run_1_1_v_mesh_a1f6a952c3acbba342540b49d049d389e}{V\-Mesh\-::index\-\_\-type} $>$ \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_elem_a0e669edb7dd119c7e3d5e13eb2cf41ad}{index\-\_\-type}
\item 
typedef \hyperlink{struct_s_c_i_run_1_1_v_elem_index}{V\-Elem\-Index}\\*
$<$ \hyperlink{class_s_c_i_run_1_1_v_mesh_ae0e9f814a9e9b50f02283e9dee74f9a9}{V\-Mesh\-::size\-\_\-type} $>$ \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_elem_ad7c59571aa6ffdc33d449ddc5c71cba7}{size\-\_\-type}
\item 
typedef \hyperlink{class_s_c_i_run_1_1_stack_based_vector}{Stack\-Based\-Vector}\\*
$<$ \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_elem_a0e669edb7dd119c7e3d5e13eb2cf41ad}{index\-\_\-type}, 12 $>$ \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_elem_ae7ad39ba7bafaaeca7794b3ddf6561df}{array\-\_\-type}
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Class for indexing elements Elements denote the highest topology in the mesh. For example for Tri\-Surf\-Meshes it denotes the faces of the surface, however for the \hyperlink{class_s_c_i_run_1_1_hex_vol_mesh}{Hex\-Vol\-Mesh} it denotes the volumetric elements \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_elem}{Elem} has become a replacement for most \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_edge}{Edge}, \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_face}{Face}, and \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_cell}{Cell} index types and can be used in more functions. The reason this one is preferred is that it allows the user to write code that works on any type of mesh without having to think about the dimensionality of the elements. Only when dimensionality is important the \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_edge}{Edge}, \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_face}{Face}, and \hyperlink{class_s_c_i_run_1_1_v_mesh_1_1_cell}{Cell} indices should be used. 

\subsection{Member Typedef Documentation}
\hypertarget{class_s_c_i_run_1_1_v_mesh_1_1_elem_ae7ad39ba7bafaaeca7794b3ddf6561df}{\index{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}!array\-\_\-type@{array\-\_\-type}}
\index{array\-\_\-type@{array\-\_\-type}!SCIRun::VMesh::Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}}
\subsubsection[{array\-\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Stack\-Based\-Vector}$<${\bf index\-\_\-type},12$>$ {\bf array\-\_\-type}}}\label{class_s_c_i_run_1_1_v_mesh_1_1_elem_ae7ad39ba7bafaaeca7794b3ddf6561df}
\hypertarget{class_s_c_i_run_1_1_v_mesh_1_1_elem_a0e669edb7dd119c7e3d5e13eb2cf41ad}{\index{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}!index\-\_\-type@{index\-\_\-type}}
\index{index\-\_\-type@{index\-\_\-type}!SCIRun::VMesh::Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}}
\subsubsection[{index\-\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf V\-Elem\-Index}$<${\bf V\-Mesh\-::index\-\_\-type}$>$ {\bf index\-\_\-type}}}\label{class_s_c_i_run_1_1_v_mesh_1_1_elem_a0e669edb7dd119c7e3d5e13eb2cf41ad}
\hypertarget{class_s_c_i_run_1_1_v_mesh_1_1_elem_a8efe1e38f9c4d1bbe6ae92565ece7e25}{\index{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}!iterator@{iterator}}
\index{iterator@{iterator}!SCIRun::VMesh::Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}}
\subsubsection[{iterator}]{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf V\-Elem\-Iterator}$<${\bf V\-Mesh\-::index\-\_\-type}$>$ {\bf iterator}}}\label{class_s_c_i_run_1_1_v_mesh_1_1_elem_a8efe1e38f9c4d1bbe6ae92565ece7e25}
\hypertarget{class_s_c_i_run_1_1_v_mesh_1_1_elem_ad7c59571aa6ffdc33d449ddc5c71cba7}{\index{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}!size\-\_\-type@{size\-\_\-type}}
\index{size\-\_\-type@{size\-\_\-type}!SCIRun::VMesh::Elem@{S\-C\-I\-Run\-::\-V\-Mesh\-::\-Elem}}
\subsubsection[{size\-\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf V\-Elem\-Index}$<${\bf V\-Mesh\-::size\-\_\-type}$>$ {\bf size\-\_\-type}}}\label{class_s_c_i_run_1_1_v_mesh_1_1_elem_ad7c59571aa6ffdc33d449ddc5c71cba7}


The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
Core/\-Datatypes/\-Legacy/\-Field/\hyperlink{_v_mesh_8h}{V\-Mesh.\-h}\end{DoxyCompactItemize}
