\hypertarget{variator__exhaustive_8c}{\section{C\-:/\-Users/\-D\-E\-L\-L/\-Work/sdlvisualtest/visualtest/src/variator\-\_\-exhaustive.c File Reference}
\label{variator__exhaustive_8c}\index{C\-:/\-Users/\-D\-E\-L\-L/\-Work/sdlvisualtest/visualtest/src/variator\-\_\-exhaustive.\-c@{C\-:/\-Users/\-D\-E\-L\-L/\-Work/sdlvisualtest/visualtest/src/variator\-\_\-exhaustive.\-c}}
}
{\ttfamily \#include $<$time.\-h$>$}\\*
{\ttfamily \#include $<$S\-D\-L\-\_\-test.\-h$>$}\\*
{\ttfamily \#include \char`\"{}S\-D\-L\-\_\-visualtest\-\_\-sut\-\_\-configparser.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}S\-D\-L\-\_\-visualtest\-\_\-exhaustive\-\_\-variator.\-h\char`\"{}}\\*
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{variator__exhaustive_8c_a9e213e530ddf5a18014786d10e9fdaee}{S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator} (\hyperlink{struct_s_d_l_visual_test___exhaustive_variator}{S\-D\-L\-Visual\-Test\-\_\-\-Exhaustive\-Variator} $\ast$variator, \hyperlink{struct_s_d_l_visual_test___s_u_t_config}{S\-D\-L\-Visual\-Test\-\_\-\-S\-U\-T\-Config} $\ast$config)
\item 
char $\ast$ \hyperlink{variator__exhaustive_8c_aa9e13a92945ef48308215b3fa068ed29}{S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation} (\hyperlink{struct_s_d_l_visual_test___exhaustive_variator}{S\-D\-L\-Visual\-Test\-\_\-\-Exhaustive\-Variator} $\ast$variator)
\item 
void \hyperlink{variator__exhaustive_8c_a7168b055fb86bbbb700d87ae842f7152}{S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator} (\hyperlink{struct_s_d_l_visual_test___exhaustive_variator}{S\-D\-L\-Visual\-Test\-\_\-\-Exhaustive\-Variator} $\ast$variator)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Source file for the variator that tests the S\-U\-T with all the different variations of input parameters that are valid. 

\subsection{Function Documentation}
\hypertarget{variator__exhaustive_8c_a7168b055fb86bbbb700d87ae842f7152}{\index{variator\-\_\-exhaustive.\-c@{variator\-\_\-exhaustive.\-c}!S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator@{S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator}}
\index{S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator@{S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator}!variator_exhaustive.c@{variator\-\_\-exhaustive.\-c}}
\subsubsection[{S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator}]{\setlength{\rightskip}{0pt plus 5cm}void S\-D\-L\-Visual\-Test\-\_\-\-Free\-Exhaustive\-Variator (
\begin{DoxyParamCaption}
\item[{{\bf S\-D\-L\-Visual\-Test\-\_\-\-Exhaustive\-Variator} $\ast$}]{variator}
\end{DoxyParamCaption}
)}}\label{variator__exhaustive_8c_a7168b055fb86bbbb700d87ae842f7152}
Frees any resources associated with the variator. \hypertarget{variator__exhaustive_8c_aa9e13a92945ef48308215b3fa068ed29}{\index{variator\-\_\-exhaustive.\-c@{variator\-\_\-exhaustive.\-c}!S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation@{S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation}}
\index{S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation@{S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation}!variator_exhaustive.c@{variator\-\_\-exhaustive.\-c}}
\subsubsection[{S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ S\-D\-L\-Visual\-Test\-\_\-\-Get\-Next\-Exhaustive\-Variation (
\begin{DoxyParamCaption}
\item[{{\bf S\-D\-L\-Visual\-Test\-\_\-\-Exhaustive\-Variator} $\ast$}]{variator}
\end{DoxyParamCaption}
)}}\label{variator__exhaustive_8c_aa9e13a92945ef48308215b3fa068ed29}
Gets the arguments string for the next variation using the variator and updates the variator's current variation object to the next variation.

\begin{DoxyReturn}{Returns}
The arguments string representing the next variation on success, and N\-U\-L\-L on failure or if we have iterated through all possible variations. In the latter case subsequent calls will start the variations again from the very beginning. The pointer returned should not be freed. 
\end{DoxyReturn}
\hypertarget{variator__exhaustive_8c_a9e213e530ddf5a18014786d10e9fdaee}{\index{variator\-\_\-exhaustive.\-c@{variator\-\_\-exhaustive.\-c}!S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator@{S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator}}
\index{S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator@{S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator}!variator_exhaustive.c@{variator\-\_\-exhaustive.\-c}}
\subsubsection[{S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator}]{\setlength{\rightskip}{0pt plus 5cm}int S\-D\-L\-Visual\-Test\-\_\-\-Init\-Exhaustive\-Variator (
\begin{DoxyParamCaption}
\item[{{\bf S\-D\-L\-Visual\-Test\-\_\-\-Exhaustive\-Variator} $\ast$}]{variator, }
\item[{{\bf S\-D\-L\-Visual\-Test\-\_\-\-S\-U\-T\-Config} $\ast$}]{config}
\end{DoxyParamCaption}
)}}\label{variator__exhaustive_8c_a9e213e530ddf5a18014786d10e9fdaee}
Initializes the variator.

\begin{DoxyReturn}{Returns}
1 on success, 0 on failure 
\end{DoxyReturn}
