\hypertarget{mmal__common_8h}{}\section{/\+Volumes/\+W\+O\+R\+K\+\_\+\+I\+N\+\_\+\+P\+R\+O\+G\+R\+E\+S\+S/\+R\+A\+S\+P\+B\+E\+R\+R\+Y\+\_\+\+P\+I/github/firmware-\/master/opt/vc/include/interface/mmal/mmal\+\_\+common.h File Reference}
\label{mmal__common_8h}\index{/\+Volumes/\+W\+O\+R\+K\+\_\+\+I\+N\+\_\+\+P\+R\+O\+G\+R\+E\+S\+S/\+R\+A\+S\+P\+B\+E\+R\+R\+Y\+\_\+\+P\+I/github/firmware-\/master/opt/vc/include/interface/mmal/mmal\+\_\+common.\+h@{/\+Volumes/\+W\+O\+R\+K\+\_\+\+I\+N\+\_\+\+P\+R\+O\+G\+R\+E\+S\+S/\+R\+A\+S\+P\+B\+E\+R\+R\+Y\+\_\+\+P\+I/github/firmware-\/master/opt/vc/include/interface/mmal/mmal\+\_\+common.\+h}}
{\ttfamily \#include $<$stdlib.\+h$>$}\\*
{\ttfamily \#include $<$string.\+h$>$}\\*
{\ttfamily \#include $<$stddef.\+h$>$}\\*
{\ttfamily \#include $<$assert.\+h$>$}\\*
{\ttfamily \#include $<$interface/vcos/vcos.\+h$>$}\\*
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct_m_m_a_l___c_o_r_e___s_t_a_t_i_s_t_i_c_s___t}{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}
\item 
struct \hyperlink{struct_m_m_a_l___c_o_r_e___p_o_r_t___s_t_a_t_i_s_t_i_c_s___t}{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\hypertarget{mmal__common_8h_aab7df05e4698e14dbef512294ff39203}{}\#define {\bfseries I\+N\+T64\+\_\+\+C}(value)~value\#\#L\+L\label{mmal__common_8h_aab7df05e4698e14dbef512294ff39203}

\item 
\hypertarget{mmal__common_8h_ae770776c04e6d959364d2612ddfce99d}{}\#define {\bfseries U\+I\+N\+T64\+\_\+\+C}(value)~value\#\#U\+L\+L\label{mmal__common_8h_ae770776c04e6d959364d2612ddfce99d}

\item 
\hypertarget{mmal__common_8h_a291c06d747920f876b3e87284a2d5d9e}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+T\+S\+R\+I\+N\+G}(s)~\#s\label{mmal__common_8h_a291c06d747920f876b3e87284a2d5d9e}

\item 
\hypertarget{mmal__common_8h_a9d949454ebde2d9db3b888c0c0eff044}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+T\+O\+\_\+\+S\+T\+R\+I\+N\+G}(s)~M\+M\+A\+L\+\_\+\+T\+S\+R\+I\+N\+G(s)\label{mmal__common_8h_a9d949454ebde2d9db3b888c0c0eff044}

\item 
\hypertarget{mmal__common_8h_a6ce6612a68c6ffd90b16354adffe0e64}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+C\+O\+U\+N\+T\+O\+F}(x)~(sizeof((x))/sizeof((x)\mbox{[}0\mbox{]}))\label{mmal__common_8h_a6ce6612a68c6ffd90b16354adffe0e64}

\item 
\hypertarget{mmal__common_8h_aa3f9a20e6e732176fb14850af60aa325}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+M\+I\+N}(a,  b)~((a)$<$(b)?(a)\+:(b))\label{mmal__common_8h_aa3f9a20e6e732176fb14850af60aa325}

\item 
\hypertarget{mmal__common_8h_a9be4bd9e026f5529413874d9df30dfcd}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+M\+A\+X}(a,  b)~((a)$<$(b)?(b)\+:(a))\label{mmal__common_8h_a9be4bd9e026f5529413874d9df30dfcd}

\item 
\hypertarget{mmal__common_8h_ad3decef0b12ba3ab87791cf0bfebdbd0}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+F\+O\+U\+R\+C\+C}(a,  b,  c,  d)~((a) $\vert$ (b $<$$<$ 8) $\vert$ (c $<$$<$ 16) $\vert$ (d $<$$<$ 24))\label{mmal__common_8h_ad3decef0b12ba3ab87791cf0bfebdbd0}

\item 
\hypertarget{mmal__common_8h_a530f71b6be3263a2eb15c71dd4f0f60c}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+P\+A\+R\+A\+M\+\_\+\+U\+N\+U\+S\+E\+D}(a)~(void)(a)\label{mmal__common_8h_a530f71b6be3263a2eb15c71dd4f0f60c}

\item 
\hypertarget{mmal__common_8h_a33edf0ed02f36b9f7269e656a66aca44}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+M\+A\+G\+I\+C}~M\+M\+A\+L\+\_\+\+F\+O\+U\+R\+C\+C(\textquotesingle{}m\textquotesingle{},\textquotesingle{}m\textquotesingle{},\textquotesingle{}a\textquotesingle{},\textquotesingle{}l\textquotesingle{})\label{mmal__common_8h_a33edf0ed02f36b9f7269e656a66aca44}

\item 
\hypertarget{mmal__common_8h_af1e4afae21eb7fd6fba1325bd0cab5dd}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+F\+A\+L\+S\+E}~0\label{mmal__common_8h_af1e4afae21eb7fd6fba1325bd0cab5dd}

\item 
\hypertarget{mmal__common_8h_aa120400c032442cda78d19700286ce62}{}\#define {\bfseries M\+M\+A\+L\+\_\+\+T\+R\+U\+E}~1\label{mmal__common_8h_aa120400c032442cda78d19700286ce62}

\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{mmal__common_8h_a742cabbbb0702147feb03e1d9eac7096}{}typedef int32\+\_\+t {\bfseries M\+M\+A\+L\+\_\+\+B\+O\+O\+L\+\_\+\+T}\label{mmal__common_8h_a742cabbbb0702147feb03e1d9eac7096}

\item 
\hypertarget{mmal__common_8h_af28a1bfc754615976369416efa97e566}{}typedef struct \hyperlink{struct_m_m_a_l___c_o_r_e___s_t_a_t_i_s_t_i_c_s___t}{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T} {\bfseries M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}\label{mmal__common_8h_af28a1bfc754615976369416efa97e566}

\item 
typedef struct \hyperlink{struct_m_m_a_l___c_o_r_e___p_o_r_t___s_t_a_t_i_s_t_i_c_s___t}{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T} \hyperlink{mmal__common_8h_ad5cd484a3eb103625ee981e7d6b4ab6a}{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}
\item 
typedef uint32\+\_\+t \hyperlink{mmal__common_8h_a890271a36eab558a486d200913681e76}{M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T}
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Multi-\/\+Media Abstraction Layer -\/ Common definitions 

\subsection{Typedef Documentation}
\hypertarget{mmal__common_8h_ad5cd484a3eb103625ee981e7d6b4ab6a}{}\index{mmal\+\_\+common.\+h@{mmal\+\_\+common.\+h}!M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T@{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}}
\index{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T@{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}!mmal\+\_\+common.\+h@{mmal\+\_\+common.\+h}}
\subsubsection[{M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}]{\setlength{\rightskip}{0pt plus 5cm}typedef struct {\bf M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}  {\bf M\+M\+A\+L\+\_\+\+C\+O\+R\+E\+\_\+\+P\+O\+R\+T\+\_\+\+S\+T\+A\+T\+I\+S\+T\+I\+C\+S\+\_\+\+T}}\label{mmal__common_8h_ad5cd484a3eb103625ee981e7d6b4ab6a}
Statistics collected by the core on all ports, if enabled in the build. \hypertarget{mmal__common_8h_a890271a36eab558a486d200913681e76}{}\index{mmal\+\_\+common.\+h@{mmal\+\_\+common.\+h}!M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T@{M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T}}
\index{M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T@{M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T}!mmal\+\_\+common.\+h@{mmal\+\_\+common.\+h}}
\subsubsection[{M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T}]{\setlength{\rightskip}{0pt plus 5cm}typedef uint32\+\_\+t {\bf M\+M\+A\+L\+\_\+\+F\+I\+X\+E\+D\+\_\+16\+\_\+16\+\_\+\+T}}\label{mmal__common_8h_a890271a36eab558a486d200913681e76}
Unsigned 16.\+16 fixed point value, also known as Q16.\+16 