\hypertarget{group__Eina__Matrix__Group}{}\doxysection{Matrix}
\label{group__Eina__Matrix__Group}\index{Matrix@{Matrix}}


Eina includes a family of matrix types of different dimension sizes and underlying data types.  


\doxysubsection*{Modules}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Eina__Matrix3__Group}{3x3 floating point matrices}}
\begin{DoxyCompactList}\small\item\em Definition and operations for 3x3 matrices. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Matrix4__Group}{4x4 Matrices in floating point}}
\begin{DoxyCompactList}\small\item\em Definition and operations for 4x4 matrices. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Matrix3__F16p16__Group}{3x3 Matrices in fixed point}}
\begin{DoxyCompactList}\small\item\em Definition and operations for 3x3 fixed point matrices. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Matrix2__Group}{2x2 Matrices in floating point}}
\begin{DoxyCompactList}\small\item\em Definition and operations for 2x3 matrices. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eina__Matrix__Group_ga3aec91bee6618dff67cb662d5136abbd}\label{group__Eina__Matrix__Group_ga3aec91bee6618dff67cb662d5136abbd}} 
typedef enum \mbox{\hyperlink{group__Eina__Matrix__Group_gac9e258fd0ef943c6c6f86d7a732b73f5}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Type}} \mbox{\hyperlink{group__Eina__Matrix__Group_ga3aec91bee6618dff67cb662d5136abbd}{Eina\+\_\+\+Matrix\+\_\+\+Type}}
\begin{DoxyCompactList}\small\item\em Matrix types. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eina__Matrix__Group_ga572a36a679f1cf322191a1425fe61e64}\label{group__Eina__Matrix__Group_ga572a36a679f1cf322191a1425fe61e64}} 
typedef enum \mbox{\hyperlink{group__Eina__Matrix__Group_ga33f39733eb13f69a2d4255f815ffbc24}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Axis}} \mbox{\hyperlink{group__Eina__Matrix__Group_ga572a36a679f1cf322191a1425fe61e64}{Eina\+\_\+\+Matrix\+\_\+\+Axis}}
\begin{DoxyCompactList}\small\item\em Matrix Axes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{group__Eina__Matrix__Group_gac9e258fd0ef943c6c6f86d7a732b73f5}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Type}} \{ \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5a3593bd6f89b1171d847fb6a5e901f862}{EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+IDENTITY}}
, \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ad225c3a0a95a5ec11da3009541cc0498}{EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+AFFINE}}
, \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ac64b44714c29f6cbe5273748853536fb}{EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+PROJECTIVE}}
, \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ab66882f2b0e75f88e7cb7a1d5909ca33}{EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+LAST}}
 \}
\item 
enum \mbox{\hyperlink{group__Eina__Matrix__Group_ga33f39733eb13f69a2d4255f815ffbc24}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Axis}} \{ \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24a8528d055a20d440dc1f8e3461303d603}{EINA\+\_\+\+MATRIX\+\_\+\+AXIS\+\_\+X}}
, \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24a55933c9d9280d0071007ecb00259116c}{EINA\+\_\+\+MATRIX\+\_\+\+AXIS\+\_\+Y}}
, \newline
\mbox{\hyperlink{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24ad8390de25b3586e94a510fc6dadca945}{EINA\+\_\+\+MATRIX\+\_\+\+AXIS\+\_\+Z}}
 \}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Eina includes a family of matrix types of different dimension sizes and underlying data types. 

Dimensions supported include 2x2, 3x3, and 4x4. A fixed point variation of the 3x3 matrix is also supported, which uses the Eina\+\_\+\+F16p16 (Q16.\+16) data type. 

\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{group__Eina__Matrix__Group_gac9e258fd0ef943c6c6f86d7a732b73f5}\label{group__Eina__Matrix__Group_gac9e258fd0ef943c6c6f86d7a732b73f5}} 
\index{Matrix@{Matrix}!\_Eina\_Matrix\_Type@{\_Eina\_Matrix\_Type}}
\index{\_Eina\_Matrix\_Type@{\_Eina\_Matrix\_Type}!Matrix@{Matrix}}
\doxysubsubsection{\texorpdfstring{\_Eina\_Matrix\_Type}{\_Eina\_Matrix\_Type}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group__Eina__Matrix__Group_gac9e258fd0ef943c6c6f86d7a732b73f5}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Type}}}

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_TYPE\_IDENTITY@{EINA\_MATRIX\_TYPE\_IDENTITY}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_TYPE\_IDENTITY@{EINA\_MATRIX\_TYPE\_IDENTITY}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5a3593bd6f89b1171d847fb6a5e901f862}\label{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5a3593bd6f89b1171d847fb6a5e901f862}} 
EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+IDENTITY&Identity matrix type. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_TYPE\_AFFINE@{EINA\_MATRIX\_TYPE\_AFFINE}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_TYPE\_AFFINE@{EINA\_MATRIX\_TYPE\_AFFINE}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ad225c3a0a95a5ec11da3009541cc0498}\label{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ad225c3a0a95a5ec11da3009541cc0498}} 
EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+AFFINE&Affine matrix type. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_TYPE\_PROJECTIVE@{EINA\_MATRIX\_TYPE\_PROJECTIVE}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_TYPE\_PROJECTIVE@{EINA\_MATRIX\_TYPE\_PROJECTIVE}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ac64b44714c29f6cbe5273748853536fb}\label{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ac64b44714c29f6cbe5273748853536fb}} 
EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+PROJECTIVE&Projective matrix type. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_TYPE\_LAST@{EINA\_MATRIX\_TYPE\_LAST}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_TYPE\_LAST@{EINA\_MATRIX\_TYPE\_LAST}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ab66882f2b0e75f88e7cb7a1d5909ca33}\label{group__Eina__Matrix__Group_ggac9e258fd0ef943c6c6f86d7a732b73f5ab66882f2b0e75f88e7cb7a1d5909ca33}} 
EINA\+\_\+\+MATRIX\+\_\+\+TYPE\+\_\+\+LAST&The total number of matrix types. \\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{group__Eina__Matrix__Group_ga33f39733eb13f69a2d4255f815ffbc24}\label{group__Eina__Matrix__Group_ga33f39733eb13f69a2d4255f815ffbc24}} 
\index{Matrix@{Matrix}!\_Eina\_Matrix\_Axis@{\_Eina\_Matrix\_Axis}}
\index{\_Eina\_Matrix\_Axis@{\_Eina\_Matrix\_Axis}!Matrix@{Matrix}}
\doxysubsubsection{\texorpdfstring{\_Eina\_Matrix\_Axis}{\_Eina\_Matrix\_Axis}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group__Eina__Matrix__Group_ga33f39733eb13f69a2d4255f815ffbc24}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Axis}}}

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_AXIS\_X@{EINA\_MATRIX\_AXIS\_X}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_AXIS\_X@{EINA\_MATRIX\_AXIS\_X}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24a8528d055a20d440dc1f8e3461303d603}\label{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24a8528d055a20d440dc1f8e3461303d603}} 
EINA\+\_\+\+MATRIX\+\_\+\+AXIS\+\_\+X&X-\/\+Axis. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_AXIS\_Y@{EINA\_MATRIX\_AXIS\_Y}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_AXIS\_Y@{EINA\_MATRIX\_AXIS\_Y}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24a55933c9d9280d0071007ecb00259116c}\label{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24a55933c9d9280d0071007ecb00259116c}} 
EINA\+\_\+\+MATRIX\+\_\+\+AXIS\+\_\+Y&Y-\/\+Axis. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EINA\_MATRIX\_AXIS\_Z@{EINA\_MATRIX\_AXIS\_Z}!Matrix@{Matrix}}\index{Matrix@{Matrix}!EINA\_MATRIX\_AXIS\_Z@{EINA\_MATRIX\_AXIS\_Z}}}\mbox{\Hypertarget{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24ad8390de25b3586e94a510fc6dadca945}\label{group__Eina__Matrix__Group_gga33f39733eb13f69a2d4255f815ffbc24ad8390de25b3586e94a510fc6dadca945}} 
EINA\+\_\+\+MATRIX\+\_\+\+AXIS\+\_\+Z&Z-\/\+Axis. \\
\hline

\end{DoxyEnumFields}
