\doxysection{SVM structures}
\hypertarget{group__structures}{}\label{group__structures}\index{SVM structures@{SVM structures}}


This module contains API functions to handle SVM structures.  


\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} \mbox{\hyperlink{group__structures_ga78cb286c48c0d6d36625a6d16c13145e}{svm\+\_\+structure\+\_\+new}} (const void \texorpdfstring{$\ast$}{*}svm, const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} type, void \texorpdfstring{$\ast$}{*}value)
\begin{DoxyCompactList}\small\item\em This function creates a new structure handler to convey a raw structure pointer. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} \mbox{\hyperlink{group__structures_ga0b7120bc555309fa5aac3dd7d8d9cf54}{svm\+\_\+structure\+\_\+new\+\_\+null}} (const void \texorpdfstring{$\ast$}{*}svm, const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} type)
\begin{DoxyCompactList}\small\item\em This function creates a new null structure handler. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} \mbox{\hyperlink{group__structures_ga462020fa1f18cce6889698f582fb8f55}{svm\+\_\+structure\+\_\+get\+\_\+type}} (const void \texorpdfstring{$\ast$}{*}svm, const \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} structure)
\begin{DoxyCompactList}\small\item\em This function retrieves the type name of a structure. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__structures_ga1228c29df2e2acf941b6bbea836e77ae}{svm\+\_\+structure\+\_\+get\+\_\+internal}} (const void \texorpdfstring{$\ast$}{*}svm, const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} type, const \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} structure)
\begin{DoxyCompactList}\small\item\em This function retrieves the raw pointer of a structure. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} \mbox{\hyperlink{group__structures_gaca5c18e03576e3a5809124ce166ffb38}{svm\+\_\+structure\+\_\+copy}} (const void \texorpdfstring{$\ast$}{*}svm, const \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} structure)
\begin{DoxyCompactList}\small\item\em This function copies a structure. \end{DoxyCompactList}\end{DoxyCompactItemize}


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

Structures are special values used solely in plugin callback functions.

Their behavior is similar to plugin defined types, and can be used as plugin function parameters

\begin{DoxySeeAlso}{See also}
\doxylink{group__functions}{SVM functions} 

\doxylink{group__structureparameters}{SVM structure parameters} 
\end{DoxySeeAlso}


\doxysubsection{Function Documentation}
\Hypertarget{group__structures_gaca5c18e03576e3a5809124ce166ffb38}\label{group__structures_gaca5c18e03576e3a5809124ce166ffb38} 
\index{SVM structures@{SVM structures}!svm\_structure\_copy@{svm\_structure\_copy}}
\index{svm\_structure\_copy@{svm\_structure\_copy}!SVM structures@{SVM structures}}
\doxysubsubsection{\texorpdfstring{svm\_structure\_copy()}{svm\_structure\_copy()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} svm\+\_\+structure\+\_\+copy (\begin{DoxyParamCaption}\item[{const void \texorpdfstring{$\ast$}{*}}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}}}]{structure }\end{DoxyParamCaption})}



This function copies a structure. 


\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 structure} & The structure to be copied.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The copied structure.
\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 structure type does not support the copy operation. \\
\hline
\end{DoxyExceptions}
\Hypertarget{group__structures_ga1228c29df2e2acf941b6bbea836e77ae}\label{group__structures_ga1228c29df2e2acf941b6bbea836e77ae} 
\index{SVM structures@{SVM structures}!svm\_structure\_get\_internal@{svm\_structure\_get\_internal}}
\index{svm\_structure\_get\_internal@{svm\_structure\_get\_internal}!SVM structures@{SVM structures}}
\doxysubsubsection{\texorpdfstring{svm\_structure\_get\_internal()}{svm\_structure\_get\_internal()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} void \texorpdfstring{$\ast$}{*} svm\+\_\+structure\+\_\+get\+\_\+internal (\begin{DoxyParamCaption}\item[{const void \texorpdfstring{$\ast$}{*}}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}}}]{type,  }\item[{const \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}}}]{structure }\end{DoxyParamCaption})}



This function retrieves the raw pointer of a structure. 


\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 type} & The expected type name of the structure. \\
\hline
\mbox{\texttt{ in}}  & {\em structure} & The structure to be diagnosed.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The raw pointer contained by the structure.
\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 structure type name mismatches the expected one.\\
\hline
\end{DoxyExceptions}
\begin{DoxySeeAlso}{See also}
\doxylink{group__pluginentrypointvalues_gafdc3fc527db3cb49272d26abaa11f835}{svm\+\_\+value\+\_\+pluginentrypoint\+\_\+new\+\_\+\+\_\+raw} 
\end{DoxySeeAlso}
\Hypertarget{group__structures_ga462020fa1f18cce6889698f582fb8f55}\label{group__structures_ga462020fa1f18cce6889698f582fb8f55} 
\index{SVM structures@{SVM structures}!svm\_structure\_get\_type@{svm\_structure\_get\_type}}
\index{svm\_structure\_get\_type@{svm\_structure\_get\_type}!SVM structures@{SVM structures}}
\doxysubsubsection{\texorpdfstring{svm\_structure\_get\_type()}{svm\_structure\_get\_type()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}} svm\+\_\+structure\+\_\+get\+\_\+type (\begin{DoxyParamCaption}\item[{const void \texorpdfstring{$\ast$}{*}}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}}}]{structure }\end{DoxyParamCaption})}



This function retrieves the type name of a structure. 


\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 structure} & The structure to be diagnosed.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The type name of the structure.
\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}
\Hypertarget{group__structures_ga78cb286c48c0d6d36625a6d16c13145e}\label{group__structures_ga78cb286c48c0d6d36625a6d16c13145e} 
\index{SVM structures@{SVM structures}!svm\_structure\_new@{svm\_structure\_new}}
\index{svm\_structure\_new@{svm\_structure\_new}!SVM structures@{SVM structures}}
\doxysubsubsection{\texorpdfstring{svm\_structure\_new()}{svm\_structure\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} svm\+\_\+structure\+\_\+new (\begin{DoxyParamCaption}\item[{const void \texorpdfstring{$\ast$}{*}}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}}}]{type,  }\item[{void \texorpdfstring{$\ast$}{*}}]{value }\end{DoxyParamCaption})}



This function creates a new structure handler to convey a raw structure pointer. 


\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 type} & The structure type name. \\
\hline
\mbox{\texttt{ in}}  & {\em value} & The structure raw pointer.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The structure handler containing the raw pointer.
\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}
\Hypertarget{group__structures_ga0b7120bc555309fa5aac3dd7d8d9cf54}\label{group__structures_ga0b7120bc555309fa5aac3dd7d8d9cf54} 
\index{SVM structures@{SVM structures}!svm\_structure\_new\_null@{svm\_structure\_new\_null}}
\index{svm\_structure\_new\_null@{svm\_structure\_new\_null}!SVM structures@{SVM structures}}
\doxysubsubsection{\texorpdfstring{svm\_structure\_new\_null()}{svm\_structure\_new\_null()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__apimacros_ga0d0dae93534c2ba22499a92705a4e391}{SVM\+\_\+\+FUNCTION}} \mbox{\hyperlink{group__api__types_ga69ff4bdc03f61848ca94b7c2c4d30347}{SVM\+\_\+\+Structure}} svm\+\_\+structure\+\_\+new\+\_\+null (\begin{DoxyParamCaption}\item[{const void \texorpdfstring{$\ast$}{*}}]{svm,  }\item[{const \mbox{\hyperlink{group__api__types_ga90c57554e1d1ea2967e133696d0cf2cd}{SVM\+\_\+\+Value\+\_\+\+Plugin\+Entry\+Point}}}]{type }\end{DoxyParamCaption})}



This function creates a new null structure handler. 


\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 type} & The structure type name.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The structure handler without value.
\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}
