\hypertarget{group__Eina__Matrix3__F16p16__Group}{}\doxysection{3x3 Matrices in fixed point}
\label{group__Eina__Matrix3__F16p16__Group}\index{3x3 Matrices in fixed point@{3x3 Matrices in fixed point}}


Definition and operations for 3x3 fixed point matrices.  


\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Eina__Matrix3__F16p16}{\+\_\+\+Eina\+\_\+\+Matrix3\+\_\+\+F16p16}}
\item 
struct \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}}
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \mbox{\hyperlink{struct__Eina__Matrix3__F16p16}{\+\_\+\+Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} \mbox{\hyperlink{group__Eina__Matrix3__F16p16__Group_ga4e86e4853bdc4b6c4ad586c4fb4b0ba4}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void \mbox{\hyperlink{group__Eina__Matrix3__F16p16__Group_ga12058450e2f30267a2424485c70a8ad9}{eina\+\_\+matrix3\+\_\+f16p16\+\_\+identity}} (\mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$m)
\begin{DoxyCompactList}\small\item\em Sets the given fixed point matrix to the identity matrix. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void \mbox{\hyperlink{group__Eina__Matrix3__F16p16__Group_ga7eb30567b2620508027084854dd66531}{eina\+\_\+matrix3\+\_\+f16p16\+\_\+compose}} (const \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$m1, const \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$m2, \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$dst)
\begin{DoxyCompactList}\small\item\em Sets dst as the matrix multiplication (composition) of two Eina\+\_\+\+F16p16 matrices. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Matrix__Group_ga3aec91bee6618dff67cb662d5136abbd}{Eina\+\_\+\+Matrix\+\_\+\+Type}} \mbox{\hyperlink{group__Eina__Matrix3__F16p16__Group_ga6fc26ab3276985b2f41f4496ec9b2bb9}{eina\+\_\+matrix3\+\_\+f16p16\+\_\+type\+\_\+get}} (const \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$m)
\begin{DoxyCompactList}\small\item\em Returns the type of the given fixed point matrix. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Definition and operations for 3x3 fixed point matrices. 



\doxysubsection{Typedef Documentation}
\mbox{\Hypertarget{group__Eina__Matrix3__F16p16__Group_ga4e86e4853bdc4b6c4ad586c4fb4b0ba4}\label{group__Eina__Matrix3__F16p16__Group_ga4e86e4853bdc4b6c4ad586c4fb4b0ba4}} 
\index{3x3 Matrices in fixed point@{3x3 Matrices in fixed point}!Eina\_Matrix3\_F16p16@{Eina\_Matrix3\_F16p16}}
\index{Eina\_Matrix3\_F16p16@{Eina\_Matrix3\_F16p16}!3x3 Matrices in fixed point@{3x3 Matrices in fixed point}}
\doxysubsubsection{\texorpdfstring{Eina\_Matrix3\_F16p16}{Eina\_Matrix3\_F16p16}}
{\footnotesize\ttfamily \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}}}

A 3x3 fixed point (Q16.\+16) matrix. 

\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Eina__Matrix3__F16p16__Group_ga12058450e2f30267a2424485c70a8ad9}\label{group__Eina__Matrix3__F16p16__Group_ga12058450e2f30267a2424485c70a8ad9}} 
\index{3x3 Matrices in fixed point@{3x3 Matrices in fixed point}!eina\_matrix3\_f16p16\_identity@{eina\_matrix3\_f16p16\_identity}}
\index{eina\_matrix3\_f16p16\_identity@{eina\_matrix3\_f16p16\_identity}!3x3 Matrices in fixed point@{3x3 Matrices in fixed point}}
\doxysubsubsection{\texorpdfstring{eina\_matrix3\_f16p16\_identity()}{eina\_matrix3\_f16p16\_identity()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void eina\+\_\+matrix3\+\_\+f16p16\+\_\+identity (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$}]{m }\end{DoxyParamCaption})}



Sets the given fixed point matrix to the identity matrix. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em m} & The fixed point matrix to set.\\
\hline
\end{DoxyParams}
This function sets {\ttfamily m} to the identity matrix. No check is done on {\ttfamily m}.

\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}
\mbox{\Hypertarget{group__Eina__Matrix3__F16p16__Group_ga7eb30567b2620508027084854dd66531}\label{group__Eina__Matrix3__F16p16__Group_ga7eb30567b2620508027084854dd66531}} 
\index{3x3 Matrices in fixed point@{3x3 Matrices in fixed point}!eina\_matrix3\_f16p16\_compose@{eina\_matrix3\_f16p16\_compose}}
\index{eina\_matrix3\_f16p16\_compose@{eina\_matrix3\_f16p16\_compose}!3x3 Matrices in fixed point@{3x3 Matrices in fixed point}}
\doxysubsubsection{\texorpdfstring{eina\_matrix3\_f16p16\_compose()}{eina\_matrix3\_f16p16\_compose()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} void eina\+\_\+matrix3\+\_\+f16p16\+\_\+compose (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$}]{m1,  }\item[{const \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$}]{m2,  }\item[{\mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$}]{dst }\end{DoxyParamCaption})}



Sets dst as the matrix multiplication (composition) of two Eina\+\_\+\+F16p16 matrices. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em m1} & The first matrix. Must be non-\/\+N\+U\+LL. \\
\hline
\mbox{\texttt{ in}}  & {\em m2} & The second matrix. Must be non-\/\+N\+U\+LL. \\
\hline
\mbox{\texttt{ out}}  & {\em dst} & The results matrix.\\
\hline
\end{DoxyParams}
In matrix multiplication, AB, the resultant matrix is created from the rows of A multiplied against the columns of B and summed. This is not a commutative; i.\+e. AB != BA, so the ordering of arguments {\ttfamily m1} and {\ttfamily m2} matters.

\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References eina\+\_\+f16p16\+\_\+mul().

\mbox{\Hypertarget{group__Eina__Matrix3__F16p16__Group_ga6fc26ab3276985b2f41f4496ec9b2bb9}\label{group__Eina__Matrix3__F16p16__Group_ga6fc26ab3276985b2f41f4496ec9b2bb9}} 
\index{3x3 Matrices in fixed point@{3x3 Matrices in fixed point}!eina\_matrix3\_f16p16\_type\_get@{eina\_matrix3\_f16p16\_type\_get}}
\index{eina\_matrix3\_f16p16\_type\_get@{eina\_matrix3\_f16p16\_type\_get}!3x3 Matrices in fixed point@{3x3 Matrices in fixed point}}
\doxysubsubsection{\texorpdfstring{eina\_matrix3\_f16p16\_type\_get()}{eina\_matrix3\_f16p16\_type\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+PI}} \mbox{\hyperlink{group__Eina__Matrix__Group_ga3aec91bee6618dff67cb662d5136abbd}{Eina\+\_\+\+Matrix\+\_\+\+Type}} eina\+\_\+matrix3\+\_\+f16p16\+\_\+type\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{structEina__Matrix3__F16p16}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}} $\ast$}]{m }\end{DoxyParamCaption})}



Returns the type of the given fixed point matrix. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em m} & The fixed point matrix. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The type of the matrix.
\end{DoxyReturn}
This function returns the type of the matrix {\ttfamily m}. No check is done on {\ttfamily m}.

\begin{DoxySince}{Since}
1.\+14 
\end{DoxySince}


References E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+F\+F\+I\+NE, E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+D\+E\+N\+T\+I\+TY, and E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+VE.

