Hash :
0e45984f
Author :
Date :
2015-06-21T17:33:46
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
/* See COPYING.txt for the full license governing this code. */
/**
* \file SDL_visualtest_variators.h
*
* Header for all the variators that vary input parameters to a SUT application.
*/
#include "SDL_visualtest_exhaustive_variator.h"
#include "SDL_visualtest_random_variator.h"
#ifndef _SDL_visualtest_variators_h
#define _SDL_visualtest_variators_h
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
extern "C" {
#endif
/**
* Struct that acts like a wrapper around the different types of variators
* available.
*/
typedef struct SDLVisualTest_Variator
{
/*! Type of the variator */
SDLVisualTest_VariatorType type;
/*! union object that stores the variator */
union
{
SDLVisualTest_ExhaustiveVariator exhaustive;
SDLVisualTest_RandomVariator random;
} data;
} SDLVisualTest_Variator;
/**
* Initializes the variator object pointed to by \c variator of type \c type
* with information from the config object pointed to by \c config.
*
* \return 1 on success, 0 on failure
*/
int SDLVisualTest_InitVariator(SDLVisualTest_Variator* variator,
SDLVisualTest_SUTConfig* config,
SDLVisualTest_VariatorType type,
Uint64 seed);
/**
* Gets the next variation using the variator.
*
* \return The arguments string representing the variation on success, and
* NULL on failure. The pointer returned should not be freed.
*/
char* SDLVisualTest_GetNextVariation(SDLVisualTest_Variator* variator);
/**
* Frees any resources associated with the variator.
*/
void SDLVisualTest_FreeVariator(SDLVisualTest_Variator* variator);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
}
#endif
#endif /* _SDL_visualtest_variators_h */