\hypertarget{group__machine}{}\doxysection{SVM machine}
\label{group__machine}\index{SVM machine@{SVM machine}}


This module contains API functions to handle the SVM machine.  


\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \mbox{\hyperlink{group__machine_ga7774fbe84315dcabfda3ea6b044e861a}{svm\+\_\+machine\+\_\+shutdown}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_gaffdbc5928860a9f9c0f1db65bfb63b30}{SVM\+\_\+\+Value\+\_\+\+Integer}} return\+\_\+code)
\begin{DoxyCompactList}\small\item\em This function shuts down the whole machine, with a return code as an integer value. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \mbox{\hyperlink{group__machine_ga7f3947c417d1b6fa0bb202c9dcccd7b1}{svm\+\_\+machine\+\_\+shutdown\+\_\+\+\_\+raw}} (const void $\ast$svm, const unsigned long int return\+\_\+code)
\begin{DoxyCompactList}\small\item\em This function shuts down the whole machine, with a return code as a raw integer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \mbox{\hyperlink{group__machine_gaf3ec8b7572e5e7437b3ace2e5aab1a25}{svm\+\_\+machine\+\_\+trace}} (const void $\ast$svm, const \mbox{\hyperlink{group__api__types_ga3dffb7b48e1c724c527353525675e41c}{SVM\+\_\+\+Value\+\_\+\+String}} trace)
\begin{DoxyCompactList}\small\item\em This function emits an error trace on the logger from a string value. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \mbox{\hyperlink{group__machine_ga6643cc67ff40504500e3f4eff2c6a93f}{svm\+\_\+machine\+\_\+trace\+\_\+\+\_\+string}} (const void $\ast$svm, const \mbox{\hyperlink{struct_s_v_m___string}{SVM\+\_\+\+String}} trace)
\begin{DoxyCompactList}\small\item\em This function emits an error trace on the logger from a string. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \mbox{\hyperlink{group__machine_gab61b57b8193fada09ae8ce76681bf00e}{svm\+\_\+machine\+\_\+trace\+\_\+\+\_\+raw}} (const void $\ast$svm, const char $\ast$trace)
\begin{DoxyCompactList}\small\item\em This function emits an error trace on the logger from a raw C string. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga05264517c09f5a00e9f4a613739fbd79}{SVM\+\_\+\+Value\+\_\+\+Interruption}} $\ast$ \mbox{\hyperlink{group__machine_ga72c0cee151cc6fcec8567138860fb5ab}{svm\+\_\+machine\+\_\+list\+\_\+interruption}} (const void $\ast$svm)
\begin{DoxyCompactList}\small\item\em This function returns the list of available interruptions. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{struct_s_v_m___string}{SVM\+\_\+\+String}} \mbox{\hyperlink{group__machine_ga35bdb255a245835632904763119b0c25}{svm\+\_\+machine\+\_\+config}} (const void $\ast$svm, const char $\ast$key)
\begin{DoxyCompactList}\small\item\em This function returns a value from the virtual machine installation. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga872facc2eea0e7296e689134f568b804}{SVM\+\_\+\+Boolean}} \mbox{\hyperlink{group__machine_ga107e593d295339deb612a527e1ee2c3f}{svm\+\_\+machine\+\_\+mode\+\_\+is\+\_\+debug}} (const void $\ast$svm)
\begin{DoxyCompactList}\small\item\em This function indicates when the virtual machine is executed in debug mode. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga872facc2eea0e7296e689134f568b804}{SVM\+\_\+\+Boolean}} \mbox{\hyperlink{group__machine_ga8dec63ef3001dba33800862c5a25282c}{svm\+\_\+machine\+\_\+mode\+\_\+is\+\_\+performance}} (const void $\ast$svm)
\begin{DoxyCompactList}\small\item\em This function indicates when the virtual machine is executed in performance mode. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
This module contains API functions to handle the SVM machine. 



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__machine_ga35bdb255a245835632904763119b0c25}\label{group__machine_ga35bdb255a245835632904763119b0c25}} 
\index{SVM machine@{SVM machine}!svm\_machine\_config@{svm\_machine\_config}}
\index{svm\_machine\_config@{svm\_machine\_config}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_config()}{svm\_machine\_config()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{struct_s_v_m___string}{SVM\+\_\+\+String}} svm\+\_\+machine\+\_\+config (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const char $\ast$}]{key }\end{DoxyParamCaption})}



This function returns a value from the virtual machine installation. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em key} & The key of the configuration to get.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A string containing the value when the key is defined.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em FAILURE} & interruption when the key does not exist. \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_ga72c0cee151cc6fcec8567138860fb5ab}\label{group__machine_ga72c0cee151cc6fcec8567138860fb5ab}} 
\index{SVM machine@{SVM machine}!svm\_machine\_list\_interruption@{svm\_machine\_list\_interruption}}
\index{svm\_machine\_list\_interruption@{svm\_machine\_list\_interruption}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_list\_interruption()}{svm\_machine\_list\_interruption()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga05264517c09f5a00e9f4a613739fbd79}{SVM\+\_\+\+Value\+\_\+\+Interruption}} $\ast$ svm\+\_\+machine\+\_\+list\+\_\+interruption (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm }\end{DoxyParamCaption})}



This function returns the list of available interruptions. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function.\\
\hline
\end{DoxyParams}
Internal and external interruptions are returned.

\begin{DoxyReturn}{Returns}
A pointer to a C array of SVM\+\_\+\+Value\+\_\+\+Interruption, terminated by a C/\+C++ null pointer.
\end{DoxyReturn}
\begin{DoxyNote}{Note}
The returned array is a valid SVM variable\+: its scope can be changed if needed, and the pointer shall not be freed explicitely.
\end{DoxyNote}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_ga107e593d295339deb612a527e1ee2c3f}\label{group__machine_ga107e593d295339deb612a527e1ee2c3f}} 
\index{SVM machine@{SVM machine}!svm\_machine\_mode\_is\_debug@{svm\_machine\_mode\_is\_debug}}
\index{svm\_machine\_mode\_is\_debug@{svm\_machine\_mode\_is\_debug}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_mode\_is\_debug()}{svm\_machine\_mode\_is\_debug()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga872facc2eea0e7296e689134f568b804}{SVM\+\_\+\+Boolean}} svm\+\_\+machine\+\_\+mode\+\_\+is\+\_\+debug (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm }\end{DoxyParamCaption})}



This function indicates when the virtual machine is executed in debug mode. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A boolean set to TRUE when the debugger is activated, and FALSE otherwise.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_ga8dec63ef3001dba33800862c5a25282c}\label{group__machine_ga8dec63ef3001dba33800862c5a25282c}} 
\index{SVM machine@{SVM machine}!svm\_machine\_mode\_is\_performance@{svm\_machine\_mode\_is\_performance}}
\index{svm\_machine\_mode\_is\_performance@{svm\_machine\_mode\_is\_performance}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_mode\_is\_performance()}{svm\_machine\_mode\_is\_performance()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga872facc2eea0e7296e689134f568b804}{SVM\+\_\+\+Boolean}} svm\+\_\+machine\+\_\+mode\+\_\+is\+\_\+performance (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm }\end{DoxyParamCaption})}



This function indicates when the virtual machine is executed in performance mode. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A boolean set to TRUE when the profiler is activated, and FALSE otherwise.
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_ga7774fbe84315dcabfda3ea6b044e861a}\label{group__machine_ga7774fbe84315dcabfda3ea6b044e861a}} 
\index{SVM machine@{SVM machine}!svm\_machine\_shutdown@{svm\_machine\_shutdown}}
\index{svm\_machine\_shutdown@{svm\_machine\_shutdown}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_shutdown()}{svm\_machine\_shutdown()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void svm\+\_\+machine\+\_\+shutdown (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_gaffdbc5928860a9f9c0f1db65bfb63b30}{SVM\+\_\+\+Value\+\_\+\+Integer}}}]{return\+\_\+code }\end{DoxyParamCaption})}



This function shuts down the whole machine, with a return code as an integer value. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em return\+\_\+code} & The return code of the virtual machine.\\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em SECURITY} & interruption when this API function is called outside a system instruction. \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_ga7f3947c417d1b6fa0bb202c9dcccd7b1}\label{group__machine_ga7f3947c417d1b6fa0bb202c9dcccd7b1}} 
\index{SVM machine@{SVM machine}!svm\_machine\_shutdown\_\_raw@{svm\_machine\_shutdown\_\_raw}}
\index{svm\_machine\_shutdown\_\_raw@{svm\_machine\_shutdown\_\_raw}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_shutdown\_\_raw()}{svm\_machine\_shutdown\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void svm\+\_\+machine\+\_\+shutdown\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const unsigned long int}]{return\+\_\+code }\end{DoxyParamCaption})}



This function shuts down the whole machine, with a return code as a raw integer. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em return\+\_\+code} & The return code of the virtual machine.\\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
{\em SECURITY} & interruption when this API function is called outside a system instruction. \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_gaf3ec8b7572e5e7437b3ace2e5aab1a25}\label{group__machine_gaf3ec8b7572e5e7437b3ace2e5aab1a25}} 
\index{SVM machine@{SVM machine}!svm\_machine\_trace@{svm\_machine\_trace}}
\index{svm\_machine\_trace@{svm\_machine\_trace}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_trace()}{svm\_machine\_trace()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void svm\+\_\+machine\+\_\+trace (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga3dffb7b48e1c724c527353525675e41c}{SVM\+\_\+\+Value\+\_\+\+String}}}]{trace }\end{DoxyParamCaption})}



This function emits an error trace on the logger from a string value. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em trace} & The trace to emit.\\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_gab61b57b8193fada09ae8ce76681bf00e}\label{group__machine_gab61b57b8193fada09ae8ce76681bf00e}} 
\index{SVM machine@{SVM machine}!svm\_machine\_trace\_\_raw@{svm\_machine\_trace\_\_raw}}
\index{svm\_machine\_trace\_\_raw@{svm\_machine\_trace\_\_raw}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_trace\_\_raw()}{svm\_machine\_trace\_\_raw()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void svm\+\_\+machine\+\_\+trace\+\_\+\+\_\+raw (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const char $\ast$}]{trace }\end{DoxyParamCaption})}



This function emits an error trace on the logger from a raw C string. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em trace} & The trace to emit.\\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{group__machine_ga6643cc67ff40504500e3f4eff2c6a93f}\label{group__machine_ga6643cc67ff40504500e3f4eff2c6a93f}} 
\index{SVM machine@{SVM machine}!svm\_machine\_trace\_\_string@{svm\_machine\_trace\_\_string}}
\index{svm\_machine\_trace\_\_string@{svm\_machine\_trace\_\_string}!SVM machine@{SVM machine}}
\doxysubsubsection{\texorpdfstring{svm\_machine\_trace\_\_string()}{svm\_machine\_trace\_\_string()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void svm\+\_\+machine\+\_\+trace\+\_\+\+\_\+string (\begin{DoxyParamCaption}\item[{const void $\ast$}]{svm,  }\item[{const \mbox{\hyperlink{struct_s_v_m___string}{SVM\+\_\+\+String}}}]{trace }\end{DoxyParamCaption})}



This function emits an error trace on the logger from a string. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em svm} & The SVM pointer passed as first argument of the callback function. \\
\hline
\mbox{\texttt{ in}}  & {\em trace} & The trace to emit.\\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em FAILURE} & interruption when a parameter is incorrect. (Please refer to the main description page of this API.) \\
\hline
\end{DoxyExceptions}
