\hypertarget{monitor_8h}{}\section{monitor.\+h File Reference}
\label{monitor_8h}\index{monitor.\+h@{monitor.\+h}}


Library for sending message to monitor or receiving message.  


{\ttfamily \#include $<$sys/types.\+h$>$}\newline
{\ttfamily \#include $<$sys/socket.\+h$>$}\newline
{\ttfamily \#include $<$netinet/in.\+h$>$}\newline
{\ttfamily \#include $<$arpa/inet.\+h$>$}\newline
{\ttfamily \#include $<$unistd.\+h$>$}\newline
{\ttfamily \#include $<$signal.\+h$>$}\newline
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include $<$stdio.\+h$>$}\newline
{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include \char`\"{}image.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}definitions.\+h\char`\"{}}\newline
Include dependency graph for monitor.\+h\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{monitor_8h__incl}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct_message_from_mon}{Message\+From\+Mon}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{monitor_8h_ad62b697bd25a71d171db46740aef2830}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE}~\char`\"{}I\+MG\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a0de226ae5af8b83f3b163ff4413eef95}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT}~\char`\"{}B\+AT\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a6a07aae2539981459edc8070a0f019db}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS}~\char`\"{}P\+OS\char`\"{}
\item 
\#define \hyperlink{monitor_8h_ac2e64478522da4e3b45c139c0c72557f}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK}~\char`\"{}N\+AK\char`\"{}
\item 
\#define \hyperlink{monitor_8h_af2325d19ae9da4310eb608c744149f53}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK}~\char`\"{}A\+CK\char`\"{}
\item 
\#define \hyperlink{monitor_8h_ac1034bccb09918cccd3ba142377a6788}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES}~\char`\"{}M\+SG\char`\"{}
\item 
\#define \hyperlink{monitor_8h_afe29ce74d16751828da8aec7e13ad06b}{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB}~\char`\"{}L\+CD\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a980e8f9457e30018fddcd4d997f17a85}{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG}~\char`\"{}M\+SG\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a5ccd30e6502bb94eaa13a597edb1f156}{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER}~\char`\"{}D\+MB\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a0c829d92889c5c9b2d485964ce933fab}{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB}~\char`\"{}C\+OM\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a91e2658cf20010646211ba748885c180}{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA}~\char`\"{}C\+AM\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a2be30c9a3e65eaf5502b8542a6ac6259}{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP}~\char`\"{}S\+TO\char`\"{}
\item 
\#define \hyperlink{monitor_8h_a26769957ec1a2beaf223f33b66ee64ab}{I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET}~-\/1
\item 
\#define \hyperlink{monitor_8h_a633b0396ff93d336a088412a190a5072}{S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR}~-\/1
\item 
\#define \hyperlink{monitor_8h_a16b710f592bf8f7900666392adc444dc}{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT}~8080
\item 
\#define \hyperlink{monitor_8h_a939612a13947b5bb9fc848e3222a231d}{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY}~0
\item 
\#define \hyperlink{monitor_8h_ab3be9ae187e8b98bb000ca0bca68e982}{D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA}~(1)
\item 
\#define \hyperlink{monitor_8h_a22d20ac264e03c59d6941cb11386aa89}{C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA}~(2)
\item 
\#define \hyperlink{monitor_8h_a1d58e03abc2a587c7f0a0665c94c0e68}{N\+O\+\_\+\+A\+R\+E\+NA}~(3)
\item 
\#define \hyperlink{monitor_8h_a2c47b710f0858fe41c544517c6b2a2fd}{D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH}~\char`\"{}/usr/bin/nodejs\char`\"{}
\item 
\#define \hyperlink{monitor_8h_af533d8bd7d6a1d9f9efba3b259280e32}{D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE}~\char`\"{}./interface.\+js\char`\"{}
\item 
\#define \hyperlink{monitor_8h_ab6b45251e218af8f09c5d627b5262398}{closesocket}(param)~close(param)
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef int \hyperlink{monitor_8h_a8dc8083897335125630f1af5dafd5831}{S\+O\+C\+K\+ET}
\item 
typedef struct sockaddr\+\_\+in \hyperlink{monitor_8h_a29046dc0232f0e5c70adbc25090d77b8}{S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN}
\item 
typedef struct sockaddr \hyperlink{monitor_8h_ae334b73cedf7204187dce3f817576009}{S\+O\+C\+K\+A\+D\+DR}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{monitor_8h_ac3d876b96642b6ee46f6a96b7ffcb864}{send\+\_\+message\+\_\+to\+\_\+monitor} (const char $\ast$type\+Message, const void $\ast$data=N\+U\+LL)
\begin{DoxyCompactList}\small\item\em Envoi d\textquotesingle{}un message vers l\textquotesingle{}interface graphique. \end{DoxyCompactList}\item 
int \hyperlink{monitor_8h_a61eca0d5b49118350db39583e1bd1032}{receive\+\_\+message\+\_\+from\+\_\+monitor} (char $\ast$type\+Message, char $\ast$data)
\begin{DoxyCompactList}\small\item\em Réception d\textquotesingle{}un message. La fonction est bloquante et retourne par référence le type de message reçu (D\+MB pour un ordre au robot, A\+RN pour la détection des arènes et P\+OS pour un calcul de position) ainsi que les données associées. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Library for sending message to monitor or receiving message. 

\begin{DoxyAuthor}{Author}
L.\+senaneuch 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}
1.\+0 
\end{DoxyVersion}
\begin{DoxyDate}{Date}
06/06/2017 
\end{DoxyDate}


\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{monitor_8h_a22d20ac264e03c59d6941cb11386aa89}\label{monitor_8h_a22d20ac264e03c59d6941cb11386aa89}} 
\index{monitor.\+h@{monitor.\+h}!C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA@{C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA}}
\index{C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA@{C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA}{CHECK\_ARENA}}
{\footnotesize\ttfamily \#define C\+H\+E\+C\+K\+\_\+\+A\+R\+E\+NA~(2)}



Definition at line 62 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_ab6b45251e218af8f09c5d627b5262398}\label{monitor_8h_ab6b45251e218af8f09c5d627b5262398}} 
\index{monitor.\+h@{monitor.\+h}!closesocket@{closesocket}}
\index{closesocket@{closesocket}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{closesocket}{closesocket}}
{\footnotesize\ttfamily \#define closesocket(\begin{DoxyParamCaption}\item[{}]{param }\end{DoxyParamCaption})~close(param)}



Definition at line 68 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_af533d8bd7d6a1d9f9efba3b259280e32}\label{monitor_8h_af533d8bd7d6a1d9f9efba3b259280e32}} 
\index{monitor.\+h@{monitor.\+h}!D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE@{D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE}}
\index{D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE@{D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE}{DEFAULT\_INTERFACE\_FILE}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+T\+E\+R\+F\+A\+C\+E\+\_\+\+F\+I\+LE~\char`\"{}./interface.\+js\char`\"{}}



Definition at line 66 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a2c47b710f0858fe41c544517c6b2a2fd}\label{monitor_8h_a2c47b710f0858fe41c544517c6b2a2fd}} 
\index{monitor.\+h@{monitor.\+h}!D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH@{D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH}}
\index{D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH@{D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH}{DEFAULT\_NODEJS\_PATH}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+N\+O\+D\+E\+J\+S\+\_\+\+P\+A\+TH~\char`\"{}/usr/bin/nodejs\char`\"{}}



Definition at line 65 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a939612a13947b5bb9fc848e3222a231d}\label{monitor_8h_a939612a13947b5bb9fc848e3222a231d}} 
\index{monitor.\+h@{monitor.\+h}!D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY@{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY}}
\index{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY@{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY}{DEFAULT\_PARITY}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+A\+R\+I\+TY~0}



Definition at line 59 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a16b710f592bf8f7900666392adc444dc}\label{monitor_8h_a16b710f592bf8f7900666392adc444dc}} 
\index{monitor.\+h@{monitor.\+h}!D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT@{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT}}
\index{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT@{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT}{DEFAULT\_PORT}}
{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+P\+O\+RT~8080}



Definition at line 58 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_ab3be9ae187e8b98bb000ca0bca68e982}\label{monitor_8h_ab3be9ae187e8b98bb000ca0bca68e982}} 
\index{monitor.\+h@{monitor.\+h}!D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA@{D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA}}
\index{D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA@{D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA}{DETECT\_ARENA}}
{\footnotesize\ttfamily \#define D\+E\+T\+E\+C\+T\+\_\+\+A\+R\+E\+NA~(1)}



Definition at line 61 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a91e2658cf20010646211ba748885c180}\label{monitor_8h_a91e2658cf20010646211ba748885c180}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA}{HEADER\_MTS\_CAMERA}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+A\+M\+E\+RA~\char`\"{}C\+AM\char`\"{}}



Definition at line 52 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a0c829d92889c5c9b2d485964ce933fab}\label{monitor_8h_a0c829d92889c5c9b2d485964ce933fab}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB}{HEADER\_MTS\_COM\_DMB}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+C\+O\+M\+\_\+\+D\+MB~\char`\"{}C\+OM\char`\"{}}



Definition at line 51 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a5ccd30e6502bb94eaa13a597edb1f156}\label{monitor_8h_a5ccd30e6502bb94eaa13a597edb1f156}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER}{HEADER\_MTS\_DMB\_ORDER}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+D\+M\+B\+\_\+\+O\+R\+D\+ER~\char`\"{}D\+MB\char`\"{}}



Definition at line 50 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a980e8f9457e30018fddcd4d997f17a85}\label{monitor_8h_a980e8f9457e30018fddcd4d997f17a85}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG}{HEADER\_MTS\_MSG}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+M\+SG~\char`\"{}M\+SG\char`\"{}}



Definition at line 49 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a2be30c9a3e65eaf5502b8542a6ac6259}\label{monitor_8h_a2be30c9a3e65eaf5502b8542a6ac6259}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP@{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP}{HEADER\_MTS\_STOP}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+M\+T\+S\+\_\+\+S\+T\+OP~\char`\"{}S\+TO\char`\"{}}



Definition at line 53 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_af2325d19ae9da4310eb608c744149f53}\label{monitor_8h_af2325d19ae9da4310eb608c744149f53}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK}{HEADER\_STM\_ACK}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+A\+CK~\char`\"{}A\+CK\char`\"{}}



Definition at line 45 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a0de226ae5af8b83f3b163ff4413eef95}\label{monitor_8h_a0de226ae5af8b83f3b163ff4413eef95}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT}{HEADER\_STM\_BAT}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+B\+AT~\char`\"{}B\+AT\char`\"{}}



Definition at line 42 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_ad62b697bd25a71d171db46740aef2830}\label{monitor_8h_ad62b697bd25a71d171db46740aef2830}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE}{HEADER\_STM\_IMAGE}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+I\+M\+A\+GE~\char`\"{}I\+MG\char`\"{}}



Definition at line 41 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_afe29ce74d16751828da8aec7e13ad06b}\label{monitor_8h_afe29ce74d16751828da8aec7e13ad06b}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB}{HEADER\_STM\_LOST\_DMB}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+L\+O\+S\+T\+\_\+\+D\+MB~\char`\"{}L\+CD\char`\"{}}



Definition at line 47 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_ac1034bccb09918cccd3ba142377a6788}\label{monitor_8h_ac1034bccb09918cccd3ba142377a6788}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES}{HEADER\_STM\_MES}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+M\+ES~\char`\"{}M\+SG\char`\"{}}



Definition at line 46 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_ac2e64478522da4e3b45c139c0c72557f}\label{monitor_8h_ac2e64478522da4e3b45c139c0c72557f}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK}{HEADER\_STM\_NO\_ACK}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+N\+O\+\_\+\+A\+CK~\char`\"{}N\+AK\char`\"{}}



Definition at line 44 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a6a07aae2539981459edc8070a0f019db}\label{monitor_8h_a6a07aae2539981459edc8070a0f019db}} 
\index{monitor.\+h@{monitor.\+h}!H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS}}
\index{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS@{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS}{HEADER\_STM\_POS}}
{\footnotesize\ttfamily \#define H\+E\+A\+D\+E\+R\+\_\+\+S\+T\+M\+\_\+\+P\+OS~\char`\"{}P\+OS\char`\"{}}



Definition at line 43 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a26769957ec1a2beaf223f33b66ee64ab}\label{monitor_8h_a26769957ec1a2beaf223f33b66ee64ab}} 
\index{monitor.\+h@{monitor.\+h}!I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET@{I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET}}
\index{I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET@{I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET}{INVALID\_SOCKET}}
{\footnotesize\ttfamily \#define I\+N\+V\+A\+L\+I\+D\+\_\+\+S\+O\+C\+K\+ET~-\/1}



Definition at line 55 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a1d58e03abc2a587c7f0a0665c94c0e68}\label{monitor_8h_a1d58e03abc2a587c7f0a0665c94c0e68}} 
\index{monitor.\+h@{monitor.\+h}!N\+O\+\_\+\+A\+R\+E\+NA@{N\+O\+\_\+\+A\+R\+E\+NA}}
\index{N\+O\+\_\+\+A\+R\+E\+NA@{N\+O\+\_\+\+A\+R\+E\+NA}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{N\+O\+\_\+\+A\+R\+E\+NA}{NO\_ARENA}}
{\footnotesize\ttfamily \#define N\+O\+\_\+\+A\+R\+E\+NA~(3)}



Definition at line 63 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a633b0396ff93d336a088412a190a5072}\label{monitor_8h_a633b0396ff93d336a088412a190a5072}} 
\index{monitor.\+h@{monitor.\+h}!S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR@{S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR}}
\index{S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR@{S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR}{SOCKET\_ERROR}}
{\footnotesize\ttfamily \#define S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+OR~-\/1}



Definition at line 56 of file monitor.\+h.



\subsection{Typedef Documentation}
\mbox{\Hypertarget{monitor_8h_ae334b73cedf7204187dce3f817576009}\label{monitor_8h_ae334b73cedf7204187dce3f817576009}} 
\index{monitor.\+h@{monitor.\+h}!S\+O\+C\+K\+A\+D\+DR@{S\+O\+C\+K\+A\+D\+DR}}
\index{S\+O\+C\+K\+A\+D\+DR@{S\+O\+C\+K\+A\+D\+DR}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{S\+O\+C\+K\+A\+D\+DR}{SOCKADDR}}
{\footnotesize\ttfamily typedef struct sockaddr \hyperlink{monitor_8h_ae334b73cedf7204187dce3f817576009}{S\+O\+C\+K\+A\+D\+DR}}



Definition at line 72 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a29046dc0232f0e5c70adbc25090d77b8}\label{monitor_8h_a29046dc0232f0e5c70adbc25090d77b8}} 
\index{monitor.\+h@{monitor.\+h}!S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN@{S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN}}
\index{S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN@{S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN}{SOCKADDR\_IN}}
{\footnotesize\ttfamily typedef struct sockaddr\+\_\+in \hyperlink{monitor_8h_a29046dc0232f0e5c70adbc25090d77b8}{S\+O\+C\+K\+A\+D\+D\+R\+\_\+\+IN}}



Definition at line 71 of file monitor.\+h.

\mbox{\Hypertarget{monitor_8h_a8dc8083897335125630f1af5dafd5831}\label{monitor_8h_a8dc8083897335125630f1af5dafd5831}} 
\index{monitor.\+h@{monitor.\+h}!S\+O\+C\+K\+ET@{S\+O\+C\+K\+ET}}
\index{S\+O\+C\+K\+ET@{S\+O\+C\+K\+ET}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{S\+O\+C\+K\+ET}{SOCKET}}
{\footnotesize\ttfamily typedef int \hyperlink{monitor_8h_a8dc8083897335125630f1af5dafd5831}{S\+O\+C\+K\+ET}}



Definition at line 70 of file monitor.\+h.



\subsection{Function Documentation}
\mbox{\Hypertarget{monitor_8h_a61eca0d5b49118350db39583e1bd1032}\label{monitor_8h_a61eca0d5b49118350db39583e1bd1032}} 
\index{monitor.\+h@{monitor.\+h}!receive\+\_\+message\+\_\+from\+\_\+monitor@{receive\+\_\+message\+\_\+from\+\_\+monitor}}
\index{receive\+\_\+message\+\_\+from\+\_\+monitor@{receive\+\_\+message\+\_\+from\+\_\+monitor}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{receive\+\_\+message\+\_\+from\+\_\+monitor()}{receive\_message\_from\_monitor()}}
{\footnotesize\ttfamily int receive\+\_\+message\+\_\+from\+\_\+monitor (\begin{DoxyParamCaption}\item[{char $\ast$}]{type\+Message,  }\item[{char $\ast$}]{data }\end{DoxyParamCaption})}



Réception d\textquotesingle{}un message. La fonction est bloquante et retourne par référence le type de message reçu (D\+MB pour un ordre au robot, A\+RN pour la détection des arènes et P\+OS pour un calcul de position) ainsi que les données associées. 


\begin{DoxyParams}{Parameters}
{\em type\+Message} & Type du message reçu \+: D\+MB pour un ordre au robot, A\+RN pour la demande de détection de l\textquotesingle{}arène, P\+OS pour un calcul de position et M\+SG pour un message de l\textquotesingle{}interface \\
\hline
{\em data} & données associées au message reçu. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Retourne 0 la taille du message reçu ou une valeur négative si la connexion est perdue. 
\end{DoxyReturn}
\mbox{\Hypertarget{monitor_8h_ac3d876b96642b6ee46f6a96b7ffcb864}\label{monitor_8h_ac3d876b96642b6ee46f6a96b7ffcb864}} 
\index{monitor.\+h@{monitor.\+h}!send\+\_\+message\+\_\+to\+\_\+monitor@{send\+\_\+message\+\_\+to\+\_\+monitor}}
\index{send\+\_\+message\+\_\+to\+\_\+monitor@{send\+\_\+message\+\_\+to\+\_\+monitor}!monitor.\+h@{monitor.\+h}}
\subsubsection{\texorpdfstring{send\+\_\+message\+\_\+to\+\_\+monitor()}{send\_message\_to\_monitor()}}
{\footnotesize\ttfamily int send\+\_\+message\+\_\+to\+\_\+monitor (\begin{DoxyParamCaption}\item[{const char $\ast$}]{type\+Message,  }\item[{const void $\ast$}]{data = {\ttfamily NULL} }\end{DoxyParamCaption})}



Envoi d\textquotesingle{}un message vers l\textquotesingle{}interface graphique. 


\begin{DoxyParams}{Parameters}
{\em type\+Message} & Type du message envoyé. Les valeurs possibles sont I\+MG pour une image, M\+ES pour un message à afficher dans la console, P\+OS pour la position du robot, B\+AT pour une valeur de la batterie et A\+CK pour valider un message de l\textquotesingle{}interface. \\
\hline
{\em data} & données associées au message. Le type de la donnée doit correspondre au message \+: Image pour I\+MG, char $\ast$ M\+ES, \hyperlink{struct_position}{Position} pour P\+OS, char $\ast$ pour B\+AT et rien pour A\+CK. Attention, il n\textquotesingle{}y a aucune vérification a posterio. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Retourne 0 si l\textquotesingle{}envoie a bien été réalisé et -\/1 en cas de problème. 
\end{DoxyReturn}
