Sfoglia il codice sorgente

Combo commit including the following mercurial changes

changeset:   9256:9c45fc8605d9
user:        David Ludwig <dludwig@pobox.com>
date:        Wed Dec 03 10:55:23 2014 -0500
files:       src/core/winrt/SDL_winrtapp_direct3d.cpp
description:
WinRT: fixed bug whereby SDL would override an app's default orientation

WinRT apps can set a default, preferred orientation via a .appxmanifest file.
SDL was overriding this on app startup, and making the app use all possible
orientations (landscape and portrait).

Thanks to Eric Wing for the heads up on this!

changeset:   9255:c2ef0d8d6da0
user:        David Ludwig <dludwig@pobox.com>
date:        Tue Dec 02 21:18:50 2014 -0500
files:       docs/README-winrt.md include/SDL_hints.h src/filesystem/winrt/SDL_sysfilesystem.cpp
description:
WinRT: removed SDL_HINT_WINRT_PREF_PATH_ROOT (introduced post-2.0.3 & pre-2.0.4)

A WinRT app's Roaming folder-path can still be retrieved via calls to
SDL_WinRTGetFSPathUTF8() or SDL_WinRTGetFSPathUNICODE(), if need be.

changeset:   9254:6c469ea796e4
user:        Andreas Schiffler <aschiffler@ferzkopp.net>
date:        Sun Nov 30 20:55:27 2014 -0800
files:       include/SDL_test_compare.h src/test/SDL_test_compare.c test/testautomation_platform.c test/testautomation_render.c test/testautomation_rwops.c test/testautomation_sdltest.c test/testautomation_timer.c test/testautomation_video.c
description:
Fix assert format strings/parameters in testautomation modules; improve output of SDL_CompareSurfaces to aid debugging; update platform_testSetErrorInvalidInput for SDL changes

changeset:   9253:4b7c962ae015
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sun Nov 30 22:17:12 2014 +0100
description:
Removed generated doxygen output of visual test suite.

The files may be generated again by running doxygen locally (like SDL's docs).

changeset:   9252:a11e8f6d82d1
user:        Sam Lantinga <slouken@libsdl.org>
date:        Sat Nov 29 14:41:18 2014 -0800
files:       configure configure.in
description:
Fixed bug 2795 - SDL library detection selects the wrong lib

Chris Beck

When creating a homebrew recipe for wesnoth, I discovered that the SDL image configuration routine does not detect libpng properly -- if you have multiple instances of libpng on your system, and you use environment variables to select an instance which is not in your system directory, the build can be broken, because it will run configuration tests against the system installed version, but deduce that it should use the filename of the system-installed version. In a vanilla build of wesnoth using homebrew, this results in segfaults at runtime, because you end up linking against two different versions of libpng, which is also needed independently of SDL.

The problem is essentially in the "find_lib" routine in the configure file:

find_lib()
{
    gcc_bin_path=[`$CC -print-search-dirs 2>/dev/null | fgrep programs: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
    gcc_lib_path=[`$CC -print-search-dirs 2>/dev/null | fgrep libraries: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
    env_lib_path=[`echo $LIBS $LDFLAGS | sed 's/-L[ ]*//g'`]
    for path in $gcc_bin_path $gcc_lib_path $env_lib_path /usr/lib /usr/local/lib; do
        lib=[`ls -- $path/$1 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
        if test x$lib != x; then
            echo $lib
            return
        fi
    done
}

Because the for loop goes over the system directories before the environment directories, any system-installed lib will shadow the lib selected via environment variables. This is contrary to the behavior of the configuration tests earlier in the script, which prefers the environment variable libs over the system-installed libs. The 'for' loop should instead be:

    for path in $env_lib_path $gcc_bin_path $gcc_lib_path /usr/lib /usr/local/lib; do

You can see the full discussion on the Homebrew / linuxbrew issue tracker here: https://github.com/Homebrew/linuxbrew/issues/172

I have checked that this bug also affects SDL 1.2.15, SDL_mixer and SDL_ttf 1.2, which all use this same "find_lib" routine. I have not determined if the bug affects SDL 2.0, which seems not to use this exact routine.

changeset:   9251:198989b162d3
user:        Sam Lantinga <slouken@libsdl.org>
date:        Sat Nov 29 11:51:13 2014 -0800
files:       src/haptic/linux/SDL_syshaptic.c
description:
Fixed bug 2766 - Haptic coding bugs and fixes for Linux FF: periodic.phase handled as time instead of angle; + direction clarification

Elias Vanderstuyft

Remove the dependency of the calculation of Linux "phase" on "period",
currently the "phase" parameter is interpreted as a time shift, instead of a phase shift.
The Linux input documentation is not clear about the exact units of the "phase" parameter (see http://lxr.free-electrons.com/source/include/uapi/linux/input.h?v=3.17#L1075 ),
but we're about to standardize the 'phase shift' interpretation into the Linux input documentation,
since this will ease the job of a driver to recalculate the effect's state when the user dynamically updates the "period" parameter.

changeset:   9250:50fb32b7f2bd
user:        Sam Lantinga <slouken@libsdl.org>
date:        Sat Nov 29 11:49:58 2014 -0800
files:       include/SDL_haptic.h
description:
Fixed bug 2766 - Haptic coding bugs and fixes for Linux FF: periodic.phase handled as time instead of angle; + direction clarification

Elias Vanderstuyft

"Horizontal" is not very precise, use "Positive phase" instead.
"Positive" because it's actually waveform(2*pi*t + phase) instead of waveform(2*pi*t - phase).

changeset:   9249:35a4fab04296
user:        Sam Lantinga <slouken@libsdl.org>
date:        Sat Nov 29 11:48:43 2014 -0800
files:       include/SDL_haptic.h src/haptic/linux/SDL_syshaptic.c
description:
Fixed bug 2766 - Haptic coding bugs and fixes for Linux FF: periodic.phase handled as time instead of angle; + direction clarification

Elias Vanderstuyft

It's not obvious from the general "haptic direction" description what the SDL direction actually means in terms of force magnitude sign,
currently its meaning is only reflected by the example.

changeset:   9248:dabd5df43970
user:        Sam Lantinga <slouken@libsdl.org>
date:        Sat Nov 29 11:18:49 2014 -0800
files:       include/SDL_render.h
description:
Improved the pitch variable description

changeset:   9247:eddb899239fe
user:        David Ludwig <dludwig@pobox.com>
date:        Sat Nov 29 10:09:30 2014 -0500
files:       docs/README-winrt.md include/SDL_hints.h src/filesystem/winrt/SDL_sysfilesystem.cpp
description:
WinRT: bug and data-integrity fixes for SDL_GetPrefPath()

This change does a few things, all with regards to the WinRT implementation of
SDL_GetPrefPath():

1. it fixes a bug whereby SDL_GetPrefPath() did not create the directory it
returned.  On other SDL platforms, SDL_GetPrefPath() will create separate
directories for its 'org' and 'app' folders.  Without this, attempts to create
files in the pref-path would fail, unless those directories were first created
by the app, or by some other library the app used.  This change makes sure
that these directories get created, before SDL_GetPrefPath() returns to its
caller(s).

2. it defaults to having SDL_GetPrefPath() return a WinRT 'Local' folder
on all platforms.  Previously, for Windows Store apps, it would have used a
different, 'Roaming' folder.  Files in Roaming folders can be automatically,
and synchronized across multiple devices by Windows.  This synchronization can
happen while the app runs, with new files being copied into a running app's
pref-path.  Unless an app is specifically designed to handle this scenario,
there is a chance that save-data could be overwritten in unwanted or
unexpected ways.

The default is now to use a Local folder, which does not get synchronized, and
which is arguably a bit safer to use.  Apps that wish to use Roaming folders
can do so by setting SDL_HINT_WINRT_PREF_PATH_ROOT to "roaming", however it
is recommended that one first read Microsoft's documentation for Roaming
files, a link to which is provided in README-winrt.md.

To preserve older pref-path selection behavior (found in SDL 2.0.3, as well as
many pre-2.0.4 versions of SDL from hg.libsdl.org), which uses a Roaming path
in Windows Store apps, and a Local path in Windows Phone, set
SDL_HINT_WINRT_PREF_PATH_ROOT to "old".

Please note that Roaming paths are not supported on Windows Phone 8.0, due to
limitations in the OS itself.  Attempts to use this will fail.
(Windows Phone 8.1 does not have this limitation, however.)

3. It makes SDL_GetPrefPath(), when on Windows Phone 8.0, and when
SDL_HINT_WINRT_PREF_PATH_ROOT is set to "roaming", return NULL, rather than
silently defaulting to a Local path (then switching to a Roaming path if and
when the user upgraded to Windows Phone 8.1).

changeset:   9246:a761913e5e91
user:        Sam Lantinga <slouken@libsdl.org>
date:        Fri Nov 28 04:51:33 2014 -0800
files:       src/main/windows/SDL_windows_main.c
description:
Fixed bug 2786 - "UCS-2-INTERNAL" iconv encoding is not supported everywhere, use UTF-16LE instead

Jonas Kulla

src/main/windows/SDL_windows_main.c:137:
cmdline = SDL_iconv_string("UTF-8", "UCS-2-INTERNAL", (char *)(text), (SDL_wcslen(text)+1)*sizeof(WCHAR));

I'm trying to compile an SDL2 application for windows using the mingw-w64 32bit toolchain provided by my distro (Fedora 19). However, even the simplest test program that does nothing at all fails to startup with a "Fatal error - out of memory" message because the mingw iconv library provided by my distro does not support the "UCS-2-INTERNAL" encoding and the conversion returns null.

From my little bit of research, it turns out that even though this encoding is supported by the external GNU libiconv library, some glibc versions (?) don't support it with their internal iconv routines, and will instead provide the native endian encoding when "UCS-2" is specified.

Nonetheless, I wonder why the native endianness is considered in the first place when Windows doesn't even run on any big endian archs (to my knowledge). And true enough, 'WIN_StringToUTF8' from core/windows/SDL_windows.h is used everywhere else in the windows backend, which is just a macro to iconv with "UTF-16LE" as source. Therefore it would IMO make sense to use this macro here as well, which would solve my problem (patch attached).

changeset:   9245:104f3bcfbf45
user:        Sam Lantinga <slouken@libsdl.org>
date:        Fri Nov 28 04:42:46 2014 -0800
files:       src/video/x11/SDL_x11events.c
description:
Fixed bug 2676 - xdnd_version check issue in case ClientMessage

Nitz

I added xdnd_version check to XdndPosition case also
under DEBUG_XEVENTS macro.
by this we can get the action requested by user.

I analysed further and found out that removing xdnd_version check at XdndDrop case is a bad idea because
in XConvertSelection API timestamp should be passed if(xdnd_version >= 1)
otherwise CurrentTime should be passed
So xdnd_version check is important at XdndDrop case

I made xdnd_version as a static so that it can store the version in other cases also.

changeset:   9244:9f8962b9b09e
user:        Sam Lantinga <slouken@libsdl.org>
date:        Fri Nov 28 04:37:50 2014 -0800
files:       src/thread/pthread/SDL_syscond.c src/thread/pthread/SDL_syssem.c
description:
Fixed bug 2411 - Even if built with --enable-clock_gettime, SDL2 still calls gettimeofday()

Ben Swick

Makes SDL_syscond.c and SDL_syssem.c use clock_gettime(CLOCK_REALTIME) when HAVE_CLOCK_GETTIME is defined.

changeset:   9243:0895ce420b99
user:        Eric Wing <ewing . public |-at-| gmail . com>
date:        Sun Nov 02 20:55:13 2014 -0800
files:       src/video/uikit/SDL_uikitappdelegate.m
description:
iOS: Added support for iOS 8 LaunchScreen NIBs.

iOS 8 introduces LaunchScreen NIBs which use autolayout to handle all devices and orientations with a single NIB instead of multiple launch images. This is also the only way to get the App Store badge "Optimized for iPhone 6 and iPhone 6 Plus". So if the application is running on iOS 8 or greater AND has specified a LaunchScreen in their Info.plist, this patch will use the NIB as the launch screen. Otherwise, the code falls back to the legacy code path.

Note: Upon audit of the legacy path, it appears that it does not properly handle the UILaunchImages Info.plist convention. I've added comments inline to the code about this. However, in about a year from now, nobody is going to care about this path since everybody should be using LaunchScreen NIBs.

changeset:   9242:f4d353bd5d16
user:        David Ludwig <dludwig@pobox.com>
date:        Thu Nov 27 09:55:34 2014 -0500
files:       docs/README-winrt.md include/SDL_hints.h src/filesystem/winrt/SDL_sysfilesystem.cpp
description:
WinRT: added SDL_HINT_WINRT_PREF_PATH_ROOT

SDL_HINT_WINRT_PREF_PATH_ROOT allows WinRT apps to alter the path that
SDL_GetPrefPath() returns.  Setting it to "local" uses the app's
OS-defined Local folder, setting it to "roaming" uses the app's OS-defined
Roaming folder.

Roaming folder support is not available in Windows Phone 8.0.  Attempts to
make SDL_GetPrefPath() return a Roaming folder on this OS will be ignored.

Various bits of documentation on this were added to SDL_hints.h, and to
README-winrt.md

changeset:   9241:4900e838abbc
user:        David Ludwig <dludwig@pobox.com>
date:        Thu Nov 27 08:50:11 2014 -0500
files:       src/filesystem/winrt/SDL_sysfilesystem.cpp
description:
WinRT: removed a completed TODO item from an inline comment

changeset:   9240:dc4ad21d8596
user:        David Ludwig <dludwig@pobox.com>
date:        Wed Nov 26 21:34:15 2014 -0500
files:       src/core/winrt/SDL_winrtapp_direct3d.cpp src/core/winrt/SDL_winrtapp_direct3d.h src/video/winrt/SDL_winrtevents_c.h src/video/winrt/SDL_winrtkeyboard.cpp
description:
WinRT: added initial SDL_TEXTINPUT support

Further support regarding IME and on-screen keyboards is pending, some of
which might not be 100% compatible with other platforms, given WinRT platform
restrictions.  An MSDN article at http://msdn.microsoft.com/en-us/library/windows/apps/hh465404.aspx
indicates that on-screen keyboard display requires that the user first tap on
a Windows/XAML text control.

This change adds basic SDL_TEXTINPUT support, with input coming from hardware
keyboards, at a minimum, and without the need for XAML integration (which is
still pending integration into SDL, by and large).

changeset:   9239:4a4293b8a37f
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Tue Nov 25 22:37:12 2014 +0100
files:       include/SDL_blendmode.h include/SDL_filesystem.h
description:
Corrected header file guard comments.

changeset:   9238:3e53bd4510a2
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Tue Nov 25 22:31:14 2014 +0100
files:       src/main/android/SDL_android_main.c
description:
Fixed limitation for number of custom main() arguments on Android.

Limitation was size of the reference table because local refs were not deleted.

changeset:   9237:2cc90bb31777
user:        Jørgen P. Tjernø <jorgen@uberent.com>
date:        Mon Nov 24 11:46:20 2014 -0800
files:       src/video/cocoa/SDL_cocoawindow.m
description:
Mac: Add drag & drop support.

Fixes bug https://bugzilla.libsdl.org/show_bug.cgi?id=2757

Thanks to Alex Szpakowski for the patch!

changeset:   9236:a845edf98a80
user:        Edward Rudd <urkle@outoforder.cc>
date:        Sun Nov 23 15:48:52 2014 -0500
files:       src/video/cocoa/SDL_cocoawindow.m
description:
Cocoa: add in handling of "lost" touches on OS X. [bug #2635]

This scenario can occur, for example, when the 4-finger touch sequence is used to switch spaces.  the SDL window does not receive the touch up events and ends up thinking there are far more fingers on the pad than there are.

So the solution here is everytime a new "touch" appears we can through and check if there are any existing known touches by the OS and if there are none, abut SDL things there are, we simply go through and cancel the SDL touches.

Side affects.
- the "touch up" won't occur until the users sends a new touch (could be well after the actual release really did occur)

changeset:   9235:ba9988f0daec
user:        Edward Rudd <urkle@outoforder.cc>
date:        Sun Nov 23 15:39:28 2014 -0500
files:       test/testgesture.c
description:
add "i" shortcut to testgesture tool to log # of fingers down on the touch devices.

changeset:   9234:199baca091f9
user:        Edward Rudd <urkle@outoforder.cc>
date:        Sun Nov 23 15:21:49 2014 -0500
files:       Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj
description:
add controllermap program to SDLTest xcode project

changeset:   9233:b8eaf9623c0b
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sun Nov 23 20:46:34 2014 +0100
files:       include/SDL_test_crc32.h include/SDL_test_fuzzer.h include/SDL_test_md5.h
description:
Fixed doxygen tags in header file documentation comments.

changeset:   9232:6ab4ae85c41e
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sun Nov 23 20:40:48 2014 +0100
files:       include/SDL_test_assert.h include/SDL_test_fuzzer.h
description:
Fixed typos in header file documentation comments.

changeset:   9231:ec22701132b5
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sun Nov 23 20:38:18 2014 +0100
files:       src/core/android/SDL_android.c
description:
Fixed local reference leaks in messagebox implementation for Android.

changeset:   9230:7f3e7cacefd4
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sun Nov 23 20:35:51 2014 +0100
files:       android-project/src/org/libsdl/app/SDLActivity.java
description:
Added name for second Java Thread on Android.

changeset:   9229:c4ff10b9a23c
user:        David Ludwig <dludwig@pobox.com>
date:        Sun Nov 23 08:59:01 2014 -0500
files:       src/filesystem/winrt/SDL_sysfilesystem.cpp
description:
WinRT: fixed an invalid comment in SDL_GetPrefPath() (for WinRT)

changeset:   9228:9ecf7c9f49e5
user:        David Ludwig <dludwig@pobox.com>
date:        Sun Nov 23 08:52:10 2014 -0500
files:       src/filesystem/winrt/SDL_sysfilesystem.cpp
description:
WinRT: allowed 'roaming' and 'temp' folder paths to be retrieved on WinPhone 8.1

Windows Phone 8.0 either did not define, or provide access to, a 'RoamingFolder'
or 'TemporaryFolder' for apps to use.  Windows 8.0 and 8.1 do, as does
Windows Phone 8.1.  This change allows SDL-based Windows Phone 8.1 apps to
access these folders, via either the SDL_WinRTGetFSPathUNICODE() or
SDL_WinRTGetFSPathUTF8() functions.

SDL_GetPrefPath(), which on WinRT, is based on SDL_WinRTGetFSPathUTF8(), will
continue to return the app's 'local' folder, despite Windows 8.x
counterpart apps using the 'roaming' folder, in order to preserve compatibility
when 8.0-based Phone apps upgrade to 8.1-based Phone apps.

changeset:   9227:4d9126f64347
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sun Nov 23 11:26:46 2014 +0100
files:       include/SDL_joystick.h
description:
Fixed typo in header file documentation comment.

changeset:   9226:bea2e725e29a
user:        David Ludwig <dludwig@pobox.com>
date:        Sat Nov 22 21:13:46 2014 -0500
files:       src/video/winrt/SDL_winrtpointerinput.cpp
description:
Fixed bug 2726 - WinRT touches not setting 'which' field in virtual mouse events

This patch makes sure that any SDL_MOUSEBUTTONDOWN, SDL_MOUSEBUTTONUP, and
SDL_MOUSEMOTION events, as triggered by a touch event in a WinRT app, set the
event's 'which' field to SDL_TOUCH_MOUSEID.  Previously, this was getting set
to the same value as events from a real mouse, '0'.

Thanks to Diego for providing information on this bug, and to Tamas Hamor for
sending over a patch!

changeset:   9225:5b97e1f05e53
user:        Philipp Wiesemann <philipp.wiesemann@arcor.de>
date:        Sat Nov 22 22:20:40 2014 +0100
files:       include/SDL_gamecontroller.h
description:
Corrected header file documentation comment.
Sam Lantinga 3 mesi fa
parent
commit
70438be272
100 ha cambiato i file con 1478 aggiunte e 6774 eliminazioni
  1. 0 3
      .hgignore
  2. 0 3
      Xcode-iOS/Demos/src/fireworks.c
  3. 0 12
      Xcode-iOS/SDL/SDL.xcodeproj/project.pbxproj
  4. 104 2
      Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj
  5. 1 1
      android-project/src/org/libsdl/app/SDLActivity.java
  6. 1 1
      configure
  7. 1 1
      configure.in
  8. 39 0
      docs/README-winrt.md
  9. 1 1
      include/SDL_blendmode.h
  10. 1 1
      include/SDL_filesystem.h
  11. 1 1
      include/SDL_gamecontroller.h
  12. 4 1
      include/SDL_haptic.h
  13. 3 4
      include/SDL_hints.h
  14. 1 1
      include/SDL_joystick.h
  15. 1 1
      include/SDL_render.h
  16. 0 10
      include/SDL_system.h
  17. 1 1
      include/SDL_test_assert.h
  18. 2 2
      include/SDL_test_compare.h
  19. 12 12
      include/SDL_test_crc32.h
  20. 2 2
      include/SDL_test_fuzzer.h
  21. 9 9
      include/SDL_test_md5.h
  22. 16 7
      src/core/android/SDL_android.c
  23. 18 0
      src/core/winrt/SDL_winrtapp_direct3d.cpp
  24. 1 0
      src/core/winrt/SDL_winrtapp_direct3d.h
  25. 3 2
      src/file/cocoa/SDL_rwopsbundlesupport.m
  26. 1 4
      src/filesystem/cocoa/SDL_sysfilesystem.m
  27. 66 19
      src/filesystem/winrt/SDL_sysfilesystem.cpp
  28. 4 4
      src/haptic/linux/SDL_syshaptic.c
  29. 16 31
      src/joystick/iphoneos/SDL_sysjoystick.m
  30. 1 0
      src/main/android/SDL_android_main.c
  31. 1 1
      src/main/windows/SDL_windows_main.c
  32. 18 19
      src/power/uikit/SDL_syspower.m
  33. 8 0
      src/test/SDL_test_compare.c
  34. 10 0
      src/thread/pthread/SDL_syscond.c
  35. 16 9
      src/thread/pthread/SDL_syssem.c
  36. 76 1
      src/video/cocoa/SDL_cocoawindow.m
  37. 184 34
      src/video/uikit/SDL_uikitappdelegate.m
  38. 1 2
      src/video/uikit/SDL_uikitevents.m
  39. 34 32
      src/video/uikit/SDL_uikitmessagebox.m
  40. 11 11
      src/video/uikit/SDL_uikitmodes.h
  41. 86 91
      src/video/uikit/SDL_uikitmodes.m
  42. 0 2
      src/video/uikit/SDL_uikitopengles.h
  43. 90 157
      src/video/uikit/SDL_uikitopengles.m
  44. 40 27
      src/video/uikit/SDL_uikitopenglview.h
  45. 75 151
      src/video/uikit/SDL_uikitopenglview.m
  46. 14 2
      src/video/uikit/SDL_uikitvideo.h
  47. 5 24
      src/video/uikit/SDL_uikitvideo.m
  48. 26 7
      src/video/uikit/SDL_uikitview.h
  49. 131 79
      src/video/uikit/SDL_uikitview.m
  50. 5 3
      src/video/uikit/SDL_uikitviewcontroller.h
  51. 56 14
      src/video/uikit/SDL_uikitviewcontroller.m
  52. 8 14
      src/video/uikit/SDL_uikitwindow.h
  53. 151 236
      src/video/uikit/SDL_uikitwindow.m
  54. 1 0
      src/video/winrt/SDL_winrtevents_c.h
  55. 18 0
      src/video/winrt/SDL_winrtkeyboard.cpp
  56. 4 4
      src/video/winrt/SDL_winrtpointerinput.cpp
  57. 17 1
      src/video/x11/SDL_x11events.c
  58. 8 17
      test/testautomation_platform.c
  59. 52 4
      test/testautomation_render.c
  60. 7 7
      test/testautomation_rwops.c
  61. 1 1
      test/testautomation_sdltest.c
  62. 2 2
      test/testautomation_timer.c
  63. 3 3
      test/testautomation_video.c
  64. 9 0
      test/testgesture.c
  65. 0 424
      visualtest/docs/html/_s_d_l__visualtest__action__configparser_8h.html
  66. 0 169
      visualtest/docs/html/_s_d_l__visualtest__action__configparser_8h_source.html
  67. 0 208
      visualtest/docs/html/_s_d_l__visualtest__exhaustive__variator_8h.html
  68. 0 130
      visualtest/docs/html/_s_d_l__visualtest__exhaustive__variator_8h_source.html
  69. 0 231
      visualtest/docs/html/_s_d_l__visualtest__harness__argparser_8h.html
  70. 0 140
      visualtest/docs/html/_s_d_l__visualtest__harness__argparser_8h_source.html
  71. 0 115
      visualtest/docs/html/_s_d_l__visualtest__mischelper_8h_source.html
  72. 0 172
      visualtest/docs/html/_s_d_l__visualtest__parsehelper_8h.html
  73. 0 117
      visualtest/docs/html/_s_d_l__visualtest__parsehelper_8h_source.html
  74. 0 328
      visualtest/docs/html/_s_d_l__visualtest__process_8h.html
  75. 0 152
      visualtest/docs/html/_s_d_l__visualtest__process_8h_source.html
  76. 0 213
      visualtest/docs/html/_s_d_l__visualtest__random__variator_8h.html
  77. 0 130
      visualtest/docs/html/_s_d_l__visualtest__random__variator_8h_source.html
  78. 0 137
      visualtest/docs/html/_s_d_l__visualtest__rwhelper_8h_source.html
  79. 0 197
      visualtest/docs/html/_s_d_l__visualtest__screenshot_8h.html
  80. 0 121
      visualtest/docs/html/_s_d_l__visualtest__screenshot_8h_source.html
  81. 0 317
      visualtest/docs/html/_s_d_l__visualtest__sut__configparser_8h.html
  82. 0 154
      visualtest/docs/html/_s_d_l__visualtest__sut__configparser_8h_source.html
  83. 0 339
      visualtest/docs/html/_s_d_l__visualtest__variator__common_8h.html
  84. 0 158
      visualtest/docs/html/_s_d_l__visualtest__variator__common_8h_source.html
  85. 0 220
      visualtest/docs/html/_s_d_l__visualtest__variators_8h.html
  86. 0 135
      visualtest/docs/html/_s_d_l__visualtest__variators_8h_source.html
  87. 0 301
      visualtest/docs/html/action__configparser_8c.html
  88. 0 114
      visualtest/docs/html/annotated.html
  89. BIN
      visualtest/docs/html/bc_s.png
  90. BIN
      visualtest/docs/html/bdwn.png
  91. 0 105
      visualtest/docs/html/classes.html
  92. BIN
      visualtest/docs/html/closed.png
  93. 0 117
      visualtest/docs/html/config_8h_source.html
  94. 0 98
      visualtest/docs/html/dir_244674c763b96fdad0a6ffe8d0250e08.html
  95. 0 127
      visualtest/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
  96. 0 98
      visualtest/docs/html/dir_88e6415a3128b404f1102a130772bdb6.html
  97. 0 98
      visualtest/docs/html/dir_a18918b93668b435612395bbc2e8b82b.html
  98. 0 120
      visualtest/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html
  99. 0 100
      visualtest/docs/html/dir_f584182df4c69fab0b14563b4d535158.html
  100. 0 98
      visualtest/docs/html/dir_fe549de2418b81853b5f194edb4a7f34.html

+ 0 - 3
.hgignore

@@ -8,9 +8,6 @@ Makefile
 sdl-config
 SDL2.spec
 build
-Build
-*xcuserdata*
-*xcworkspacedata*
 
 # for Xcode
 *.orig

+ 0 - 3
Xcode-iOS/Demos/src/fireworks.c

@@ -387,9 +387,6 @@ main(int argc, char *argv[])
     SDL_GL_SetAttribute(SDL_GL_RETAINED_BACKING, 0);
     SDL_GL_SetAttribute(SDL_GL_ACCELERATED_VISUAL, 1);
 
-    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 1);
-    SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 1);
-
     /* create main window and renderer */
     window = SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
                                 SDL_WINDOW_OPENGL |

+ 0 - 12
Xcode-iOS/SDL/SDL.xcodeproj/project.pbxproj

@@ -1274,14 +1274,8 @@
 		FD6526640DE8FCCB002AD96B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				CLANG_ENABLE_OBJC_ARC = YES;
-				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
-				CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES;
 				COPY_PHASE_STRIP = NO;
 				IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
-				GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES;
-				GCC_WARN_STRICT_SELECTOR_MATCH = YES;
-				GCC_WARN_UNDECLARED_SELECTOR = YES;
 				PRODUCT_NAME = SDL2;
 				SKIP_INSTALL = YES;
 			};
@@ -1290,14 +1284,8 @@
 		FD6526650DE8FCCB002AD96B /* Release */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				CLANG_ENABLE_OBJC_ARC = YES;
-				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
-				CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES;
 				COPY_PHASE_STRIP = YES;
 				IPHONEOS_DEPLOYMENT_TARGET = 5.1.1;
-				GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES;
-				GCC_WARN_STRICT_SELECTOR_MATCH = YES;
-				GCC_WARN_UNDECLARED_SELECTOR = YES;
 				PRODUCT_NAME = SDL2;
 				SKIP_INSTALL = YES;
 			};

+ 104 - 2
Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj

@@ -555,6 +555,20 @@
 		DB89957918A19ABA0092407C /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A873910730675007319AE /* Carbon.framework */; };
 		DB89957A18A19ABA0092407C /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA645093FFD41000C53B3 /* libSDL2.a */; };
 		DB89958418A19B130092407C /* testhotplug.c in Sources */ = {isa = PBXBuildFile; fileRef = DB89958318A19B130092407C /* testhotplug.c */; };
+		DBEC54DD1A1A81C3005B1EAB /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA73672219A54A90004122E4 /* CoreVideo.framework */; };
+		DBEC54DE1A1A81C3005B1EAB /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; };
+		DBEC54DF1A1A81C3005B1EAB /* libSDL2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA645093FFD41000C53B3 /* libSDL2.a */; };
+		DBEC54E01A1A81C3005B1EAB /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A863B10730545007319AE /* CoreAudio.framework */; };
+		DBEC54E11A1A81C3005B1EAB /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A863C10730545007319AE /* ForceFeedback.framework */; };
+		DBEC54E21A1A81C3005B1EAB /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A863D10730545007319AE /* IOKit.framework */; };
+		DBEC54E31A1A81C3005B1EAB /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A869F10730593007319AE /* AudioToolbox.framework */; };
+		DBEC54E41A1A81C3005B1EAB /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A86A010730593007319AE /* CoreFoundation.framework */; };
+		DBEC54E51A1A81C3005B1EAB /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A871410730623007319AE /* AudioUnit.framework */; };
+		DBEC54E61A1A81C3005B1EAB /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002A873910730675007319AE /* Carbon.framework */; };
+		DBEC54EB1A1A8205005B1EAB /* controllermap.c in Sources */ = {isa = PBXBuildFile; fileRef = DBEC54D11A1A811D005B1EAB /* controllermap.c */; };
+		DBEC54ED1A1A828A005B1EAB /* axis.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = DBEC54D61A1A8145005B1EAB /* axis.bmp */; };
+		DBEC54EE1A1A828D005B1EAB /* button.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = DBEC54D71A1A8145005B1EAB /* button.bmp */; };
+		DBEC54EF1A1A828F005B1EAB /* controllermap.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = DBEC54D81A1A8145005B1EAB /* controllermap.bmp */; };
 		FA73672319A54A90004122E4 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA73672219A54A90004122E4 /* CoreVideo.framework */; };
 		FA73672819A54AB6004122E4 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA73672219A54A90004122E4 /* CoreVideo.framework */; };
 		FA73672919A54AB9004122E4 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA73672219A54A90004122E4 /* CoreVideo.framework */; };
@@ -1056,6 +1070,18 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		DBEC54EC1A1A827C005B1EAB /* CopyFiles */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = "";
+			dstSubfolderSpec = 16;
+			files = (
+				DBEC54ED1A1A828A005B1EAB /* axis.bmp in CopyFiles */,
+				DBEC54EE1A1A828D005B1EAB /* button.bmp in CopyFiles */,
+				DBEC54EF1A1A828F005B1EAB /* controllermap.bmp in CopyFiles */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 /* End PBXCopyFilesBuildPhase section */
 
 /* Begin PBXFileReference section */
@@ -1186,6 +1212,11 @@
 		DB89957E18A19ABA0092407C /* testhotplug */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testhotplug; sourceTree = BUILT_PRODUCTS_DIR; };
 		DB89958318A19B130092407C /* testhotplug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testhotplug.c; path = ../../test/testhotplug.c; sourceTree = "<group>"; };
 		DBBC552C182831D700F3CA8D /* TestDropFile-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = "TestDropFile-Info.plist"; sourceTree = "<group>"; };
+		DBEC54D11A1A811D005B1EAB /* controllermap.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = controllermap.c; path = ../../test/controllermap.c; sourceTree = "<group>"; };
+		DBEC54D61A1A8145005B1EAB /* axis.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = axis.bmp; path = ../../test/axis.bmp; sourceTree = "<group>"; };
+		DBEC54D71A1A8145005B1EAB /* button.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = button.bmp; path = ../../test/button.bmp; sourceTree = "<group>"; };
+		DBEC54D81A1A8145005B1EAB /* controllermap.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = controllermap.bmp; path = ../../test/controllermap.bmp; sourceTree = "<group>"; };
+		DBEC54EA1A1A81C3005B1EAB /* controllermap */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = controllermap; sourceTree = BUILT_PRODUCTS_DIR; };
 		FA73672219A54A90004122E4 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = /System/Library/Frameworks/CoreVideo.framework; sourceTree = "<absolute>"; };
 /* End PBXFileReference section */
 
@@ -1974,6 +2005,23 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		DBEC54DC1A1A81C3005B1EAB /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				DBEC54DD1A1A81C3005B1EAB /* CoreVideo.framework in Frameworks */,
+				DBEC54DE1A1A81C3005B1EAB /* Cocoa.framework in Frameworks */,
+				DBEC54DF1A1A81C3005B1EAB /* libSDL2.a in Frameworks */,
+				DBEC54E01A1A81C3005B1EAB /* CoreAudio.framework in Frameworks */,
+				DBEC54E11A1A81C3005B1EAB /* ForceFeedback.framework in Frameworks */,
+				DBEC54E21A1A81C3005B1EAB /* IOKit.framework in Frameworks */,
+				DBEC54E31A1A81C3005B1EAB /* AudioToolbox.framework in Frameworks */,
+				DBEC54E41A1A81C3005B1EAB /* CoreFoundation.framework in Frameworks */,
+				DBEC54E51A1A81C3005B1EAB /* AudioUnit.framework in Frameworks */,
+				DBEC54E61A1A81C3005B1EAB /* Carbon.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
@@ -2007,13 +2055,16 @@
 		00794E4609D207B4003FC8A1 /* Resources */ = {
 			isa = PBXGroup;
 			children = (
-				DBBC552C182831D700F3CA8D /* TestDropFile-Info.plist */,
-				DB166ECF16A1D87000A1396C /* shapes */,
+				DBEC54D61A1A8145005B1EAB /* axis.bmp */,
+				DBEC54D71A1A8145005B1EAB /* button.bmp */,
+				DBEC54D81A1A8145005B1EAB /* controllermap.bmp */,
 				00794E5D09D20839003FC8A1 /* icon.bmp */,
 				00794E5E09D20839003FC8A1 /* moose.dat */,
 				00794E5F09D20839003FC8A1 /* picture.xbm */,
 				00794E6109D20839003FC8A1 /* sample.bmp */,
 				00794E6209D20839003FC8A1 /* sample.wav */,
+				DB166ECF16A1D87000A1396C /* shapes */,
+				DBBC552C182831D700F3CA8D /* TestDropFile-Info.plist */,
 				00794E6309D20839003FC8A1 /* utf8.txt */,
 			);
 			name = Resources;
@@ -2037,6 +2088,7 @@
 			isa = PBXGroup;
 			children = (
 				092D6D10FFB30A2C7F000001 /* checkkeys.c */,
+				DBEC54D11A1A811D005B1EAB /* controllermap.c */,
 				083E4872006D84C97F000001 /* loopwave.c */,
 				0017958F1074216E00F5D044 /* testatomic.c */,
 				001795B01074222D00F5D044 /* testaudioinfo.c */,
@@ -2138,6 +2190,7 @@
 				DB0F490117CA5212008798C5 /* testfilesystem */,
 				DB89957E18A19ABA0092407C /* testhotplug */,
 				DB445EF818184B7000B306B0 /* testdropfile.app */,
+				DBEC54EA1A1A81C3005B1EAB /* controllermap */,
 			);
 			name = Products;
 			sourceTree = "<group>";
@@ -2926,6 +2979,23 @@
 			productReference = DB89957E18A19ABA0092407C /* testhotplug */;
 			productType = "com.apple.product-type.tool";
 		};
+		DBEC54D91A1A81C3005B1EAB /* controllermap */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = DBEC54E71A1A81C3005B1EAB /* Build configuration list for PBXNativeTarget "controllermap" */;
+			buildPhases = (
+				DBEC54DA1A1A81C3005B1EAB /* Sources */,
+				DBEC54DC1A1A81C3005B1EAB /* Frameworks */,
+				DBEC54EC1A1A827C005B1EAB /* CopyFiles */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = controllermap;
+			productName = checkkeys;
+			productReference = DBEC54EA1A1A81C3005B1EAB /* controllermap */;
+			productType = "com.apple.product-type.tool";
+		};
 /* End PBXNativeTarget section */
 
 /* Begin PBXProject section */
@@ -2958,6 +3028,7 @@
 				BEC566920761D90300A33029 /* All */,
 				DB166D7E16A1D12400A1396C /* SDL_test */,
 				BEC566AB0761D90300A33029 /* checkkeys */,
+				DBEC54D91A1A81C3005B1EAB /* controllermap */,
 				BEC566C50761D90300A33029 /* loopwave */,
 				0017957410741F7900F5D044 /* testatomic */,
 				00179595107421BF00F5D044 /* testaudioinfo */,
@@ -3422,6 +3493,14 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
+		DBEC54DA1A1A81C3005B1EAB /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				DBEC54EB1A1A8205005B1EAB /* controllermap.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 /* End PBXSourcesBuildPhase section */
 
 /* Begin PBXTargetDependency section */
@@ -4339,6 +4418,20 @@
 			};
 			name = Release;
 		};
+		DBEC54E81A1A81C3005B1EAB /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = controllermap;
+			};
+			name = Debug;
+		};
+		DBEC54E91A1A81C3005B1EAB /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				PRODUCT_NAME = controllermap;
+			};
+			name = Release;
+		};
 /* End XCBuildConfiguration section */
 
 /* Begin XCConfigurationList section */
@@ -4774,6 +4867,15 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Debug;
 		};
+		DBEC54E71A1A81C3005B1EAB /* Build configuration list for PBXNativeTarget "controllermap" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DBEC54E81A1A81C3005B1EAB /* Debug */,
+				DBEC54E91A1A81C3005B1EAB /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
 /* End XCConfigurationList section */
 	};
 	rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;

+ 1 - 1
android-project/src/org/libsdl/app/SDLActivity.java

@@ -1072,7 +1072,7 @@ class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
                         }
                     }
                 }
-            });
+            }, "SDLThreadListener");
             SDLActivity.mSDLThread.start();
         }
     }

+ 1 - 1
configure

@@ -15728,7 +15728,7 @@ find_lib()
     else
         host_lib_path="/usr/$base_libdir /usr/local/$base_libdir"
     fi
-    for path in $gcc_bin_path $gcc_lib_path $env_lib_path $host_lib_path; do
+    for path in $env_lib_path $gcc_bin_path $gcc_lib_path $host_lib_path; do
         lib=`ls -- $path/$1 2>/dev/null | sed -e '/\.so\..*\./d' -e 's,.*/,,' | sort | tail -1`
         if test x$lib != x; then
             echo $lib

+ 1 - 1
configure.in

@@ -142,7 +142,7 @@ find_lib()
     else
         host_lib_path="/usr/$base_libdir /usr/local/$base_libdir"
     fi
-    for path in $gcc_bin_path $gcc_lib_path $env_lib_path $host_lib_path; do
+    for path in $env_lib_path $gcc_bin_path $gcc_lib_path $host_lib_path; do
         lib=[`ls -- $path/$1 2>/dev/null | sed -e '/\.so\..*\./d' -e 's,.*/,,' | sort | tail -1`]
         if test x$lib != x; then
             echo $lib

+ 39 - 0
docs/README-winrt.md

@@ -116,6 +116,45 @@ Here is a rough list of what works, and what doens't:
 
 
 
+Upgrade Notes
+-------------
+
+#### SDL_GetPrefPath() usage when upgrading WinRT apps from SDL 2.0.3
+
+SDL 2.0.4 fixes two bugs found in the WinRT version of SDL_GetPrefPath().
+The fixes may affect older, SDL 2.0.3-based apps' save data.  Please note
+that these changes only apply to SDL-based WinRT apps, and not to apps for
+any other platform.
+
+1. SDL_GetPrefPath() would return an invalid path, one in which the path's
+   directory had not been created.  Attempts to create files there
+   (via fopen(), for example), would fail, unless that directory was
+   explicitly created beforehand.
+
+2. SDL_GetPrefPath(), for non-WinPhone-based apps, would return a path inside
+   a WinRT 'Roaming' folder, the contents of which get automatically
+   synchronized across multiple devices.  This process can occur while an
+   application runs, and can cause existing save-data to be overwritten
+   at unexpected times, with data from other devices.  (Windows Phone apps
+   written with SDL 2.0.3 did not utilize a Roaming folder, due to API
+   restrictions in Windows Phone 8.0).
+
+
+SDL_GetPrefPath(), starting with SDL 2.0.4, addresses these by:
+
+1. making sure that SDL_GetPrefPath() returns a directory in which data
+   can be written to immediately, without first needing to create directories.
+
+2. basing SDL_GetPrefPath() off of a different, non-Roaming folder, the
+   contents of which do not automatically get synchronized across devices
+   (and which require less work to use safely, in terms of data integrity).
+
+Apps that wish to get their Roaming folder's path can do so either by using
+SDL_WinRTGetFSPathUTF8(), SDL_WinRTGetFSPathUNICODE() (which returns a
+UCS-2/wide-char string), or directly through the WinRT class,
+Windows.Storage.ApplicationData.
+
+
 
 Setup, High-Level Steps
 -----------------------

+ 1 - 1
include/SDL_blendmode.h

@@ -58,6 +58,6 @@ typedef enum
 #endif
 #include "close_code.h"
 
-#endif /* _SDL_video_h */
+#endif /* _SDL_blendmode_h */
 
 /* vi: set ts=4 sw=4 expandtab: */

+ 1 - 1
include/SDL_filesystem.h

@@ -131,6 +131,6 @@ extern DECLSPEC char *SDLCALL SDL_GetPrefPath(const char *org, const char *app);
 #endif
 #include "close_code.h"
 
-#endif /* _SDL_system_h */
+#endif /* _SDL_filesystem_h */
 
 /* vi: set ts=4 sw=4 expandtab: */

+ 1 - 1
include/SDL_gamecontroller.h

@@ -43,7 +43,7 @@ extern "C" {
  *  \file SDL_gamecontroller.h
  *
  *  In order to use these functions, SDL_Init() must have been called
- *  with the ::SDL_INIT_JOYSTICK flag.  This causes SDL to scan the system
+ *  with the ::SDL_INIT_GAMECONTROLLER flag.  This causes SDL to scan the system
  *  for game controllers, and load appropriate drivers.
  *
  *  If you would like to receive controller updates while the application

+ 4 - 1
include/SDL_haptic.h

@@ -347,6 +347,9 @@ typedef struct _SDL_Haptic SDL_Haptic;
 /**
  *  \brief Structure that represents a haptic direction.
  *
+ *  This is the direction where the force comes from,
+ *  instead of the direction in which the force is exerted.
+ *
  *  Directions can be specified by:
  *   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.
  *   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.
@@ -555,7 +558,7 @@ typedef struct SDL_HapticPeriodic
     Uint16 period;      /**< Period of the wave. */
     Sint16 magnitude;   /**< Peak value; if negative, equivalent to 180 degrees extra phase shift. */
     Sint16 offset;      /**< Mean value of the wave. */
-    Uint16 phase;       /**< Horizontal shift given by hundredth of a degree. */
+    Uint16 phase;       /**< Positive phase shift given by hundredth of a degree. */
 
     /* Envelope */
     Uint16 attack_length;   /**< Duration of the attack. */

+ 3 - 4
include/SDL_hints.h

@@ -261,9 +261,8 @@ extern "C" {
 #define SDL_HINT_ORIENTATIONS "SDL_IOS_ORIENTATIONS"
     
 /**
- *  \brief  A variable controlling whether the Android / iOS built-in
- *  accelerometer should be listed as a joystick device, rather than listing
- *  actual joysticks only.
+ *  \brief  A variable controlling whether an Android built-in accelerometer should be
+ *  listed as a joystick device, rather than listing actual joysticks only.
  *
  *  This variable can be set to the following values:
  *    "0"       - List only real joysticks and accept input from them
@@ -346,7 +345,7 @@ extern "C" {
 
 
 /**
- *  \brief If set to 1, then do not allow high-DPI windows. ("Retina" on Mac and iOS)
+ *  \brief If set to 1, then do not allow high-DPI windows. ("Retina" on Mac)
  */
 #define SDL_HINT_VIDEO_HIGHDPI_DISABLED "SDL_VIDEO_HIGHDPI_DISABLED"
 

+ 1 - 1
include/SDL_joystick.h

@@ -87,7 +87,7 @@ extern DECLSPEC const char *SDLCALL SDL_JoystickNameForIndex(int device_index);
 
 /**
  *  Open a joystick for use.
- *  The index passed as an argument refers tothe N'th joystick on the system.
+ *  The index passed as an argument refers to the N'th joystick on the system.
  *  This index is the value which will identify this joystick in future joystick
  *  events.
  *

+ 1 - 1
include/SDL_render.h

@@ -371,7 +371,7 @@ extern DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture * texture,
  *  \param rect      A pointer to the rectangle of pixels to update, or NULL to
  *                   update the entire texture.
  *  \param pixels    The raw pixel data.
- *  \param pitch     The number of bytes between rows of pixel data.
+ *  \param pitch     The number of bytes in a row of pixel data, including padding between lines.
  *
  *  \return 0 on success, or -1 if the texture is not valid.
  *

+ 0 - 10
include/SDL_system.h

@@ -70,16 +70,6 @@ extern DECLSPEC SDL_bool SDLCALL SDL_DXGIGetOutputInfo( int displayIndex, int *a
 extern DECLSPEC int SDLCALL SDL_iPhoneSetAnimationCallback(SDL_Window * window, int interval, void (*callback)(void*), void *callbackParam);
 extern DECLSPEC void SDLCALL SDL_iPhoneSetEventPump(SDL_bool enabled);
 
-/* Returns the OpenGL Renderbuffer Object associated with the window's main view.
-   The Renderbuffer must be bound when calling SDL_GL_SwapWindow.
- */
-extern DECLSPEC Uint32 SDLCALL SDL_iPhoneGetViewRenderbuffer(SDL_Window * window);
-
-/* Returns the OpenGL Framebuffer Object associated with the window's main view.
-   The Framebuffer must be bound when rendering to the screen.
- */
-extern DECLSPEC Uint32 SDLCALL SDL_iPhoneGetViewFramebuffer(SDL_Window * window);
-
 #endif /* __IPHONEOS__ */
 
 

+ 1 - 1
include/SDL_test_assert.h

@@ -71,7 +71,7 @@ void SDLTest_Assert(int assertCondition, SDL_PRINTF_FORMAT_STRING const char *as
 int SDLTest_AssertCheck(int assertCondition, SDL_PRINTF_FORMAT_STRING const char *assertDescription, ...) SDL_PRINTF_VARARG_FUNC(2);
 
 /**
- * \brief Explicitely pass without checking an assertion condition. Updates assertion counter.
+ * \brief Explicitly pass without checking an assertion condition. Updates assertion counter.
  *
  * \param assertDescription Message to log with the assert describing it.
  */

+ 2 - 2
include/SDL_test_compare.h

@@ -51,9 +51,9 @@ extern "C" {
  *
  * \param surface Surface used in comparison
  * \param referenceSurface Test Surface used in comparison
- * \param allowable_error Allowable difference (squared) in blending accuracy.
+ * \param allowable_error Allowable difference (=sum of squared difference for each RGB component) in blending accuracy.
  *
- * \returns 0 if comparison succeeded, >0 (=number of pixels where comparison failed) if comparison failed, -1 if any of the surfaces were NULL, -2 if the surface sizes differ.
+ * \returns 0 if comparison succeeded, >0 (=number of pixels for which the comparison failed) if comparison failed, -1 if any of the surfaces were NULL, -2 if the surface sizes differ.
  */
 int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface, int allowable_error);
 

+ 12 - 12
include/SDL_test_crc32.h

@@ -70,27 +70,27 @@ extern "C" {
 /* ---------- Function Prototypes ------------- */
 
 /**
- * /brief Initialize the CRC context
+ * \brief Initialize the CRC context
  *
  * Note: The function initializes the crc table required for all crc calculations.
  *
- * /param crcContext        pointer to context variable
+ * \param crcContext        pointer to context variable
  *
- * /returns 0 for OK, -1 on error
+ * \returns 0 for OK, -1 on error
  *
  */
  int SDLTest_Crc32Init(SDLTest_Crc32Context * crcContext);
 
 
 /**
- * /brief calculate a crc32 from a data block
+ * \brief calculate a crc32 from a data block
  *
- * /param crcContext         pointer to context variable
- * /param inBuf              input buffer to checksum
- * /param inLen              length of input buffer
- * /param crc32              pointer to Uint32 to store the final CRC into
+ * \param crcContext         pointer to context variable
+ * \param inBuf              input buffer to checksum
+ * \param inLen              length of input buffer
+ * \param crc32              pointer to Uint32 to store the final CRC into
  *
- * /returns 0 for OK, -1 on error
+ * \returns 0 for OK, -1 on error
  *
  */
 int SDLTest_crc32Calc(SDLTest_Crc32Context * crcContext, CrcUint8 *inBuf, CrcUint32 inLen, CrcUint32 *crc32);
@@ -102,11 +102,11 @@ int SDLTest_Crc32CalcBuffer(SDLTest_Crc32Context * crcContext, CrcUint8 *inBuf,
 
 
 /**
- * /brief clean up CRC context
+ * \brief clean up CRC context
  *
- * /param crcContext        pointer to context variable
+ * \param crcContext        pointer to context variable
  *
- * /returns 0 for OK, -1 on error
+ * \returns 0 for OK, -1 on error
  *
 */
 

+ 2 - 2
include/SDL_test_fuzzer.h

@@ -57,7 +57,7 @@ extern "C" {
 /**
  * Initializes the fuzzer for a test
  *
- * /param execKey Execution "Key" that initializes the random number generator uniquely for the test.
+ * \param execKey Execution "Key" that initializes the random number generator uniquely for the test.
  *
  */
 void SDLTest_FuzzerInit(Uint64 execKey);
@@ -318,7 +318,7 @@ Sint64 SDLTest_RandomSint64BoundaryValue(Sint64 boundary1, Sint64 boundary2, SDL
 /**
  * Returns integer in range [min, max] (inclusive).
  * Min and max values can be negative values.
- * If Max in smaller tham min, then the values are swapped.
+ * If Max in smaller than min, then the values are swapped.
  * Min and max are the same value, that value will be returned.
  *
  * \param min Minimum inclusive value of returned random number

+ 9 - 9
include/SDL_test_md5.h

@@ -78,9 +78,9 @@ extern "C" {
 /* ---------- Function Prototypes ------------- */
 
 /**
- * /brief initialize the context
+ * \brief initialize the context
  *
- * /param  mdContext        pointer to context variable
+ * \param  mdContext        pointer to context variable
  *
  * Note: The function initializes the message-digest context
  *       mdContext. Call before each new use of the context -
@@ -90,11 +90,11 @@ extern "C" {
 
 
 /**
- * /brief update digest from variable length data
+ * \brief update digest from variable length data
  *
- * /param  mdContext       pointer to context variable
- * /param  inBuf           pointer to data array/string
- * /param  inLen           length of data array/string
+ * \param  mdContext       pointer to context variable
+ * \param  inBuf           pointer to data array/string
+ * \param  inLen           length of data array/string
  *
  * Note: The function updates the message-digest context to account
  *       for the presence of each of the characters inBuf[0..inLen-1]
@@ -105,10 +105,10 @@ extern "C" {
                  unsigned int inLen);
 
 
-/*
- * /brief complete digest computation
+/**
+ * \brief complete digest computation
  *
- * /param mdContext     pointer to context variable
+ * \param mdContext     pointer to context variable
  *
  * Note: The function terminates the message-digest computation and
  *       ends with the desired message digest in mdContext.digest[0..15].

+ 16 - 7
src/core/android/SDL_android.c

@@ -1353,6 +1353,7 @@ void Android_JNI_HideTextInput()
 int Android_JNI_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
 {
     JNIEnv *env;
+    jclass clazz;
     jmethodID mid;
     jobject context;
     jstring title;
@@ -1361,6 +1362,7 @@ int Android_JNI_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *bu
     jintArray button_ids;
     jobjectArray button_texts;
     jintArray colors;
+    jobject text;
     jint temp;
     int i;
 
@@ -1368,19 +1370,23 @@ int Android_JNI_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *bu
 
     /* convert parameters */
 
+    clazz = (*env)->FindClass(env, "java/lang/String");
+
     title = (*env)->NewStringUTF(env, messageboxdata->title);
     message = (*env)->NewStringUTF(env, messageboxdata->message);
 
     button_flags = (*env)->NewIntArray(env, messageboxdata->numbuttons);
     button_ids = (*env)->NewIntArray(env, messageboxdata->numbuttons);
     button_texts = (*env)->NewObjectArray(env, messageboxdata->numbuttons,
-        (*env)->FindClass(env, "java/lang/String"), NULL);
+        clazz, NULL);
     for (i = 0; i < messageboxdata->numbuttons; ++i) {
         temp = messageboxdata->buttons[i].flags;
         (*env)->SetIntArrayRegion(env, button_flags, i, 1, &temp);
         temp = messageboxdata->buttons[i].buttonid;
         (*env)->SetIntArrayRegion(env, button_ids, i, 1, &temp);
-        (*env)->SetObjectArrayElement(env, button_texts, i, (*env)->NewStringUTF(env, messageboxdata->buttons[i].text));
+        text = (*env)->NewStringUTF(env, messageboxdata->buttons[i].text);
+        (*env)->SetObjectArrayElement(env, button_texts, i, text);
+        (*env)->DeleteLocalRef(env, text);
     }
 
     if (messageboxdata->colorScheme) {
@@ -1396,13 +1402,17 @@ int Android_JNI_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *bu
         colors = NULL;
     }
 
+    (*env)->DeleteLocalRef(env, clazz);
+
     /* call function */
 
     mid = (*env)->GetStaticMethodID(env, mActivityClass, "getContext","()Landroid/content/Context;");
 
     context = (*env)->CallStaticObjectMethod(env, mActivityClass, mid);
 
-    mid = (*env)->GetMethodID(env, (*env)->GetObjectClass(env, context),
+    clazz = (*env)->GetObjectClass(env, context);
+
+    mid = (*env)->GetMethodID(env, clazz,
         "messageboxShowMessageBox", "(ILjava/lang/String;Ljava/lang/String;[I[I[Ljava/lang/String;[I)I");
     *buttonid = (*env)->CallIntMethod(env, context, mid,
         messageboxdata->flags,
@@ -1413,16 +1423,15 @@ int Android_JNI_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *bu
         button_texts,
         colors);
 
+    (*env)->DeleteLocalRef(env, context);
+    (*env)->DeleteLocalRef(env, clazz);
+
     /* delete parameters */
 
     (*env)->DeleteLocalRef(env, title);
     (*env)->DeleteLocalRef(env, message);
     (*env)->DeleteLocalRef(env, button_flags);
     (*env)->DeleteLocalRef(env, button_ids);
-    for (i = 0; i < messageboxdata->numbuttons; ++i) {
-        (*env)->DeleteLocalRef(env, (*env)->GetObjectArrayElement(env, button_texts, i));
-        (*env)->SetObjectArrayElement(env, button_texts, i, NULL);
-    }
     (*env)->DeleteLocalRef(env, button_texts);
     (*env)->DeleteLocalRef(env, colors);
 

+ 18 - 0
src/core/winrt/SDL_winrtapp_direct3d.cpp

@@ -126,6 +126,16 @@ static void WINRT_SetDisplayOrientationsPreference(void *userdata, const char *n
 {
     SDL_assert(SDL_strcmp(name, SDL_HINT_ORIENTATIONS) == 0);
 
+    /* HACK: prevent SDL from altering an app's .appxmanifest-set orientation
+     * from being changed on startup, by detecting when SDL_HINT_ORIENTATIONS
+     * is getting registered.
+     *
+     * TODO, WinRT: consider reading in an app's .appxmanifest file, and apply its orientation when 'newValue == NULL'.
+     */
+    if ((oldValue == NULL) && (newValue == NULL)) {
+        return;
+    }
+
     // Start with no orientation flags, then add each in as they're parsed
     // from newValue.
     unsigned int orientationFlags = 0;
@@ -365,6 +375,9 @@ void SDL_WinRTApp::SetWindow(CoreWindow^ window)
     window->KeyUp +=
         ref new TypedEventHandler<CoreWindow^, KeyEventArgs^>(this, &SDL_WinRTApp::OnKeyUp);
 
+    window->CharacterReceived +=
+        ref new TypedEventHandler<CoreWindow^, CharacterReceivedEventArgs^>(this, &SDL_WinRTApp::OnCharacterReceived);
+
 #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
     HardwareButtons::BackPressed +=
         ref new EventHandler<BackPressedEventArgs^>(this, &SDL_WinRTApp::OnBackButtonPressed);
@@ -703,6 +716,11 @@ void SDL_WinRTApp::OnKeyUp(Windows::UI::Core::CoreWindow^ sender, Windows::UI::C
     WINRT_ProcessKeyUpEvent(args);
 }
 
+void SDL_WinRTApp::OnCharacterReceived(Windows::UI::Core::CoreWindow^ sender, Windows::UI::Core::CharacterReceivedEventArgs^ args)
+{
+    WINRT_ProcessCharacterReceivedEvent(args);
+}
+
 #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
 void SDL_WinRTApp::OnBackButtonPressed(Platform::Object^ sender, Windows::Phone::UI::Input::BackPressedEventArgs^ args)
 {

+ 1 - 0
src/core/winrt/SDL_winrtapp_direct3d.h

@@ -69,6 +69,7 @@ protected:
     void OnMouseMoved(Windows::Devices::Input::MouseDevice^ mouseDevice, Windows::Devices::Input::MouseEventArgs^ args);
     void OnKeyDown(Windows::UI::Core::CoreWindow^ sender, Windows::UI::Core::KeyEventArgs^ args);
     void OnKeyUp(Windows::UI::Core::CoreWindow^ sender, Windows::UI::Core::KeyEventArgs^ args);
+    void OnCharacterReceived(Windows::UI::Core::CoreWindow^ sender, Windows::UI::Core::CharacterReceivedEventArgs^ args);
 
 #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
     void OnBackButtonPressed(Platform::Object^ sender, Windows::Phone::UI::Input::BackPressedEventArgs^ args);

+ 3 - 2
src/file/cocoa/SDL_rwopsbundlesupport.m

@@ -50,13 +50,14 @@ FILE* SDL_OpenFPFromBundleOrFallback(const char *file, const char *mode)
     NSString* full_path_with_file_to_try = [resource_path stringByAppendingPathComponent:ns_string_file_component];
     if([file_manager fileExistsAtPath:full_path_with_file_to_try]) {
         fp = fopen([full_path_with_file_to_try fileSystemRepresentation], mode);
-    } else {
+    }
+    else {
         fp = fopen(file, mode);
     }
 
     return fp;
 }}
 
-#endif /* __APPLE__ */
+#endif /* __MACOSX__ */
 
 /* vi: set ts=4 sw=4 expandtab: */

+ 1 - 4
src/filesystem/cocoa/SDL_sysfilesystem.m

@@ -41,7 +41,6 @@ SDL_GetBasePath(void)
     const char* baseType = [[[bundle infoDictionary] objectForKey:@"SDL_FILESYSTEM_BASE_DIR_TYPE"] UTF8String];
     const char *base = NULL;
     char *retval = NULL;
-
     if (baseType == NULL) {
         baseType = "resource";
     }
@@ -53,7 +52,6 @@ SDL_GetBasePath(void)
         /* this returns the exedir for non-bundled  and the resourceDir for bundled apps */
         base = [[bundle resourcePath] fileSystemRepresentation];
     }
-
     if (base) {
         const size_t len = SDL_strlen(base) + 2;
         retval = (char *) SDL_malloc(len);
@@ -71,9 +69,8 @@ char *
 SDL_GetPrefPath(const char *org, const char *app)
 { @autoreleasepool
 {
-    char *retval = NULL;
-
     NSArray *array = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES);
+    char *retval = NULL;
 
     if ([array count] > 0) {  /* we only want the first item in the list. */
         NSString *str = [array objectAtIndex:0];

+ 66 - 19
src/filesystem/winrt/SDL_sysfilesystem.cpp

@@ -20,8 +20,7 @@
 */
 #include "../../SDL_internal.h"
 
-/* TODO, WinRT: include copyright info in SDL_winrtpaths.cpp
-   TODO, WinRT: remove the need to compile this with C++/CX (/ZW) extensions, and if possible, without C++ at all
+/* TODO, WinRT: remove the need to compile this with C++/CX (/ZW) extensions, and if possible, without C++ at all
 */
 
 #ifdef __WINRT__
@@ -29,6 +28,7 @@
 extern "C" {
 #include "SDL_filesystem.h"
 #include "SDL_error.h"
+#include "SDL_hints.h"
 #include "SDL_stdinc.h"
 #include "SDL_system.h"
 #include "../../core/windows/SDL_windows.h"
@@ -62,7 +62,7 @@ SDL_WinRTGetFSPathUNICODE(SDL_WinRT_Path pathType)
             return path.c_str();
         }
 
-#if WINAPI_FAMILY != WINAPI_FAMILY_PHONE_APP
+#if (WINAPI_FAMILY != WINAPI_FAMILY_PHONE_APP) || (NTDDI_VERSION > NTDDI_WIN8)
         case SDL_WINRT_PATH_ROAMING_FOLDER:
         {
             static wstring path;
@@ -144,31 +144,78 @@ SDL_GetPrefPath(const char *org, const char *app)
      * without violating Microsoft's app-store requirements.
      */
 
-#if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
-    /* A 'Roaming' folder is not available in Windows Phone 8, however a 'Local' folder is. */
-    const char * srcPath = SDL_WinRTGetFSPathUTF8(SDL_WINRT_PATH_LOCAL_FOLDER);
-#else
-    /* A 'Roaming' folder is available on Windows 8 and 8.1.  Use that. */
-    const char * srcPath = SDL_WinRTGetFSPathUTF8(SDL_WINRT_PATH_ROAMING_FOLDER);
-#endif
+    const WCHAR * srcPath = NULL;
+    WCHAR path[MAX_PATH];
+    char *retval = NULL;
+    WCHAR* worg = NULL;
+    WCHAR* wapp = NULL;
+    size_t new_wpath_len = 0;
+    BOOL api_result = FALSE;
+
+    srcPath = SDL_WinRTGetFSPathUNICODE(SDL_WINRT_PATH_LOCAL_FOLDER);
+    if ( ! srcPath) {
+        SDL_SetError("Unable to find a source path");
+        return NULL;
+    }
 
-    size_t destPathLen;
-    char * destPath = NULL;
+    if (SDL_wcslen(srcPath) >= MAX_PATH) {
+        SDL_SetError("Path too long.");
+        return NULL;
+    }
+    SDL_wcslcpy(path, srcPath, SDL_arraysize(path));
 
-    if (!srcPath) {
-        SDL_SetError("Couldn't locate our basepath: %s", SDL_GetError());
+    worg = WIN_UTF8ToString(org);
+    if (worg == NULL) {
+        SDL_OutOfMemory();
         return NULL;
     }
 
-    destPathLen = SDL_strlen(srcPath) + SDL_strlen(org) + SDL_strlen(app) + 4;
-    destPath = (char *) SDL_malloc(destPathLen);
-    if (!destPath) {
+    wapp = WIN_UTF8ToString(app);
+    if (wapp == NULL) {
+        SDL_free(worg);
         SDL_OutOfMemory();
         return NULL;
     }
 
-    SDL_snprintf(destPath, destPathLen, "%s\\%s\\%s\\", srcPath, org, app);
-    return destPath;
+    new_wpath_len = SDL_wcslen(worg) + SDL_wcslen(wapp) + SDL_wcslen(path) + 3;
+
+    if ((new_wpath_len + 1) > MAX_PATH) {
+        SDL_free(worg);
+        SDL_free(wapp);
+        SDL_SetError("Path too long.");
+        return NULL;
+    }
+
+    SDL_wcslcat(path, L"\\", new_wpath_len + 1);
+    SDL_wcslcat(path, worg, new_wpath_len + 1);
+    SDL_free(worg);
+
+    api_result = CreateDirectoryW(path, NULL);
+    if (api_result == FALSE) {
+        if (GetLastError() != ERROR_ALREADY_EXISTS) {
+            SDL_free(wapp);
+            WIN_SetError("Couldn't create a prefpath.");
+            return NULL;
+        }
+    }
+
+    SDL_wcslcat(path, L"\\", new_wpath_len + 1);
+    SDL_wcslcat(path, wapp, new_wpath_len + 1);
+    SDL_free(wapp);
+
+    api_result = CreateDirectoryW(path, NULL);
+    if (api_result == FALSE) {
+        if (GetLastError() != ERROR_ALREADY_EXISTS) {
+            WIN_SetError("Couldn't create a prefpath.");
+            return NULL;
+        }
+    }
+
+    SDL_wcslcat(path, L"\\", new_wpath_len + 1);
+
+    retval = WIN_StringToUTF8(path);
+
+    return retval;
 }
 
 #endif /* __WINRT__ */

+ 4 - 4
src/haptic/linux/SDL_syshaptic.c

@@ -669,6 +669,8 @@ SDL_SYS_ToDirection(Uint16 *dest, SDL_HapticDirection * src)
                         90 deg -> 0x4000 (left)
                         180 deg -> 0x8000 (up)
                         270 deg -> 0xC000 (right)
+                   The force pulls into the direction specified by Linux directions,
+                   i.e. the opposite convention of SDL directions.
                     */
         tmp = ((src->dir[0] % 36000) * 0x8000) / 18000; /* convert to range [0,0xFFFF] */
         *dest = (Uint16) tmp;
@@ -727,7 +729,6 @@ SDL_SYS_ToDirection(Uint16 *dest, SDL_HapticDirection * src)
 static int
 SDL_SYS_ToFFEffect(struct ff_effect *dest, SDL_HapticEffect * src)
 {
-    Uint32 tmp;
     SDL_HapticConstant *constant;
     SDL_HapticPeriodic *periodic;
     SDL_HapticCondition *condition;
@@ -805,9 +806,8 @@ SDL_SYS_ToFFEffect(struct ff_effect *dest, SDL_HapticEffect * src)
         dest->u.periodic.period = CLAMP(periodic->period);
         dest->u.periodic.magnitude = periodic->magnitude;
         dest->u.periodic.offset = periodic->offset;
-        /* Phase is calculated based of offset from period and then clamped. */
-        tmp = ((periodic->phase % 36000) * dest->u.periodic.period) / 36000;
-        dest->u.periodic.phase = CLAMP(tmp);
+        /* Linux phase is defined in interval "[0x0000, 0x10000[", corresponds with "[0deg, 360deg[" phase shift. */
+        dest->u.periodic.phase = ((Uint32)periodic->phase * 0x10000U) / 36000;
 
         /* Envelope */
         dest->u.periodic.envelope.attack_length =

+ 16 - 31
src/joystick/iphoneos/SDL_sysjoystick.m

@@ -23,7 +23,6 @@
 /* This is the iOS implementation of the SDL joystick API */
 
 #include "SDL_joystick.h"
-#include "SDL_hints.h"
 #include "SDL_stdinc.h"
 #include "../SDL_sysjoystick.h"
 #include "../SDL_joystick_c.h"
@@ -33,10 +32,9 @@
 /* needed for SDL_IPHONE_MAX_GFORCE macro */
 #import "SDL_config_iphoneos.h"
 
-const char *accelerometerName = "iOS Accelerometer";
+const char *accelerometerName = "iOS accelerometer";
 
 static CMMotionManager *motionManager = nil;
-static int numjoysticks = 0;
 
 /* Function to scan the system for joysticks.
  * This function should set SDL_numjoysticks to the number of available
@@ -46,18 +44,12 @@ static int numjoysticks = 0;
 int
 SDL_SYS_JoystickInit(void)
 {
-    const char *hint = SDL_GetHint(SDL_HINT_ACCELEROMETER_AS_JOYSTICK);
-    if (!hint || SDL_atoi(hint)) {
-        /* Default behavior, accelerometer as joystick */
-        numjoysticks = 1;
-    }
-
-    return numjoysticks;
+    return (1);
 }
 
 int SDL_SYS_NumJoysticks()
 {
-    return numjoysticks;
+    return 1;
 }
 
 void SDL_SYS_JoystickDetect()
@@ -90,16 +82,14 @@ SDL_SYS_JoystickOpen(SDL_Joystick * joystick, int device_index)
     joystick->nballs = 0;
     joystick->nbuttons = 0;
 
-    @autoreleasepool {
-        if (motionManager == nil) {
-            motionManager = [[CMMotionManager alloc] init];
-        }
-
-        /* Shorter times between updates can significantly increase CPU usage. */
-        motionManager.accelerometerUpdateInterval = 0.1;
-        [motionManager startAccelerometerUpdates];
+    if (motionManager == nil) {
+        motionManager = [[CMMotionManager alloc] init];
     }
 
+    /* Shorter times between updates can significantly increase CPU usage. */
+    motionManager.accelerometerUpdateInterval = 0.1;
+    [motionManager startAccelerometerUpdates];
+
     return 0;
 }
 
@@ -115,14 +105,12 @@ static void SDL_SYS_AccelerometerUpdate(SDL_Joystick * joystick)
     const SInt16 maxsint16 = 0x7FFF;
     CMAcceleration accel;
 
-    @autoreleasepool {
-        if (!motionManager.accelerometerActive) {
-            return;
-        }
-
-        accel = motionManager.accelerometerData.acceleration;
+    if (!motionManager.accelerometerActive) {
+        return;
     }
 
+    accel = [[motionManager accelerometerData] acceleration];
+
     /*
      Convert accelerometer data from floating point to Sint16, which is what
      the joystick system expects.
@@ -165,9 +153,7 @@ SDL_SYS_JoystickUpdate(SDL_Joystick * joystick)
 void
 SDL_SYS_JoystickClose(SDL_Joystick * joystick)
 {
-    @autoreleasepool {
-        [motionManager stopAccelerometerUpdates];
-    }
+    [motionManager stopAccelerometerUpdates];
     joystick->closed = 1;
 }
 
@@ -175,11 +161,10 @@ SDL_SYS_JoystickClose(SDL_Joystick * joystick)
 void
 SDL_SYS_JoystickQuit(void)
 {
-    @autoreleasepool {
+    if (motionManager != nil) {
+        [motionManager release];
         motionManager = nil;
     }
-
-    numjoysticks = 0;
 }
 
 SDL_JoystickGUID SDL_SYS_JoystickGetDeviceGUID( int device_index )

+ 1 - 0
src/main/android/SDL_android_main.c

@@ -47,6 +47,7 @@ int Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject
                 arg = SDL_strdup(utf);
                 (*env)->ReleaseStringUTFChars(env, string, utf);
             }
+            (*env)->DeleteLocalRef(env, string);
         }
         if (!arg) {
             arg = SDL_strdup("");

+ 1 - 1
src/main/windows/SDL_windows_main.c

@@ -134,7 +134,7 @@ WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw)
     /* Grab the command line */
     TCHAR *text = GetCommandLine();
 #if UNICODE
-    cmdline = SDL_iconv_string("UTF-8", "UCS-2-INTERNAL", (char *)(text), (SDL_wcslen(text)+1)*sizeof(WCHAR));
+    cmdline = WIN_StringToUTF8(text);
 #else
     cmdline = SDL_strdup(text);
 #endif

+ 18 - 19
src/power/uikit/SDL_syspower.m

@@ -50,24 +50,24 @@ SDL_UIKit_UpdateBatteryMonitoring(void)
 SDL_bool
 SDL_GetPowerInfo_UIKit(SDL_PowerState * state, int *seconds, int *percent)
 {
-    @autoreleasepool {
-        UIDevice *uidev = [UIDevice currentDevice];
+    UIDevice *uidev = [UIDevice currentDevice];
 
-        if (!SDL_UIKitLastPowerInfoQuery) {
-            SDL_assert(uidev.isBatteryMonitoringEnabled == NO);
-            uidev.batteryMonitoringEnabled = YES;
-        }
+    if (!SDL_UIKitLastPowerInfoQuery) {
+        SDL_assert([uidev isBatteryMonitoringEnabled] == NO);
+        [uidev setBatteryMonitoringEnabled:YES];
+    }
 
-        /* UIKit_GL_SwapWindow() (etc) will check this and disable the battery
-         *  monitoring if the app hasn't queried it in the last X seconds.
-         *  Apparently monitoring the battery burns battery life.  :)
-         *  Apple's docs say not to monitor the battery unless you need it.
-         */
-        SDL_UIKitLastPowerInfoQuery = SDL_GetTicks();
+    /* UIKit_GL_SwapWindow() (etc) will check this and disable the battery
+     *  monitoring if the app hasn't queried it in the last X seconds.
+     *  Apparently monitoring the battery burns battery life.  :)
+     *  Apple's docs say not to monitor the battery unless you need it.
+     */
+    SDL_UIKitLastPowerInfoQuery = SDL_GetTicks();
 
-        *seconds = -1;   /* no API to estimate this in UIKit. */
+    *seconds = -1;   /* no API to estimate this in UIKit. */
 
-        switch (uidev.batteryState) {
+    switch ([uidev batteryState])
+    {
         case UIDeviceBatteryStateCharging:
             *state = SDL_POWERSTATE_CHARGING;
             break;
@@ -84,12 +84,11 @@ SDL_GetPowerInfo_UIKit(SDL_PowerState * state, int *seconds, int *percent)
         default:
             *state = SDL_POWERSTATE_UNKNOWN;
             break;
-        }
-
-        const float level = uidev.batteryLevel;
-        *percent = ( (level < 0.0f) ? -1 : ((int) ((level * 100) + 0.5f)) );
-        return SDL_TRUE; /* always the definitive answer on iOS. */
     }
+
+    const float level = [uidev batteryLevel];
+    *percent = ( (level < 0.0f) ? -1 : ((int) ((level * 100) + 0.5f)) );
+    return SDL_TRUE;            /* always the definitive answer on iOS. */
 }
 
 #endif /* SDL_POWER_UIKIT */

+ 8 - 0
src/test/SDL_test_compare.c

@@ -43,6 +43,7 @@ int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface,
    int bpp, bpp_reference;
    Uint8 *p, *p_reference;
    int dist;
+   int sampleErrorX, sampleErrorY, sampleDist;
    Uint8 R, G, B, A;
    Uint8 Rd, Gd, Bd, Ad;
    char imageFilename[128];
@@ -86,6 +87,11 @@ int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface,
          /* Allow some difference in blending accuracy */
          if (dist > allowable_error) {
             ret++;
+            if (ret == 1) {
+               sampleErrorX = i;
+               sampleErrorY = j;
+               sampleDist = dist;
+            }
          }
       }
    }
@@ -96,6 +102,8 @@ int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface,
    /* Save test image and reference for analysis on failures */
    _CompareSurfaceCount++;
    if (ret != 0) {
+      SDLTest_LogError("Comparison of pixels with allowable error of %i failed %i times.", allowable_error, ret);
+      SDLTest_LogError("First detected occurrence at position %i,%i with a squared RGB-difference of %i.", sampleErrorX, sampleErrorY, sampleDist); 
       SDL_snprintf(imageFilename, 127, "CompareSurfaces%04d_TestOutput.bmp", _CompareSurfaceCount);
       SDL_SaveBMP(surface, imageFilename);
       SDL_snprintf(referenceFilename, 127, "CompareSurfaces%04d_Reference.bmp", _CompareSurfaceCount);

+ 10 - 0
src/thread/pthread/SDL_syscond.c

@@ -21,6 +21,7 @@
 #include "../../SDL_internal.h"
 
 #include <sys/time.h>
+#include <time.h>
 #include <unistd.h>
 #include <errno.h>
 #include <pthread.h>
@@ -98,17 +99,26 @@ int
 SDL_CondWaitTimeout(SDL_cond * cond, SDL_mutex * mutex, Uint32 ms)
 {
     int retval;
+#ifndef HAVE_CLOCK_GETTIME
     struct timeval delta;
+#endif
     struct timespec abstime;
 
     if (!cond) {
         return SDL_SetError("Passed a NULL condition variable");
     }
 
+#ifdef HAVE_CLOCK_GETTIME
+    clock_gettime(CLOCK_REALTIME, &abstime);
+
+    abstime.tv_nsec += (ms % 1000) * 1000000;
+    abstime.tv_sec += ms / 1000;
+#else
     gettimeofday(&delta, NULL);
 
     abstime.tv_sec = delta.tv_sec + (ms / 1000);
     abstime.tv_nsec = (delta.tv_usec + (ms % 1000) * 1000) * 1000;
+#endif
     if (abstime.tv_nsec > 1000000000) {
         abstime.tv_sec += 1;
         abstime.tv_nsec -= 1000000000;

+ 16 - 9
src/thread/pthread/SDL_syssem.c

@@ -24,6 +24,7 @@
 #include <pthread.h>
 #include <semaphore.h>
 #include <sys/time.h>
+#include <time.h>
 
 #include "SDL_thread.h"
 #include "SDL_timer.h"
@@ -102,7 +103,9 @@ SDL_SemWaitTimeout(SDL_sem * sem, Uint32 timeout)
 {
     int retval;
 #ifdef HAVE_SEM_TIMEDWAIT
+#ifndef HAVE_CLOCK_GETTIME
     struct timeval now;
+#endif
     struct timespec ts_timeout;
 #else
     Uint32 end;
@@ -125,22 +128,26 @@ SDL_SemWaitTimeout(SDL_sem * sem, Uint32 timeout)
     * a lapse of time, but until we reach a certain time.
     * This time is now plus the timeout.
     */
+#ifdef HAVE_CLOCK_GETTIME
+    clock_gettime(CLOCK_REALTIME, &ts_timeout);
+
+    /* Add our timeout to current time */
+    ts_timeout.tv_nsec += (timeout % 1000) * 1000000;
+    ts_timeout.tv_sec += timeout / 1000;
+#else
     gettimeofday(&now, NULL);
 
     /* Add our timeout to current time */
-    now.tv_usec += (timeout % 1000) * 1000;
-    now.tv_sec += timeout / 1000;
+    ts_timeout.tv_sec = now.tv_sec + (timeout / 1000);
+    ts_timeout.tv_nsec = (now.tv_usec + (timeout % 1000) * 1000) * 1000;
+#endif
 
     /* Wrap the second if needed */
-    if ( now.tv_usec >= 1000000 ) {
-        now.tv_usec -= 1000000;
-        now.tv_sec ++;
+    if (ts_timeout.tv_nsec > 1000000000) {
+        ts_timeout.tv_sec += 1;
+        ts_timeout.tv_nsec -= 1000000000;
     }
 
-    /* Convert to timespec */
-    ts_timeout.tv_sec = now.tv_sec;
-    ts_timeout.tv_nsec = now.tv_usec * 1000;
-
     /* Wait. */
     do {
         retval = sem_timedwait(&sem->sem, &ts_timeout);

+ 76 - 1
src/video/cocoa/SDL_cocoawindow.m

@@ -34,6 +34,7 @@
 #include "../../events/SDL_mouse_c.h"
 #include "../../events/SDL_touch_c.h"
 #include "../../events/SDL_windowevents_c.h"
+#include "../../events/SDL_dropevents_c.h"
 #include "SDL_cocoavideo.h"
 #include "SDL_cocoashape.h"
 #include "SDL_cocoamouse.h"
@@ -52,15 +53,21 @@
 #define FULLSCREEN_MASK (SDL_WINDOW_FULLSCREEN_DESKTOP | SDL_WINDOW_FULLSCREEN)
 
 
-@interface SDLWindow : NSWindow
+@interface SDLWindow : NSWindow <NSDraggingDestination>
 /* These are needed for borderless/fullscreen windows */
 - (BOOL)canBecomeKeyWindow;
 - (BOOL)canBecomeMainWindow;
 - (void)sendEvent:(NSEvent *)event;
 - (void)doCommandBySelector:(SEL)aSelector;
+
+/* Handle drag-and-drop of files onto the SDL window. */
+- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender;
+- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender;
+- (BOOL)wantsPeriodicDraggingUpdates;
 @end
 
 @implementation SDLWindow
+
 - (BOOL)canBecomeKeyWindow
 {
     return YES;
@@ -96,6 +103,51 @@
 {
     /*NSLog(@"doCommandBySelector: %@\n", NSStringFromSelector(aSelector));*/
 }
+
+- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
+{
+    return NSDragOperationGeneric;
+}
+
+- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender
+{
+    NSURL *fileURL = [NSURL URLFromPasteboard:[sender draggingPasteboard]];
+    NSNumber *isAlias = nil;
+
+    if (fileURL == nil) {
+        return NO;
+    }
+
+    /* Functionality for resolving URL aliases was added with OS X 10.6. */
+    if ([fileURL respondsToSelector:@selector(getResourceValue:forKey:error:)]) {
+        [fileURL getResourceValue:&isAlias forKey:NSURLIsAliasFileKey error:nil];
+    }
+
+    /* If the URL is an alias, resolve it. */
+    if ([isAlias boolValue]) {
+        NSURLBookmarkResolutionOptions opts = NSURLBookmarkResolutionWithoutMounting | NSURLBookmarkResolutionWithoutUI;
+        NSData *bookmark = [NSURL bookmarkDataWithContentsOfURL:fileURL error:nil];
+        if (bookmark != nil) {
+            NSURL *resolvedURL = [NSURL URLByResolvingBookmarkData:bookmark
+                                                           options:opts
+                                                     relativeToURL:nil
+                                               bookmarkDataIsStale:nil
+                                                             error:nil];
+
+            if (resolvedURL != nil) {
+                fileURL = resolvedURL;
+            }
+        }
+    }
+
+    return (BOOL) SDL_SendDropFile([[fileURL path] UTF8String]);
+}
+
+- (BOOL)wantsPeriodicDraggingUpdates
+{
+    return NO;
+}
+
 @end
 
 
@@ -856,6 +908,25 @@ SetWindowStyle(SDL_Window * window, unsigned int style)
 
 - (void)touchesBeganWithEvent:(NSEvent *) theEvent
 {
+    NSSet *touches = [theEvent touchesMatchingPhase:NSTouchPhaseAny inView:nil];
+    int existingTouchCount = 0;
+
+    for (NSTouch* touch in touches) {
+        if ([touch phase] != NSTouchPhaseBegan) {
+            existingTouchCount++;
+        }
+    }
+    if (existingTouchCount == 0) {
+        SDL_TouchID touchID = (SDL_TouchID)(intptr_t)[[touches anyObject] device];
+        int numFingers = SDL_GetNumTouchFingers(touchID);
+        DLog("Reset Lost Fingers: %d", numFingers);
+        for (--numFingers; numFingers >= 0; --numFingers) {
+            SDL_Finger* finger = SDL_GetTouchFinger(touchID, numFingers);
+            SDL_SendTouch(touchID, finger->id, SDL_FALSE, 0, 0, 0);
+        }
+    }
+
+    DLog("Began Fingers: %lu .. existing: %d", (unsigned long)[touches count], existingTouchCount);
     [self handleTouches:NSTouchPhaseBegan withEvent:theEvent];
 }
 
@@ -1101,6 +1172,9 @@ Cocoa_CreateWindow(_THIS, SDL_Window * window)
     [nswindow setContentView: contentView];
     [contentView release];
 
+    /* Allow files and folders to be dragged onto the window by users */
+    [nswindow registerForDraggedTypes:[NSArray arrayWithObject:(NSString *)kUTTypeFileURL]];
+
     [pool release];
 
     if (SetupWindowData(_this, window, nswindow, SDL_TRUE) < 0) {
@@ -1332,6 +1406,7 @@ Cocoa_RebuildWindow(SDL_WindowData * data, NSWindow * nswindow, unsigned style)
     [data->listener close];
     data->nswindow = [[SDLWindow alloc] initWithContentRect:[[nswindow contentView] frame] styleMask:style backing:NSBackingStoreBuffered defer:NO screen:[nswindow screen]];
     [data->nswindow setContentView:[nswindow contentView]];
+    [data->nswindow registerForDraggedTypes:[NSArray arrayWithObject:(NSString *)kUTTypeFileURL]];
     /* See comment in SetupWindowData. */
     [data->nswindow setOneShot:NO];
     [data->listener listen:data];

+ 184 - 34
src/video/uikit/SDL_uikitappdelegate.m

@@ -39,10 +39,12 @@
 static int forward_argc;
 static char **forward_argv;
 static int exit_status;
+static UIWindow *launch_window;
 
 int main(int argc, char **argv)
 {
     int i;
+    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
 
     /* store arguments */
     forward_argc = argc;
@@ -54,9 +56,7 @@ int main(int argc, char **argv)
     forward_argv[i] = NULL;
 
     /* Give over control to run loop, SDLUIKitDelegate will handle most things from here */
-    @autoreleasepool {
-        UIApplicationMain(argc, argv, nil, [SDLUIKitDelegate getAppDelegateClassName]);
-    }
+    UIApplicationMain(argc, argv, NULL, [SDLUIKitDelegate getAppDelegateClassName]);
 
     /* free the memory we used to hold copies of argc and argv */
     for (i = 0; i < forward_argc; i++) {
@@ -64,6 +64,7 @@ int main(int argc, char **argv)
     }
     free(forward_argv);
 
+    [pool release];
     return exit_status;
 }
 
@@ -74,12 +75,160 @@ SDL_IdleTimerDisabledChanged(void *userdata, const char *name, const char *oldVa
     [UIApplication sharedApplication].idleTimerDisabled = disable;
 }
 
+
+@interface SDL_launchscreenviewcontroller : UIViewController {
+	
+}
+
+@end
+
+@implementation SDL_launchscreenviewcontroller
+
+- (id)init
+{
+    self = [super init];
+    if (self == nil) {
+        return nil;
+    }
+
+    NSString* launch_screen_name = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"UILaunchStoryboardName"];
+
+    if(launch_screen_name) {
+        // TODO: If the NIB is not in the bundle, this will throw an exception. We might consider a pre-emptive check, but returning a useless viewcontroller isn't helpful and the check should be outside.
+        UIView* launch_screen = [[[NSBundle mainBundle] loadNibNamed:launch_screen_name owner:self options:nil] objectAtIndex:0];
+        CGSize size = [UIScreen mainScreen].bounds.size;
+        
+        CGRect bounds = CGRectMake(0, 0, size.width, size.height);
+        
+        [launch_screen setFrame:bounds];
+        [self setView:launch_screen];
+        [launch_screen release];
+    }
+
+    
+
+
+    return self;
+}
+
+- (NSUInteger)supportedInterfaceOrientations
+{
+    NSUInteger orientationMask = UIInterfaceOrientationMaskAll;
+    
+    /* Don't allow upside-down orientation on the phone, so answering calls is in the natural orientation */
+    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
+        orientationMask &= ~UIInterfaceOrientationMaskPortraitUpsideDown;
+    }
+    return orientationMask;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)orient
+{
+    NSUInteger orientationMask = [self supportedInterfaceOrientations];
+    return (orientationMask & (1 << orient));
+}
+
+@end
+
+
+@interface SDL_splashviewcontroller : UIViewController {
+    UIImageView *splash;
+    UIImage *splashPortrait;
+    UIImage *splashLandscape;
+}
+
+- (void)updateSplashImage:(UIInterfaceOrientation)interfaceOrientation;
+@end
+
+@implementation SDL_splashviewcontroller
+
+- (id)init
+{
+    self = [super init];
+    if (self == nil) {
+        return nil;
+    }
+
+    self->splash = [[UIImageView alloc] init];
+    [self setView:self->splash];
+
+    CGSize size = [UIScreen mainScreen].bounds.size;
+    float height = SDL_max(size.width, size.height);
+    /* FIXME: Some where around iOS 7, UILaunchImages in the Info.plist was introduced which explicitly maps image names to devices and orientations.
+     This gets rid of the hardcoded magic file names and allows more control for OS version, orientation, retina, and device.
+     But this existing code needs to be modified to look in the Info.plist for each key and act appropriately for the correct iOS version.
+     But iOS 8 superscedes this process and introduces the LaunchScreen NIB which uses autolayout to handle all orientations and devices.
+     Since we now have a LaunchScreen solution, this may never get fixed, 
+     but this note is here for anybody trying to debug their program on iOS 7 and doesn't understand why their Info.plist isn't working.
+     */
+    self->splashPortrait = [UIImage imageNamed:[NSString stringWithFormat:@"Default-%dh.png", (int)height]];
+    if (!self->splashPortrait) {
+        self->splashPortrait = [UIImage imageNamed:@"Default.png"];
+    }
+    self->splashLandscape = [UIImage imageNamed:@"Default-Landscape.png"];
+    if (!self->splashLandscape && self->splashPortrait) {
+        self->splashLandscape = [[UIImage alloc] initWithCGImage: self->splashPortrait.CGImage
+                                                           scale: 1.0
+                                                     orientation: UIImageOrientationRight];
+    }
+    if (self->splashPortrait) {
+        [self->splashPortrait retain];
+    }
+    if (self->splashLandscape) {
+        [self->splashLandscape retain];
+    }
+
+    [self updateSplashImage:[[UIApplication sharedApplication] statusBarOrientation]];
+
+    return self;
+}
+
+- (NSUInteger)supportedInterfaceOrientations
+{
+    NSUInteger orientationMask = UIInterfaceOrientationMaskAll;
+
+    /* Don't allow upside-down orientation on the phone, so answering calls is in the natural orientation */
+    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
+        orientationMask &= ~UIInterfaceOrientationMaskPortraitUpsideDown;
+    }
+    return orientationMask;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)orient
+{
+    NSUInteger orientationMask = [self supportedInterfaceOrientations];
+    return (orientationMask & (1 << orient));
+}
+
+- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration
+{
+    [self updateSplashImage:interfaceOrientation];
+}
+
+- (void)updateSplashImage:(UIInterfaceOrientation)interfaceOrientation
+{
+    UIImage *image;
+
+    if (UIInterfaceOrientationIsLandscape(interfaceOrientation)) {
+        image = self->splashLandscape;
+    } else {
+        image = self->splashPortrait;
+    }
+    if (image)
+    {
+        splash.image = image;
+    }
+}
+
+@end
+
+
 @implementation SDLUIKitDelegate
 
 /* convenience method */
 + (id) sharedAppDelegate
 {
-    /* the delegate is set in UIApplicationMain(), which is guaranteed to be called before this method */
+    /* the delegate is set in UIApplicationMain(), which is garaunteed to be called before this method */
     return [[UIApplication sharedApplication] delegate];
 }
 
@@ -103,6 +252,12 @@ SDL_IdleTimerDisabledChanged(void *userdata, const char *name, const char *oldVa
     exit_status = SDL_main(forward_argc, forward_argv);
     SDL_iPhoneSetEventPump(SDL_FALSE);
 
+    /* If we showed a splash image, clean it up */
+    if (launch_window) {
+        [launch_window release];
+        launch_window = NULL;
+    }
+
     /* exit, passing the return status from the user's application */
     /* We don't actually exit to support applications that do setup in
      * their main function and then allow the Cocoa event loop to run.
@@ -112,8 +267,32 @@ SDL_IdleTimerDisabledChanged(void *userdata, const char *name, const char *oldVa
 
 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
 {
+    /* Keep the launch image up until we set a video mode */
+    launch_window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
+
+    /* iOS 8 introduces LaunchScreen NIBs which use autolayout to handle all devices and orientations with a single NIB instead of multiple launch images.
+     This is also the only way to get the App Store badge "Optimized for iPhone 6 and iPhone 6 Plus".
+     So if the application is running on iOS 8 or greater AND has specified a LaunchScreen in their Info.plist, we should use the LaunchScreen NIB.
+     Otherwise, we should fallback to the legacy behavior of launch screen images.
+     */
+    NSString* launch_screen_name = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"UILaunchStoryboardName"];
+    if( ([[UIDevice currentDevice].systemVersion intValue] >= 8) && (nil != launch_screen_name) ) {
+        // iOS 8.0 and above uses LaunchScreen.xib
+        SDL_launchscreenviewcontroller* launch_screen_view_controller = [[SDL_launchscreenviewcontroller alloc] init];
+        launch_window.rootViewController = launch_screen_view_controller;
+        [launch_window addSubview:launch_screen_view_controller.view];
+        [launch_window makeKeyAndVisible];
+    } else {
+        // Anything less than iOS 8.0
+
+        UIViewController *splashViewController = [[SDL_splashviewcontroller alloc] init];
+        launch_window.rootViewController = splashViewController;
+        [launch_window addSubview:splashViewController.view];
+        [launch_window makeKeyAndVisible];
+    }
+
     /* Set working directory to resource path */
-    [[NSFileManager defaultManager] changeCurrentDirectoryPath:[[NSBundle mainBundle] resourcePath]];
+    [[NSFileManager defaultManager] changeCurrentDirectoryPath: [[NSBundle mainBundle] resourcePath]];
 
     /* register a callback for the idletimer hint */
     SDL_AddHintCallback(SDL_HINT_IDLE_TIMER_DISABLED,
@@ -135,35 +314,6 @@ SDL_IdleTimerDisabledChanged(void *userdata, const char *name, const char *oldVa
     SDL_SendAppEvent(SDL_APP_LOWMEMORY);
 }
 
-- (void)application:(UIApplication *)application didChangeStatusBarOrientation:(UIInterfaceOrientation)oldStatusBarOrientation
-{
-    BOOL isLandscape = UIInterfaceOrientationIsLandscape(application.statusBarOrientation);
-    SDL_VideoDevice *_this = SDL_GetVideoDevice();
-
-    if (_this && _this->num_displays > 0) {
-        SDL_DisplayMode *desktopmode = &_this->displays[0].desktop_mode;
-        SDL_DisplayMode *currentmode = &_this->displays[0].current_mode;
-
-        /* The desktop display mode should be kept in sync with the screen
-         * orientation so that updating a window's fullscreen state to
-         * SDL_WINDOW_FULLSCREEN_DESKTOP keeps the window dimensions in the
-         * correct orientation.
-         */
-        if (isLandscape != (desktopmode->w > desktopmode->h)) {
-            int height = desktopmode->w;
-            desktopmode->w = desktopmode->h;
-            desktopmode->h = height;
-        }
-
-        /* Same deal with the current mode + SDL_GetCurrentDisplayMode. */
-        if (isLandscape != (currentmode->w > currentmode->h)) {
-            int height = currentmode->w;
-            currentmode->w = currentmode->h;
-            currentmode->h = height;
-        }
-    }
-}
-
 - (void) applicationWillResignActive:(UIApplication*)application
 {
     SDL_VideoDevice *_this = SDL_GetVideoDevice();

+ 1 - 2
src/video/uikit/SDL_uikitevents.m

@@ -40,9 +40,8 @@ SDL_iPhoneSetEventPump(SDL_bool enabled)
 void
 UIKit_PumpEvents(_THIS)
 {
-    if (!UIKit_EventPumpEnabled) {
+    if (!UIKit_EventPumpEnabled)
         return;
-    }
 
     /* Let the run loop run for a short amount of time: long enough for
        touch events to get processed (which is important to get certain

+ 34 - 32
src/video/uikit/SDL_uikitmessagebox.m

@@ -30,16 +30,17 @@
 
 static SDL_bool s_showingMessageBox = SDL_FALSE;
 
-@interface UIKit_UIAlertViewDelegate : NSObject <UIAlertViewDelegate>
+@interface UIKit_UIAlertViewDelegate : NSObject <UIAlertViewDelegate> {
+@private
+    int *clickedButtonIndex;
+}
 
-- (id)initWithButtonIndex:(int *)buttonIndex;
+- (id)initWithButtonIndex:(int *)_buttonIndex;
 - (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
 
 @end
 
-@implementation UIKit_UIAlertViewDelegate {
-    int *clickedButtonIndex;
-}
+@implementation UIKit_UIAlertViewDelegate
 
 - (id)initWithButtonIndex:(int *)buttonIndex
 {
@@ -47,13 +48,12 @@ static SDL_bool s_showingMessageBox = SDL_FALSE;
     if (self == nil) {
         return nil;
     }
-
-    clickedButtonIndex = buttonIndex;
+    self->clickedButtonIndex = buttonIndex;
 
     return self;
 }
 
-- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
+- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
 {
     *clickedButtonIndex = (int)buttonIndex;
 }
@@ -71,38 +71,40 @@ int
 UIKit_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
 {
     int clicked;
-    int i;
-    const SDL_MessageBoxButtonData *buttons = messageboxdata->buttons;
 
-    @autoreleasepool {
-        UIAlertView* alert = [[UIAlertView alloc] init];
-        UIKit_UIAlertViewDelegate *delegate = [[UIKit_UIAlertViewDelegate alloc] initWithButtonIndex:&clicked];
+    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
 
-        alert.title = @(messageboxdata->title);
-        alert.message = @(messageboxdata->message);
-        alert.delegate = delegate;
+    UIAlertView* alert = [[UIAlertView alloc] init];
 
-        for (i = 0; i < messageboxdata->numbuttons; ++i) {
-            [alert addButtonWithTitle:@(buttons[i].text)];
-        }
+    alert.title = [NSString stringWithUTF8String:messageboxdata->title];
+    alert.message = [NSString stringWithUTF8String:messageboxdata->message];
+    alert.delegate = [[UIKit_UIAlertViewDelegate alloc] initWithButtonIndex:&clicked];
 
-        /* Set up for showing the alert */
-        clicked = messageboxdata->numbuttons;
-
-        [alert show];
+    const SDL_MessageBoxButtonData *buttons = messageboxdata->buttons;
+    int i;
+    for (i = 0; i < messageboxdata->numbuttons; ++i) {
+        [alert addButtonWithTitle:[[NSString alloc] initWithUTF8String:buttons[i].text]];
+    }
 
-        /* Run the main event loop until the alert has finished */
-        /* Note that this needs to be done on the main thread */
-        s_showingMessageBox = SDL_TRUE;
-        while (clicked == messageboxdata->numbuttons) {
-            [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
-        }
-        s_showingMessageBox = SDL_FALSE;
+    /* Set up for showing the alert */
+    clicked = messageboxdata->numbuttons;
 
-        *buttonid = messageboxdata->buttons[clicked].buttonid;
+    [alert show];
 
-        alert.delegate = nil;
+    /* Run the main event loop until the alert has finished */
+    /* Note that this needs to be done on the main thread */
+    s_showingMessageBox = SDL_TRUE;
+    while (clicked == messageboxdata->numbuttons) {
+        [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
     }
+    s_showingMessageBox = SDL_FALSE;
+
+    *buttonid = messageboxdata->buttons[clicked].buttonid;
+
+    [alert.delegate release];
+    [alert release];
+
+    [pool release];
 
     return 0;
 }

+ 11 - 11
src/video/uikit/SDL_uikitmodes.h

@@ -25,17 +25,17 @@
 
 #include "SDL_uikitvideo.h"
 
-@interface SDL_DisplayData : NSObject
-
-@property (nonatomic, strong) UIScreen *uiscreen;
-
-@end
-
-@interface SDL_DisplayModeData : NSObject
-
-@property (nonatomic, strong) UIScreenMode *uiscreenmode;
-
-@end
+typedef struct
+{
+    UIScreen *uiscreen;
+    CGFloat scale;
+} SDL_DisplayData;
+
+typedef struct
+{
+    UIScreenMode *uiscreenmode;
+    CGFloat scale;
+} SDL_DisplayModeData;
 
 extern SDL_bool UIKit_IsDisplayLandscape(UIScreen *uiscreen);
 

+ 86 - 91
src/video/uikit/SDL_uikitmodes.m

@@ -25,36 +25,27 @@
 #include "SDL_assert.h"
 #include "SDL_uikitmodes.h"
 
-@implementation SDL_DisplayData
-
-@synthesize uiscreen;
-
-@end
-
-@implementation SDL_DisplayModeData
-
-@synthesize uiscreenmode;
-
-@end
-
 
 static int
 UIKit_AllocateDisplayModeData(SDL_DisplayMode * mode,
-    UIScreenMode * uiscreenmode)
+    UIScreenMode * uiscreenmode, CGFloat scale)
 {
-    SDL_DisplayModeData *data = nil;
+    SDL_DisplayModeData *data = NULL;
 
     if (uiscreenmode != nil) {
         /* Allocate the display mode data */
-        data = [[SDL_DisplayModeData alloc] init];
+        data = (SDL_DisplayModeData *) SDL_malloc(sizeof(*data));
         if (!data) {
             return SDL_OutOfMemory();
         }
 
-        data.uiscreenmode = uiscreenmode;
+        data->uiscreenmode = uiscreenmode;
+        [data->uiscreenmode retain];
+
+        data->scale = scale;
     }
 
-    mode->driverdata = (void *) CFBridgingRetain(data);
+    mode->driverdata = data;
 
     return 0;
 }
@@ -63,21 +54,23 @@ static void
 UIKit_FreeDisplayModeData(SDL_DisplayMode * mode)
 {
     if (mode->driverdata != NULL) {
-        CFRelease(mode->driverdata);
+        SDL_DisplayModeData *data = (SDL_DisplayModeData *)mode->driverdata;
+        [data->uiscreenmode release];
+        SDL_free(data);
         mode->driverdata = NULL;
     }
 }
 
 static int
 UIKit_AddSingleDisplayMode(SDL_VideoDisplay * display, int w, int h,
-    UIScreenMode * uiscreenmode)
+    UIScreenMode * uiscreenmode, CGFloat scale)
 {
     SDL_DisplayMode mode;
     SDL_zero(mode);
 
     mode.format = SDL_PIXELFORMAT_ABGR8888;
     mode.refresh_rate = 0;
-    if (UIKit_AllocateDisplayModeData(&mode, uiscreenmode) < 0) {
+    if (UIKit_AllocateDisplayModeData(&mode, uiscreenmode, scale) < 0) {
         return -1;
     }
 
@@ -92,16 +85,16 @@ UIKit_AddSingleDisplayMode(SDL_VideoDisplay * display, int w, int h,
 }
 
 static int
-UIKit_AddDisplayMode(SDL_VideoDisplay * display, int w, int h,
+UIKit_AddDisplayMode(SDL_VideoDisplay * display, int w, int h, CGFloat scale,
                      UIScreenMode * uiscreenmode, SDL_bool addRotation)
 {
-    if (UIKit_AddSingleDisplayMode(display, w, h, uiscreenmode) < 0) {
+    if (UIKit_AddSingleDisplayMode(display, w, h, uiscreenmode, scale) < 0) {
         return -1;
     }
 
     if (addRotation) {
         /* Add the rotated version */
-        if (UIKit_AddSingleDisplayMode(display, h, w, uiscreenmode) < 0) {
+        if (UIKit_AddSingleDisplayMode(display, h, w, uiscreenmode, scale) < 0) {
             return -1;
         }
     }
@@ -121,16 +114,24 @@ UIKit_AddDisplay(UIScreen *uiscreen)
         size.height = height;
     }
 
+    /* When dealing with UIKit all coordinates are specified in terms of
+     * what Apple refers to as points. [UIScreen scale] indicates the
+     * relationship between points and pixels. Since SDL has no notion
+     * of points, we must compensate in all cases where dealing with such
+     * units.
+     */
+    CGFloat scale = [uiscreen scale];
+
     SDL_VideoDisplay display;
     SDL_DisplayMode mode;
     SDL_zero(mode);
     mode.format = SDL_PIXELFORMAT_ABGR8888;
-    mode.w = (int) size.width;
-    mode.h = (int) size.height;
+    mode.w = (int)(size.width * scale);
+    mode.h = (int)(size.height * scale);
 
-    UIScreenMode *uiscreenmode = [uiscreen currentMode];
+    UIScreenMode * uiscreenmode = [uiscreen currentMode];
 
-    if (UIKit_AllocateDisplayModeData(&mode, uiscreenmode) < 0) {
+    if (UIKit_AllocateDisplayModeData(&mode, uiscreenmode, scale) < 0) {
         return -1;
     }
 
@@ -139,15 +140,17 @@ UIKit_AddDisplay(UIScreen *uiscreen)
     display.current_mode = mode;
 
     /* Allocate the display data */
-    SDL_DisplayData *data = [[SDL_DisplayData alloc] init];
+    SDL_DisplayData *data = (SDL_DisplayData *) SDL_malloc(sizeof(*data));
     if (!data) {
         UIKit_FreeDisplayModeData(&display.desktop_mode);
         return SDL_OutOfMemory();
     }
 
-    data.uiscreen = uiscreen;
+    [uiscreen retain];
+    data->uiscreen = uiscreen;
+    data->scale = scale;
 
-    display.driverdata = (void *) CFBridgingRetain(data);
+    display.driverdata = data;
     SDL_AddVideoDisplay(&display);
 
     return 0;
@@ -167,11 +170,9 @@ UIKit_IsDisplayLandscape(UIScreen *uiscreen)
 int
 UIKit_InitModes(_THIS)
 {
-    @autoreleasepool {
-        for (UIScreen *uiscreen in [UIScreen screens]) {
-            if (UIKit_AddDisplay(uiscreen) < 0) {
-                return -1;
-            }
+    for (UIScreen *uiscreen in [UIScreen screens]) {
+        if (UIKit_AddDisplay(uiscreen) < 0) {
+            return -1;
         }
     }
 
@@ -181,36 +182,34 @@ UIKit_InitModes(_THIS)
 void
 UIKit_GetDisplayModes(_THIS, SDL_VideoDisplay * display)
 {
-    @autoreleasepool {
-        SDL_DisplayData *data = (__bridge SDL_DisplayData *) display->driverdata;
-
-        SDL_bool isLandscape = UIKit_IsDisplayLandscape(data.uiscreen);
-        SDL_bool addRotation = (data.uiscreen == [UIScreen mainScreen]);
-        CGFloat scale = data.uiscreen.scale;
-
-#ifdef __IPHONE_8_0
-        /* The UIScreenMode of an iPhone 6 Plus should be 1080x1920 rather than
-         * 1242x2208 (414x736@3x), so we should use the native scale. */
-        if ([data.uiscreen respondsToSelector:@selector(nativeScale)]) {
-            scale = data.uiscreen.nativeScale;
+    SDL_DisplayData *data = (SDL_DisplayData *) display->driverdata;
+
+    SDL_bool isLandscape = UIKit_IsDisplayLandscape(data->uiscreen);
+    SDL_bool addRotation = (data->uiscreen == [UIScreen mainScreen]);
+
+    for (UIScreenMode *uimode in [data->uiscreen availableModes]) {
+        CGSize size = [uimode size];
+        int w = (int)size.width;
+        int h = (int)size.height;
+
+        /* Make sure the width/height are oriented correctly */
+        if (isLandscape != (w > h)) {
+            int tmp = w;
+            w = h;
+            h = tmp;
         }
-#endif
-
-        for (UIScreenMode *uimode in [data.uiscreen availableModes]) {
-            /* The size of a UIScreenMode is in pixels, but we deal exclusively
-             * in points (except in SDL_GL_GetDrawableSize.) */
-            int w = (int)(uimode.size.width / scale);
-            int h = (int)(uimode.size.height / scale);
-
-            /* Make sure the width/height are oriented correctly */
-            if (isLandscape != (w > h)) {
-                int tmp = w;
-                w = h;
-                h = tmp;
-            }
 
-            /* Add the native screen resolution. */
-            UIKit_AddDisplayMode(display, w, h, uimode, addRotation);
+        /* Add the native screen resolution. */
+        UIKit_AddDisplayMode(display, w, h, data->scale, uimode, addRotation);
+
+        if (data->scale != 1.0f) {
+            /* Add the native screen resolution divided by its scale.
+             * This is so devices capable of e.g. 640x960 also advertise 320x480.
+             */
+            UIKit_AddDisplayMode(display,
+                (int)(size.width / data->scale),
+                (int)(size.height / data->scale),
+                1.0f, uimode, addRotation);
         }
     }
 }
@@ -218,21 +217,19 @@ UIKit_GetDisplayModes(_THIS, SDL_VideoDisplay * display)
 int
 UIKit_SetDisplayMode(_THIS, SDL_VideoDisplay * display, SDL_DisplayMode * mode)
 {
-    @autoreleasepool {
-        SDL_DisplayData *data = (__bridge SDL_DisplayData *) display->driverdata;
-        SDL_DisplayModeData *modedata = (__bridge SDL_DisplayModeData *)mode->driverdata;
-
-        [data.uiscreen setCurrentMode:modedata.uiscreenmode];
-
-        if (data.uiscreen == [UIScreen mainScreen]) {
-            if (mode->w > mode->h) {
-                if (!UIKit_IsDisplayLandscape(data.uiscreen)) {
-                    [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
-                }
-            } else if (mode->w < mode->h) {
-                if (UIKit_IsDisplayLandscape(data.uiscreen)) {
-                    [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO];
-                }
+    SDL_DisplayData *data = (SDL_DisplayData *) display->driverdata;
+    SDL_DisplayModeData *modedata = (SDL_DisplayModeData *)mode->driverdata;
+
+    [data->uiscreen setCurrentMode:modedata->uiscreenmode];
+
+    if (data->uiscreen == [UIScreen mainScreen]) {
+        if (mode->w > mode->h) {
+            if (!UIKit_IsDisplayLandscape(data->uiscreen)) {
+                [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
+            }
+        } else if (mode->w < mode->h) {
+            if (UIKit_IsDisplayLandscape(data->uiscreen)) {
+                [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO];
             }
         }
     }
@@ -245,21 +242,19 @@ UIKit_QuitModes(_THIS)
 {
     /* Release Objective-C objects, so higher level doesn't free() them. */
     int i, j;
-    @autoreleasepool {
-        for (i = 0; i < _this->num_displays; i++) {
-            SDL_VideoDisplay *display = &_this->displays[i];
-
-            UIKit_FreeDisplayModeData(&display->desktop_mode);
-            for (j = 0; j < display->num_display_modes; j++) {
-                SDL_DisplayMode *mode = &display->display_modes[j];
-                UIKit_FreeDisplayModeData(mode);
-            }
+    for (i = 0; i < _this->num_displays; i++) {
+        SDL_VideoDisplay *display = &_this->displays[i];
 
-            if (display->driverdata != NULL) {
-                CFRelease(display->driverdata);
-                display->driverdata = NULL;
-            }
+        UIKit_FreeDisplayModeData(&display->desktop_mode);
+        for (j = 0; j < display->num_display_modes; j++) {
+            SDL_DisplayMode *mode = &display->display_modes[j];
+            UIKit_FreeDisplayModeData(mode);
         }
+
+        SDL_DisplayData *data = (SDL_DisplayData *) display->driverdata;
+        [data->uiscreen release];
+        SDL_free(data);
+        display->driverdata = NULL;
     }
 }
 

+ 0 - 2
src/video/uikit/SDL_uikitopengles.h

@@ -25,8 +25,6 @@
 
 extern int UIKit_GL_MakeCurrent(_THIS, SDL_Window * window,
                                 SDL_GLContext context);
-extern void UIKit_GL_GetDrawableSize(_THIS, SDL_Window * window,
-                                     int * w, int * h);
 extern void UIKit_GL_SwapWindow(_THIS, SDL_Window * window);
 extern SDL_GLContext UIKit_GL_CreateContext(_THIS, SDL_Window * window);
 extern void UIKit_GL_DeleteContext(_THIS, SDL_GLContext context);

+ 90 - 157
src/video/uikit/SDL_uikitopengles.m

@@ -49,30 +49,12 @@ UIKit_GL_GetProcAddress(_THIS, const char *proc)
 /*
     note that SDL_GL_Delete context makes it current without passing the window
 */
-int
-UIKit_GL_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context)
+int UIKit_GL_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context)
 {
-    @autoreleasepool {
-        [EAGLContext setCurrentContext:(__bridge EAGLContext *)context];
-    }
+    [EAGLContext setCurrentContext: context];
     return 0;
 }
 
-void UIKit_GL_GetDrawableSize(_THIS, SDL_Window * window, int * w, int * h)
-{
-    @autoreleasepool {
-        SDL_WindowData *data = (__bridge SDL_WindowData *)window->driverdata;
-
-        if (w) {
-            *w = data.view.backingWidth;
-        }
-        if (h) {
-            *h = data.view.backingHeight;
-        }
-    }
-}
-
-
 int
 UIKit_GL_LoadLibrary(_THIS, const char *path)
 {
@@ -89,166 +71,117 @@ UIKit_GL_LoadLibrary(_THIS, const char *path)
 
 void UIKit_GL_SwapWindow(_THIS, SDL_Window * window)
 {
-    @autoreleasepool {
-        SDL_WindowData *data = (__bridge SDL_WindowData *)window->driverdata;
-
 #if SDL_POWER_UIKIT
-        /* Check once a frame to see if we should turn off the battery monitor. */
-        SDL_UIKit_UpdateBatteryMonitoring();
+    /* Check once a frame to see if we should turn off the battery monitor. */
+    SDL_UIKit_UpdateBatteryMonitoring();
 #endif
 
-        if (data.view == nil) {
-            return;
-        }
-        [data.view swapBuffers];
+    SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
 
-        /* You need to pump events in order for the OS to make changes visible.
-           We don't pump events here because we don't want iOS application events
-           (low memory, terminate, etc.) to happen inside low level rendering.
-         */
+    if (nil == data->view) {
+        return;
     }
+    [data->view swapBuffers];
+
+    /* You need to pump events in order for the OS to make changes visible.
+       We don't pump events here because we don't want iOS application events
+       (low memory, terminate, etc.) to happen inside low level rendering.
+     */
 }
 
-SDL_GLContext
-UIKit_GL_CreateContext(_THIS, SDL_Window * window)
+SDL_GLContext UIKit_GL_CreateContext(_THIS, SDL_Window * window)
 {
-    @autoreleasepool {
-        SDL_uikitopenglview *view;
-        SDL_WindowData *data = (__bridge SDL_WindowData *) window->driverdata;
-        UIWindow *uiwindow = data.uiwindow;
-        CGRect frame = UIKit_ComputeViewFrame(window, uiwindow.screen);
-        EAGLSharegroup *share_group = nil;
-        CGFloat scale = 1.0;
-
-        if (window->flags & SDL_WINDOW_ALLOW_HIGHDPI) {
-            /* Set the scale to the natural scale factor of the screen - the
-               backing dimensions of the OpenGL view will match the pixel
-               dimensions of the screen rather than the dimensions in points.
-             */
-#ifdef __IPHONE_8_0
-            if ([uiwindow.screen respondsToSelector:@selector(nativeScale)]) {
-                scale = uiwindow.screen.nativeScale;
-            } else
-#endif
-            {
-                scale = uiwindow.screen.scale;
-            }
-        }
-
-        if (_this->gl_config.share_with_current_context) {
-            EAGLContext *context = (__bridge EAGLContext *) SDL_GL_GetCurrentContext();
-            share_group = context.sharegroup;
-        }
-
-        /* construct our view, passing in SDL's OpenGL configuration data */
-        view = [[SDL_uikitopenglview alloc] initWithFrame:frame
-                                                    scale:scale
-                                            retainBacking:_this->gl_config.retained_backing
-                                                    rBits:_this->gl_config.red_size
-                                                    gBits:_this->gl_config.green_size
-                                                    bBits:_this->gl_config.blue_size
-                                                    aBits:_this->gl_config.alpha_size
-                                                depthBits:_this->gl_config.depth_size
-                                              stencilBits:_this->gl_config.stencil_size
-                                                     sRGB:_this->gl_config.framebuffer_srgb_capable
-                                             majorVersion:_this->gl_config.major_version
-                                               shareGroup:share_group];
-        if (!view) {
-            return NULL;
-        }
-
-        data.view = view;
-        view.viewcontroller = data.viewcontroller;
-        if (view.viewcontroller != nil) {
-            view.viewcontroller.view = view;
-        }
-        [uiwindow addSubview:view];
-
-        /* The view controller needs to be the root in order to control rotation on iOS 6.0 */
-        if (uiwindow.rootViewController == nil) {
-            uiwindow.rootViewController = view.viewcontroller;
-        }
-
-        EAGLContext *context = view.context;
-        if (UIKit_GL_MakeCurrent(_this, window, (__bridge SDL_GLContext) context) < 0) {
-            UIKit_GL_DeleteContext(_this, (SDL_GLContext) CFBridgingRetain(context));
-            return NULL;
-        }
-
-        /* Make this window the current mouse focus for touch input */
-        if (uiwindow.screen == [UIScreen mainScreen]) {
-            SDL_SetMouseFocus(window);
-            SDL_SetKeyboardFocus(window);
-        }
-
-        /* We return a +1'd context. The window's driverdata owns the view. */
-        return (SDL_GLContext) CFBridgingRetain(context);
+    SDL_uikitopenglview *view;
+    SDL_WindowData *data = (SDL_WindowData *) window->driverdata;
+    SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
+    SDL_DisplayData *displaydata = display->driverdata;
+    SDL_DisplayModeData *displaymodedata = display->current_mode.driverdata;
+    UIWindow *uiwindow = data->uiwindow;
+    EAGLSharegroup *share_group = nil;
+
+    if (_this->gl_config.share_with_current_context) {
+        SDL_uikitopenglview *view = (SDL_uikitopenglview *) SDL_GL_GetCurrentContext();
+        share_group = [view.context sharegroup];
     }
-}
 
-void
-UIKit_GL_DeleteContext(_THIS, SDL_GLContext context)
-{
-    @autoreleasepool {
-        /* Transfer ownership the +1'd context to ARC. */
-        EAGLContext *eaglcontext = (EAGLContext *) CFBridgingRelease(context);
-        SDL_Window *window;
+    /* construct our view, passing in SDL's OpenGL configuration data */
+    CGRect frame;
+    if (window->flags & (SDL_WINDOW_FULLSCREEN|SDL_WINDOW_BORDERLESS)) {
+        frame = [displaydata->uiscreen bounds];
+    } else {
+        frame = [displaydata->uiscreen applicationFrame];
+    }
+    view = [[SDL_uikitopenglview alloc] initWithFrame: frame
+                                    scale: displaymodedata->scale
+                                    retainBacking: _this->gl_config.retained_backing
+                                    rBits: _this->gl_config.red_size
+                                    gBits: _this->gl_config.green_size
+                                    bBits: _this->gl_config.blue_size
+                                    aBits: _this->gl_config.alpha_size
+                                    depthBits: _this->gl_config.depth_size
+                                    stencilBits: _this->gl_config.stencil_size
+                                    majorVersion: _this->gl_config.major_version
+                                    shareGroup: share_group];
+    if (!view) {
+        return NULL;
+    }
 
-        /* Find the view associated with this context */
-        for (window = _this->windows; window; window = window->next) {
-            SDL_WindowData *data = (__bridge SDL_WindowData *) window->driverdata;
-            SDL_uikitopenglview *view = data.view;
-            if (view.context == eaglcontext) {
-                /* the delegate has retained the view, this will release him */
-                if (view.viewcontroller) {
-                    UIWindow *uiwindow = (UIWindow *)view.superview;
-                    if (uiwindow.rootViewController == view.viewcontroller) {
-                        uiwindow.rootViewController = nil;
-                    }
-                    view.viewcontroller.view = nil;
-                    view.viewcontroller = nil;
-                }
-                [view removeFromSuperview];
+    data->view = view;
+    view->viewcontroller = data->viewcontroller;
+    if (view->viewcontroller != nil) {
+        [view->viewcontroller setView:view];
+        [view->viewcontroller retain];
+    }
+    [uiwindow addSubview: view];
 
-                data.view = nil;
-                return;
-            }
-        }
+    /* The view controller needs to be the root in order to control rotation on iOS 6.0 */
+    if (uiwindow.rootViewController == nil) {
+        uiwindow.rootViewController = view->viewcontroller;
     }
-}
 
-Uint32 SDL_iPhoneGetViewRenderbuffer(SDL_Window * window)
-{
-    if (!window) {
-        SDL_SetError("Invalid window");
-        return 0;
+    EAGLContext *context = view.context;
+    if (UIKit_GL_MakeCurrent(_this, window, context) < 0) {
+        UIKit_GL_DeleteContext(_this, context);
+        return NULL;
     }
 
-    @autoreleasepool {
-        SDL_WindowData *data = (__bridge SDL_WindowData *) window->driverdata;
-        if (data.view != nil) {
-            return data.view.drawableRenderbuffer;
-        } else {
-            return 0;
-        }
+    /* Make this window the current mouse focus for touch input */
+    if (displaydata->uiscreen == [UIScreen mainScreen]) {
+        SDL_SetMouseFocus(window);
+        SDL_SetKeyboardFocus(window);
     }
+
+    return context;
 }
 
-Uint32 SDL_iPhoneGetViewFramebuffer(SDL_Window * window)
+void UIKit_GL_DeleteContext(_THIS, SDL_GLContext context)
 {
-    if (!window) {
-        SDL_SetError("Invalid window");
-        return 0;
-    }
+    SDL_Window *window;
+
+    /* Find the view associated with this context */
+    for (window = _this->windows; window; window = window->next) {
+        SDL_WindowData *data = (SDL_WindowData *) window->driverdata;
+        SDL_uikitopenglview *view = data->view;
+        if (view.context == context) {
+            /* the delegate has retained the view, this will release him */
+            if (view->viewcontroller) {
+                UIWindow *uiwindow = (UIWindow *)view.superview;
+                if (uiwindow.rootViewController == view->viewcontroller) {
+                    uiwindow.rootViewController = nil;
+                }
+                [view->viewcontroller setView:nil];
+                [view->viewcontroller release];
+            }
+            [view removeFromSuperview];
 
-    @autoreleasepool {
-        SDL_WindowData *data = (__bridge SDL_WindowData *) window->driverdata;
-        if (data.view != nil) {
-            return data.view.drawableFramebuffer;
-        } else {
-            return 0;
+            /* FIXME: This doesn't actually call view dealloc - what is holding a reference to it? */
+            [view release];
+            return;
         }
     }
+
+    /* View not found... delete the context anyway? */
+    [(EAGLContext *)context release];
 }
 
 #endif /* SDL_VIDEO_DRIVER_UIKIT */

+ 40 - 27
src/video/uikit/SDL_uikitopenglview.h

@@ -21,47 +21,60 @@
 
 #import <UIKit/UIKit.h>
 #import <OpenGLES/EAGL.h>
-#import <OpenGLES/gltypes.h>
+#import <OpenGLES/ES1/gl.h>
+#import <OpenGLES/ES1/glext.h>
 #import "SDL_uikitview.h"
 /*
     This class wraps the CAEAGLLayer from CoreAnimation into a convenient UIView subclass.
     The view content is basically an EAGL surface you render your OpenGL scene into.
     Note that setting the view non-opaque will only work if the EAGL surface has an alpha channel.
  */
-@interface SDL_uikitopenglview : SDL_uikitview
+@interface SDL_uikitopenglview : SDL_uikitview {
 
-- (id)initWithFrame:(CGRect)frame
-              scale:(CGFloat)scale
-      retainBacking:(BOOL)retained
-              rBits:(int)rBits
-              gBits:(int)gBits
-              bBits:(int)bBits
-              aBits:(int)aBits
-          depthBits:(int)depthBits
-        stencilBits:(int)stencilBits
-               sRGB:(BOOL)sRGB
-       majorVersion:(int)majorVersion
-         shareGroup:(EAGLSharegroup*)shareGroup;
-
-@property (nonatomic, strong, readonly) EAGLContext *context;
-
-/* The width and height of the drawable in pixels (as opposed to points.) */
-@property (nonatomic, readonly) int backingWidth;
-@property (nonatomic, readonly) int backingHeight;
-
-@property (nonatomic, readonly) GLuint drawableRenderbuffer;
-@property (nonatomic, readonly) GLuint drawableFramebuffer;
+@private
+    /* The pixel dimensions of the backbuffer */
+    GLint backingWidth;
+    GLint backingHeight;
+
+    EAGLContext *context;
+
+    /* OpenGL names for the renderbuffer and framebuffers used to render to this view */
+    GLuint viewRenderbuffer, viewFramebuffer;
+
+    /* OpenGL name for the depth buffer that is attached to viewFramebuffer, if it exists (0 if it does not exist) */
+    GLuint depthRenderbuffer;
+
+    /* format of depthRenderbuffer */
+    GLenum depthBufferFormat;
+
+    id displayLink;
+    int animationInterval;
+    void (*animationCallback)(void*);
+    void *animationCallbackParam;
+}
+
+@property (nonatomic, retain, readonly) EAGLContext *context;
 
 - (void)swapBuffers;
 - (void)setCurrentContext;
 
-- (void)updateFrame;
+- (id)initWithFrame:(CGRect)frame
+    scale:(CGFloat)scale
+    retainBacking:(BOOL)retained
+    rBits:(int)rBits
+    gBits:(int)gBits
+    bBits:(int)bBits
+    aBits:(int)aBits
+    depthBits:(int)depthBits
+    stencilBits:(int)stencilBits
+    majorVersion:(int)majorVersion
+    shareGroup:(EAGLSharegroup*)shareGroup;
 
-- (void)setDebugLabels;
+- (void)updateFrame;
 
 - (void)setAnimationCallback:(int)interval
-                    callback:(void (*)(void*))callback
-               callbackParam:(void*)callbackParam;
+    callback:(void (*)(void*))callback
+    callbackParam:(void*)callbackParam;
 
 - (void)startAnimation;
 - (void)stopAnimation;

+ 75 - 151
src/video/uikit/SDL_uikitopenglview.m

@@ -24,82 +24,44 @@
 
 #include <QuartzCore/QuartzCore.h>
 #include <OpenGLES/EAGLDrawable.h>
-#include <OpenGLES/ES2/gl.h>
-#include <OpenGLES/ES2/glext.h>
 #include "SDL_uikitopenglview.h"
 #include "SDL_uikitmessagebox.h"
-#include "SDL_uikitvideo.h"
 
 
-@implementation SDL_uikitopenglview {
-
-    /* OpenGL names for the renderbuffer and framebuffers used to render to this view */
-    GLuint viewRenderbuffer, viewFramebuffer;
-
-    /* OpenGL name for the depth buffer that is attached to viewFramebuffer, if it exists (0 if it does not exist) */
-    GLuint depthRenderbuffer;
-
-    /* format of depthRenderbuffer */
-    GLenum depthBufferFormat;
-
-    id displayLink;
-    int animationInterval;
-    void (*animationCallback)(void*);
-    void *animationCallbackParam;
-
-}
+@implementation SDL_uikitopenglview
 
 @synthesize context;
 
-@synthesize backingWidth;
-@synthesize backingHeight;
-
 + (Class)layerClass
 {
     return [CAEAGLLayer class];
 }
 
 - (id)initWithFrame:(CGRect)frame
-              scale:(CGFloat)scale
+      scale:(CGFloat)scale
       retainBacking:(BOOL)retained
-              rBits:(int)rBits
-              gBits:(int)gBits
-              bBits:(int)bBits
-              aBits:(int)aBits
-          depthBits:(int)depthBits
-        stencilBits:(int)stencilBits
-               sRGB:(BOOL)sRGB
-       majorVersion:(int)majorVersion
-         shareGroup:(EAGLSharegroup*)shareGroup
+      rBits:(int)rBits
+      gBits:(int)gBits
+      bBits:(int)bBits
+      aBits:(int)aBits
+      depthBits:(int)depthBits
+      stencilBits:(int)stencilBits
+      majorVersion:(int)majorVersion
+      shareGroup:(EAGLSharegroup*)shareGroup
 {
+    depthBufferFormat = 0;
+
     if ((self = [super initWithFrame:frame])) {
         const BOOL useStencilBuffer = (stencilBits != 0);
         const BOOL useDepthBuffer = (depthBits != 0);
         NSString *colorFormat = nil;
 
-        self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
-        self.autoresizesSubviews = YES;
-
         /* The EAGLRenderingAPI enum values currently map 1:1 to major GLES
            versions, and this allows us to handle future OpenGL ES versions.
          */
         EAGLRenderingAPI api = majorVersion;
 
-        context = [[EAGLContext alloc] initWithAPI:api sharegroup:shareGroup];
-        if (!context || ![EAGLContext setCurrentContext:context]) {
-            SDL_SetError("OpenGL ES %d not supported", majorVersion);
-            return nil;
-        }
-
-        if (sRGB) {
-            /* sRGB EAGL drawable support was added in iOS 7. */
-            if (UIKit_IsSystemVersionAtLeast(7.0)) {
-                colorFormat = kEAGLColorFormatSRGBA8;
-            } else {
-                SDL_SetError("sRGB drawables are not supported.");
-                return nil;
-            }
-        } else if (rBits >= 8 || gBits >= 8 || bBits >= 8) {
+        if (rBits == 8 && gBits == 8 && bBits == 8) {
             /* if user specifically requests rbg888 or some color format higher than 16bpp */
             colorFormat = kEAGLColorFormatRGBA8;
         } else {
@@ -111,117 +73,90 @@
         CAEAGLLayer *eaglLayer = (CAEAGLLayer *)self.layer;
 
         eaglLayer.opaque = YES;
-        eaglLayer.drawableProperties = @{
-            kEAGLDrawablePropertyRetainedBacking:@(retained),
-            kEAGLDrawablePropertyColorFormat:colorFormat
-        };
+        eaglLayer.drawableProperties = [NSDictionary dictionaryWithObjectsAndKeys:
+                                        [NSNumber numberWithBool: retained], kEAGLDrawablePropertyRetainedBacking, colorFormat, kEAGLDrawablePropertyColorFormat, nil];
 
-        /* Set the appropriate scale (for retina display support) */
-        self.contentScaleFactor = scale;
-
-        /* Create the color Renderbuffer Object */
-        glGenRenderbuffers(1, &viewRenderbuffer);
-        glBindRenderbuffer(GL_RENDERBUFFER, viewRenderbuffer);
-
-        if (![context renderbufferStorage:GL_RENDERBUFFER fromDrawable:eaglLayer]) {
-            SDL_SetError("Failed to create OpenGL ES drawable");
+        context = [[EAGLContext alloc] initWithAPI:api sharegroup:shareGroup];
+        if (!context || ![EAGLContext setCurrentContext:context]) {
+            [self release];
+            SDL_SetError("OpenGL ES %d not supported", majorVersion);
             return nil;
         }
 
-        /* Create the Framebuffer Object */
-        glGenFramebuffers(1, &viewFramebuffer);
-        glBindFramebuffer(GL_FRAMEBUFFER, viewFramebuffer);
+        /* Set the appropriate scale (for retina display support) */
+        self.contentScaleFactor = scale;
 
-        /* attach the color renderbuffer to the FBO */
-        glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, viewRenderbuffer);
+        /* create the buffers */
+        glGenFramebuffersOES(1, &viewFramebuffer);
+        glGenRenderbuffersOES(1, &viewRenderbuffer);
 
-        glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth);
-        glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight);
+        glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer);
+        glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
+        [context renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:(CAEAGLLayer*)self.layer];
+        glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, viewRenderbuffer);
+
+        glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &backingWidth);
+        glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &backingHeight);
 
         if ((useDepthBuffer) || (useStencilBuffer)) {
             if (useStencilBuffer) {
                 /* Apparently you need to pack stencil and depth into one buffer. */
                 depthBufferFormat = GL_DEPTH24_STENCIL8_OES;
             } else if (useDepthBuffer) {
-                /* iOS only has 24-bit depth buffers, even with GL_DEPTH_COMPONENT16 */
+                /* iOS only has 24-bit depth buffers, even with GL_DEPTH_COMPONENT16_OES */
                 depthBufferFormat = GL_DEPTH_COMPONENT24_OES;
             }
 
-            glGenRenderbuffers(1, &depthRenderbuffer);
-            glBindRenderbuffer(GL_RENDERBUFFER, depthRenderbuffer);
-            glRenderbufferStorage(GL_RENDERBUFFER, depthBufferFormat, backingWidth, backingHeight);
+            glGenRenderbuffersOES(1, &depthRenderbuffer);
+            glBindRenderbufferOES(GL_RENDERBUFFER_OES, depthRenderbuffer);
+            glRenderbufferStorageOES(GL_RENDERBUFFER_OES, depthBufferFormat, backingWidth, backingHeight);
             if (useDepthBuffer) {
-                glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, depthRenderbuffer);
+                glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthRenderbuffer);
             }
             if (useStencilBuffer) {
-                glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, depthRenderbuffer);
+                glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_STENCIL_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthRenderbuffer);
             }
         }
 
-        if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) {
-            SDL_SetError("Failed creating OpenGL ES framebuffer");
-            return nil;
+        if (glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES) != GL_FRAMEBUFFER_COMPLETE_OES) {
+            return NO;
         }
 
-        glBindRenderbuffer(GL_RENDERBUFFER, viewRenderbuffer);
+        glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
+        /* end create buffers */
 
-        [self setDebugLabels];
+        self.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
+        self.autoresizesSubviews = YES;
     }
-
     return self;
 }
 
-- (GLuint)drawableRenderbuffer
-{
-    return viewRenderbuffer;
-}
-
-- (GLuint)drawableFramebuffer
-{
-    return viewFramebuffer;
-}
-
 - (void)updateFrame
 {
-    GLint prevRenderbuffer = 0;
-    glGetIntegerv(GL_RENDERBUFFER_BINDING, &prevRenderbuffer);
+    glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer);
+    glBindRenderbufferOES(GL_RENDERBUFFER_OES, 0);
+    glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, 0);
+    glDeleteRenderbuffersOES(1, &viewRenderbuffer);
 
-    glBindRenderbuffer(GL_RENDERBUFFER, viewRenderbuffer);
-    [context renderbufferStorage:GL_RENDERBUFFER fromDrawable:(CAEAGLLayer*)self.layer];
+    glGenRenderbuffersOES(1, &viewRenderbuffer);
+    glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
+    [context renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:(CAEAGLLayer*)self.layer];
+    glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, viewRenderbuffer);
 
-    glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth);
-    glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight);
+    glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &backingWidth);
+    glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &backingHeight);
 
     if (depthRenderbuffer != 0) {
-        glBindRenderbuffer(GL_RENDERBUFFER, depthRenderbuffer);
-        glRenderbufferStorage(GL_RENDERBUFFER, depthBufferFormat, backingWidth, backingHeight);
+        glBindRenderbufferOES(GL_RENDERBUFFER_OES, depthRenderbuffer);
+        glRenderbufferStorageOES(GL_RENDERBUFFER_OES, depthBufferFormat, backingWidth, backingHeight);
     }
 
-    glBindRenderbuffer(GL_RENDERBUFFER, prevRenderbuffer);
-}
-
-- (void)setDebugLabels
-{
-    if (viewFramebuffer != 0) {
-        glLabelObjectEXT(GL_FRAMEBUFFER, viewFramebuffer, 0, "context FBO");
-    }
-
-    if (viewRenderbuffer != 0) {
-        glLabelObjectEXT(GL_RENDERBUFFER, viewRenderbuffer, 0, "context color buffer");
-    }
-
-    if (depthRenderbuffer != 0) {
-        if (depthBufferFormat == GL_DEPTH24_STENCIL8_OES) {
-            glLabelObjectEXT(GL_RENDERBUFFER, depthRenderbuffer, 0, "context depth-stencil buffer");
-        } else {
-            glLabelObjectEXT(GL_RENDERBUFFER, depthRenderbuffer, 0, "context depth buffer");
-        }
-    }
+    glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
 }
 
 - (void)setAnimationCallback:(int)interval
-                    callback:(void (*)(void*))callback
-               callbackParam:(void*)callbackParam
+    callback:(void (*)(void*))callback
+    callbackParam:(void*)callbackParam
 {
     [self stopAnimation];
 
@@ -229,9 +164,8 @@
     animationCallback = callback;
     animationCallbackParam = callbackParam;
 
-    if (animationCallback) {
+    if (animationCallback)
         [self startAnimation];
-    }
 }
 
 - (void)startAnimation
@@ -260,43 +194,31 @@
     [EAGLContext setCurrentContext:context];
 }
 
+
 - (void)swapBuffers
 {
     /* viewRenderbuffer should always be bound here. Code that binds something
-       else is responsible for rebinding viewRenderbuffer, to reduce duplicate
-       state changes. */
-    [context presentRenderbuffer:GL_RENDERBUFFER];
+        else is responsible for rebinding viewRenderbuffer, to reduce
+        duplicate state changes. */
+    [context presentRenderbuffer:GL_RENDERBUFFER_OES];
 }
 
+
 - (void)layoutSubviews
 {
-    [super layoutSubviews];
-
-    CGSize layersize = self.layer.bounds.size;
-    int width = (int) (layersize.width * self.layer.contentsScale);
-    int height = (int) (layersize.height * self.layer.contentsScale);
-
-    /* Update the color and depth buffer storage if the layer size has changed. */
-    if (width != backingWidth || height != backingHeight) {
-        [EAGLContext setCurrentContext:context];
-        [self updateFrame];
-    }
+    [EAGLContext setCurrentContext:context];
+    [self updateFrame];
 }
 
 - (void)destroyFramebuffer
 {
-    if (viewFramebuffer != 0) {
-        glDeleteFramebuffers(1, &viewFramebuffer);
-        viewFramebuffer = 0;
-    }
+    glDeleteFramebuffersOES(1, &viewFramebuffer);
+    viewFramebuffer = 0;
+    glDeleteRenderbuffersOES(1, &viewRenderbuffer);
+    viewRenderbuffer = 0;
 
-    if (viewRenderbuffer != 0) {
-        glDeleteRenderbuffers(1, &viewRenderbuffer);
-        viewRenderbuffer = 0;
-    }
-
-    if (depthRenderbuffer != 0) {
-        glDeleteRenderbuffers(1, &depthRenderbuffer);
+    if (depthRenderbuffer) {
+        glDeleteRenderbuffersOES(1, &depthRenderbuffer);
         depthRenderbuffer = 0;
     }
 }
@@ -304,10 +226,12 @@
 
 - (void)dealloc
 {
+    [self destroyFramebuffer];
     if ([EAGLContext currentContext] == context) {
-        [self destroyFramebuffer];
         [EAGLContext setCurrentContext:nil];
     }
+    [context release];
+    [super dealloc];
 }
 
 @end

+ 14 - 2
src/video/uikit/SDL_uikitvideo.h

@@ -25,8 +25,20 @@
 
 #include "../SDL_sysvideo.h"
 
-BOOL UIKit_IsSystemVersionAtLeast(double version);
-CGRect UIKit_ComputeViewFrame(SDL_Window *window, UIScreen *screen);
+#ifndef __IPHONE_6_0
+/* This enum isn't available in older SDKs, but we use it for our own purposes on iOS 5.1 and for the system on iOS 6.0 */
+enum UIInterfaceOrientationMask
+{
+    UIInterfaceOrientationMaskPortrait = (1 << UIInterfaceOrientationPortrait),
+    UIInterfaceOrientationMaskLandscapeLeft = (1 << UIInterfaceOrientationLandscapeLeft),
+    UIInterfaceOrientationMaskLandscapeRight = (1 << UIInterfaceOrientationLandscapeRight),
+    UIInterfaceOrientationMaskPortraitUpsideDown = (1 << UIInterfaceOrientationPortraitUpsideDown),
+    UIInterfaceOrientationMaskLandscape = (UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight),
+    UIInterfaceOrientationMaskAll = (UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight | UIInterfaceOrientationMaskPortraitUpsideDown),
+    UIInterfaceOrientationMaskAllButUpsideDown = (UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight),
+};
+#endif /* !__IPHONE_6_0 */
+
 
 #endif /* _SDL_uikitvideo_h */
 

+ 5 - 24
src/video/uikit/SDL_uikitvideo.m

@@ -78,11 +78,12 @@ UIKit_CreateDevice(int devindex)
     device->ShowWindow = UIKit_ShowWindow;
     device->HideWindow = UIKit_HideWindow;
     device->RaiseWindow = UIKit_RaiseWindow;
-    device->SetWindowBordered = UIKit_SetWindowBordered;
     device->SetWindowFullscreen = UIKit_SetWindowFullscreen;
     device->DestroyWindow = UIKit_DestroyWindow;
     device->GetWindowWMInfo = UIKit_GetWindowWMInfo;
 
+    /* !!! FIXME: implement SetWindowBordered */
+
 #if SDL_IPHONE_KEYBOARD
     device->HasScreenKeyboardSupport = UIKit_HasScreenKeyboardSupport;
     device->ShowScreenKeyboard = UIKit_ShowScreenKeyboard;
@@ -92,13 +93,12 @@ UIKit_CreateDevice(int devindex)
 #endif
 
     /* OpenGL (ES) functions */
-    device->GL_MakeCurrent      = UIKit_GL_MakeCurrent;
-    device->GL_GetDrawableSize  = UIKit_GL_GetDrawableSize;
-    device->GL_SwapWindow       = UIKit_GL_SwapWindow;
+    device->GL_MakeCurrent        = UIKit_GL_MakeCurrent;
+    device->GL_SwapWindow        = UIKit_GL_SwapWindow;
     device->GL_CreateContext    = UIKit_GL_CreateContext;
     device->GL_DeleteContext    = UIKit_GL_DeleteContext;
     device->GL_GetProcAddress   = UIKit_GL_GetProcAddress;
-    device->GL_LoadLibrary      = UIKit_GL_LoadLibrary;
+    device->GL_LoadLibrary        = UIKit_GL_LoadLibrary;
     device->free = UIKit_DeleteDevice;
 
     device->gl_config.accelerated = 1;
@@ -129,25 +129,6 @@ UIKit_VideoQuit(_THIS)
     UIKit_QuitModes(_this);
 }
 
-BOOL
-UIKit_IsSystemVersionAtLeast(double version)
-{
-    return [[UIDevice currentDevice].systemVersion doubleValue] >= version;
-}
-
-CGRect
-UIKit_ComputeViewFrame(SDL_Window *window, UIScreen *screen)
-{
-    BOOL hasiOS7 = UIKit_IsSystemVersionAtLeast(7.0);
-
-    if (hasiOS7 || (window->flags & (SDL_WINDOW_BORDERLESS|SDL_WINDOW_FULLSCREEN))) {
-        /* The view should always show behind the status bar in iOS 7+. */
-        return screen.bounds;
-    } else {
-        return screen.applicationFrame;
-    }
-}
-
 /*
  * iOS log support.
  *

+ 26 - 7
src/video/uikit/SDL_uikitview.h

@@ -24,14 +24,34 @@
 
 #include "SDL_touch.h"
 
+#define IPHONE_TOUCH_EFFICIENT_DANGEROUS
+
+#ifndef IPHONE_TOUCH_EFFICIENT_DANGEROUS
+#define MAX_SIMULTANEOUS_TOUCHES 5
+#endif
+
 #if SDL_IPHONE_KEYBOARD
-@interface SDL_uikitview : UIView <UITextFieldDelegate>
+@interface SDL_uikitview : UIView<UITextFieldDelegate> {
 #else
-@interface SDL_uikitview : UIView
+@interface SDL_uikitview : UIView {
+#endif
+
+    SDL_TouchID touchId;
+    UITouch *leftFingerDown;
+#ifndef IPHONE_TOUCH_EFFICIENT_DANGEROUS
+    UITouch *finger[MAX_SIMULTANEOUS_TOUCHES];
 #endif
 
-@property (nonatomic, weak) SDL_uikitviewcontroller *viewcontroller;
+#if SDL_IPHONE_KEYBOARD
+    UITextField *textField;
+    BOOL keyboardVisible;
+    SDL_Rect textInputRect;
+    int keyboardHeight;
+#endif
 
+@public
+    SDL_uikitviewcontroller *viewcontroller;
+}
 - (CGPoint)touchLocation:(UITouch *)touch shouldNormalize:(BOOL)normalize;
 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
@@ -41,10 +61,9 @@
 - (void)showKeyboard;
 - (void)hideKeyboard;
 - (void)initializeKeyboard;
-
-@property (nonatomic, assign, getter=isKeyboardVisible) BOOL keyboardVisible;
-@property (nonatomic, assign) SDL_Rect textInputRect;
-@property (nonatomic, assign) int keyboardHeight;
+@property (readonly) BOOL keyboardVisible;
+@property (nonatomic,assign) SDL_Rect textInputRect;
+@property (nonatomic,assign) int keyboardHeight;
 
 SDL_bool UIKit_HasScreenKeyboardSupport(_THIS);
 void UIKit_ShowScreenKeyboard(_THIS, SDL_Window *window);

+ 131 - 79
src/video/uikit/SDL_uikitview.m

@@ -35,33 +35,27 @@
 #include "SDL_uikitmodes.h"
 #include "SDL_uikitwindow.h"
 
-void _uikit_keyboard_init();
+void _uikit_keyboard_init() ;
 
-@implementation SDL_uikitview {
-
-    SDL_TouchID touchId;
-    UITouch *leftFingerDown;
-
-#if SDL_IPHONE_KEYBOARD
-    UITextField *textField;
-#endif
+@implementation SDL_uikitview
 
+- (void)dealloc
+{
+    [super dealloc];
 }
 
-@synthesize viewcontroller;
-
 - (id)initWithFrame:(CGRect)frame
 {
-    if (self = [super initWithFrame:frame]) {
+    self = [super initWithFrame: frame];
+
 #if SDL_IPHONE_KEYBOARD
-        [self initializeKeyboard];
+    [self initializeKeyboard];
 #endif
 
-        self.multipleTouchEnabled = YES;
+    self.multipleTouchEnabled = YES;
 
-        touchId = 1;
-        SDL_AddTouch(touchId, "");
-    }
+    touchId = 1;
+    SDL_AddTouch(touchId, "");
 
     return self;
 
@@ -69,50 +63,93 @@ void _uikit_keyboard_init();
 
 - (CGPoint)touchLocation:(UITouch *)touch shouldNormalize:(BOOL)normalize
 {
-    CGPoint point = [touch locationInView:self];
+    CGPoint point = [touch locationInView: self];
+
+    /* Get the display scale and apply that to the input coordinates */
+    SDL_Window *window = self->viewcontroller.window;
+    SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
+    SDL_DisplayModeData *displaymodedata = (SDL_DisplayModeData *) display->current_mode.driverdata;
 
     if (normalize) {
-        CGRect bounds = self.bounds;
+        CGRect bounds = [self bounds];
         point.x /= bounds.size.width;
         point.y /= bounds.size.height;
+    } else {
+        point.x *= displaymodedata->scale;
+        point.y *= displaymodedata->scale;
     }
-
     return point;
 }
 
 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
 {
-    for (UITouch *touch in touches) {
+    NSEnumerator *enumerator = [touches objectEnumerator];
+    UITouch *touch = (UITouch*)[enumerator nextObject];
+
+    while (touch) {
         if (!leftFingerDown) {
             CGPoint locationInView = [self touchLocation:touch shouldNormalize:NO];
 
             /* send moved event */
-            SDL_SendMouseMotion(self.viewcontroller.window, SDL_TOUCH_MOUSEID, 0, locationInView.x, locationInView.y);
+            SDL_SendMouseMotion(self->viewcontroller.window, SDL_TOUCH_MOUSEID, 0, locationInView.x, locationInView.y);
 
             /* send mouse down event */
-            SDL_SendMouseButton(self.viewcontroller.window, SDL_TOUCH_MOUSEID, SDL_PRESSED, SDL_BUTTON_LEFT);
+            SDL_SendMouseButton(self->viewcontroller.window, SDL_TOUCH_MOUSEID, SDL_PRESSED, SDL_BUTTON_LEFT);
 
             leftFingerDown = touch;
         }
 
         CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
+#ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
+        /* FIXME: TODO: Using touch as the fingerId is potentially dangerous
+         * It is also much more efficient than storing the UITouch pointer
+         * and comparing it to the incoming event.
+         */
         SDL_SendTouch(touchId, (SDL_FingerID)((size_t)touch),
                       SDL_TRUE, locationInView.x, locationInView.y, 1.0f);
+#else
+        int i;
+        for(i = 0; i < MAX_SIMULTANEOUS_TOUCHES; i++) {
+            if (finger[i] == NULL) {
+                finger[i] = touch;
+                SDL_SendTouch(touchId, i,
+                              SDL_TRUE, locationInView.x, locationInView.y, 1.0f);
+                break;
+            }
+        }
+#endif
+        touch = (UITouch*)[enumerator nextObject];
     }
 }
 
 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
 {
-    for (UITouch *touch in touches) {
+    NSEnumerator *enumerator = [touches objectEnumerator];
+    UITouch *touch = (UITouch*)[enumerator nextObject];
+
+    while(touch) {
         if (touch == leftFingerDown) {
             /* send mouse up */
-            SDL_SendMouseButton(self.viewcontroller.window, SDL_TOUCH_MOUSEID, SDL_RELEASED, SDL_BUTTON_LEFT);
+            SDL_SendMouseButton(self->viewcontroller.window, SDL_TOUCH_MOUSEID, SDL_RELEASED, SDL_BUTTON_LEFT);
             leftFingerDown = nil;
         }
 
         CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
-        SDL_SendTouch(touchId, (SDL_FingerID)((size_t)touch),
+#ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
+        SDL_SendTouch(touchId, (long)touch,
                       SDL_FALSE, locationInView.x, locationInView.y, 1.0f);
+#else
+        int i;
+        for (i = 0; i < MAX_SIMULTANEOUS_TOUCHES; i++) {
+            if (finger[i] == touch) {
+                SDL_SendTouch(touchId, i,
+                              SDL_FALSE, locationInView.x, locationInView.y, 1.0f);
+                finger[i] = NULL;
+                break;
+            }
+        }
+#endif
+        touch = (UITouch*)[enumerator nextObject];
     }
 }
 
@@ -123,22 +160,37 @@ void _uikit_keyboard_init();
         at once, or perhaps in other circumstances.  Usually (it seems)
         all active touches are canceled.
     */
-    [self touchesEnded:touches withEvent:event];
+    [self touchesEnded: touches withEvent: event];
 }
 
 - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
 {
-    for (UITouch *touch in touches) {
+    NSEnumerator *enumerator = [touches objectEnumerator];
+    UITouch *touch = (UITouch*)[enumerator nextObject];
+
+    while (touch) {
         if (touch == leftFingerDown) {
             CGPoint locationInView = [self touchLocation:touch shouldNormalize:NO];
 
             /* send moved event */
-            SDL_SendMouseMotion(self.viewcontroller.window, SDL_TOUCH_MOUSEID, 0, locationInView.x, locationInView.y);
+            SDL_SendMouseMotion(self->viewcontroller.window, SDL_TOUCH_MOUSEID, 0, locationInView.x, locationInView.y);
         }
 
         CGPoint locationInView = [self touchLocation:touch shouldNormalize:YES];
-        SDL_SendTouchMotion(touchId, (SDL_FingerID)((size_t)touch),
+#ifdef IPHONE_TOUCH_EFFICIENT_DANGEROUS
+        SDL_SendTouchMotion(touchId, (long)touch,
                             locationInView.x, locationInView.y, 1.0f);
+#else
+        int i;
+        for (i = 0; i < MAX_SIMULTANEOUS_TOUCHES; i++) {
+            if (finger[i] == touch) {
+                SDL_SendTouchMotion(touchId, i,
+                                    locationInView.x, locationInView.y, 1.0f);
+                break;
+            }
+        }
+#endif
+        touch = (UITouch*)[enumerator nextObject];
     }
 }
 
@@ -147,14 +199,19 @@ void _uikit_keyboard_init();
 */
 #if SDL_IPHONE_KEYBOARD
 
-@synthesize textInputRect;
-@synthesize keyboardHeight;
-@synthesize keyboardVisible;
+@synthesize textInputRect = textInputRect;
+@synthesize keyboardHeight = keyboardHeight;
+
+/* Is the iPhone virtual keyboard visible onscreen? */
+- (BOOL)keyboardVisible
+{
+    return keyboardVisible;
+}
 
 /* Set ourselves up as a UITextFieldDelegate */
 - (void)initializeKeyboard
 {
-    textField = [[UITextField alloc] initWithFrame:CGRectZero];
+    textField = [[UITextField alloc] initWithFrame: CGRectZero];
     textField.delegate = self;
     /* placeholder so there is something to delete! */
     textField.text = @" ";
@@ -171,7 +228,8 @@ void _uikit_keyboard_init();
     textField.hidden = YES;
     keyboardVisible = NO;
     /* add the UITextField (hidden) to our view */
-    [self addSubview:textField];
+    [self addSubview: textField];
+    [textField release];
     
     _uikit_keyboard_init();
 }
@@ -193,17 +251,19 @@ void _uikit_keyboard_init();
 /* UITextFieldDelegate method.  Invoked when user types something. */
 - (BOOL)textField:(UITextField *)_textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
 {
-    NSUInteger len = string.length;
-
-    if (len == 0) {
+    if ([string length] == 0) {
         /* it wants to replace text with nothing, ie a delete */
         SDL_SendKeyboardKey(SDL_PRESSED, SDL_SCANCODE_BACKSPACE);
         SDL_SendKeyboardKey(SDL_RELEASED, SDL_SCANCODE_BACKSPACE);
-    } else {
+    }
+    else {
         /* go through all the characters in the string we've been sent
            and convert them to key presses */
-        for (int i = 0; i < len; i++) {
-            unichar c = [string characterAtIndex:i];
+        int i;
+        for (i = 0; i < [string length]; i++) {
+
+            unichar c = [string characterAtIndex: i];
+
             Uint16 mod = 0;
             SDL_Scancode code;
 
@@ -222,20 +282,16 @@ void _uikit_keyboard_init();
                 /* If character uses shift, press shift down */
                 SDL_SendKeyboardKey(SDL_PRESSED, SDL_SCANCODE_LSHIFT);
             }
-
             /* send a keydown and keyup even for the character */
             SDL_SendKeyboardKey(SDL_PRESSED, code);
             SDL_SendKeyboardKey(SDL_RELEASED, code);
-
             if (mod & KMOD_SHIFT) {
                 /* If character uses shift, press shift back up */
                 SDL_SendKeyboardKey(SDL_RELEASED, SDL_SCANCODE_LSHIFT);
             }
         }
-
         SDL_SendKeyboardText([string UTF8String]);
     }
-
     return NO; /* don't allow the edit! (keep placeholder text there) */
 }
 
@@ -262,8 +318,8 @@ static SDL_uikitview * getWindowView(SDL_Window * window)
         return nil;
     }
 
-    SDL_WindowData *data = (__bridge SDL_WindowData *)window->driverdata;
-    SDL_uikitview *view = data != nil ? data.view : nil;
+    SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
+    SDL_uikitview *view = data != NULL ? data->view : nil;
 
     if (view == nil) {
         SDL_SetError("Window has no view");
@@ -279,49 +335,44 @@ SDL_bool UIKit_HasScreenKeyboardSupport(_THIS)
 
 void UIKit_ShowScreenKeyboard(_THIS, SDL_Window *window)
 {
-    @autoreleasepool {
-        SDL_uikitview *view = getWindowView(window);
-        if (view != nil) {
-            [view showKeyboard];
-        }
+    SDL_uikitview *view = getWindowView(window);
+    if (view != nil) {
+        [view showKeyboard];
     }
 }
 
 void UIKit_HideScreenKeyboard(_THIS, SDL_Window *window)
 {
-    @autoreleasepool {
-        SDL_uikitview *view = getWindowView(window);
-        if (view != nil) {
-            [view hideKeyboard];
-        }
+    SDL_uikitview *view = getWindowView(window);
+    if (view != nil) {
+        [view hideKeyboard];
     }
 }
 
 SDL_bool UIKit_IsScreenKeyboardShown(_THIS, SDL_Window *window)
 {
-    @autoreleasepool {
-        SDL_uikitview *view = getWindowView(window);
-        if (view == nil) {
-            return 0;
-        }
-
-        return view.isKeyboardVisible;
+    SDL_uikitview *view = getWindowView(window);
+    if (view == nil) {
+        return 0;
     }
+
+    return view.keyboardVisible;
 }
 
 
 void _uikit_keyboard_update() {
     SDL_Window *window = SDL_GetFocusWindow();
     if (!window) { return; }
-    SDL_WindowData *data = (__bridge SDL_WindowData *)window->driverdata;
+    SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
     if (!data) { return; }
-    SDL_uikitview *view = data.view;
+    SDL_uikitview *view = data->view;
     if (!view) { return; }
-
+    
     SDL_Rect r = view.textInputRect;
     int height = view.keyboardHeight;
     int offsetx = 0;
     int offsety = 0;
+    float scale = [UIScreen mainScreen].scale;
     if (height) {
         int sw,sh;
         SDL_GetWindowSize(window,&sw,&sh);
@@ -343,16 +394,18 @@ void _uikit_keyboard_update() {
         offsety = -offsety;
     }
 
+    offsetx /= scale;
+    offsety /= scale;
+
     view.frame = CGRectMake(offsetx,offsety,view.frame.size.width,view.frame.size.height);
 }
 
 void _uikit_keyboard_set_height(int height) {
     SDL_uikitview *view = getWindowView(SDL_GetFocusWindow());
     if (view == nil) {
-        return;
+        return ;
     }
-
-    view.keyboardVisible = height > 0;
+    
     view.keyboardHeight = height;
     _uikit_keyboard_update();
 }
@@ -365,12 +418,13 @@ void _uikit_keyboard_init() {
                          queue:queue
                     usingBlock:^(NSNotification *notification) {
                         int height = 0;
-                        CGSize keyboardSize = [[notification userInfo][UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;
+                        CGSize keyboardSize = [[[notification userInfo] objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;
                         height = keyboardSize.height;
                         UIInterfaceOrientation ui_orient = [[UIApplication sharedApplication] statusBarOrientation];
                         if (ui_orient == UIInterfaceOrientationLandscapeRight || ui_orient == UIInterfaceOrientationLandscapeLeft) {
                             height = keyboardSize.width;
                         }
+                        height *= [UIScreen mainScreen].scale;
                         _uikit_keyboard_set_height(height);
                     }
      ];
@@ -390,15 +444,13 @@ UIKit_SetTextInputRect(_THIS, SDL_Rect *rect)
         SDL_InvalidParamError("rect");
         return;
     }
-
-    @autoreleasepool {
-        SDL_uikitview *view = getWindowView(SDL_GetFocusWindow());
-        if (view == nil) {
-            return;
-        }
-
-        view.textInputRect = *rect;
+    
+    SDL_uikitview *view = getWindowView(SDL_GetFocusWindow());
+    if (view == nil) {
+        return ;
     }
+
+    view.textInputRect = *rect;
 }
 
 

+ 5 - 3
src/video/uikit/SDL_uikitviewcontroller.h

@@ -23,9 +23,12 @@
 
 #include "../SDL_sysvideo.h"
 
-@interface SDL_uikitviewcontroller : UIViewController
+@interface SDL_uikitviewcontroller : UIViewController {
+@private
+    SDL_Window *window;
+}
 
-@property (nonatomic, assign) SDL_Window *window;
+@property (readwrite) SDL_Window *window;
 
 - (id)initWithSDLWindow:(SDL_Window *)_window;
 - (void)loadView;
@@ -33,6 +36,5 @@
 - (NSUInteger)supportedInterfaceOrientations;
 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)orient;
 - (BOOL)prefersStatusBarHidden;
-- (UIStatusBarStyle)preferredStatusBarStyle;
 
 @end

+ 56 - 14
src/video/uikit/SDL_uikitviewcontroller.m

@@ -40,9 +40,12 @@
 
 - (id)initWithSDLWindow:(SDL_Window *)_window
 {
-    if (self = [super initWithNibName:nil bundle:nil]) {
-        self.window = _window;
+    self = [self init];
+    if (self == nil) {
+        return nil;
     }
+    self.window = _window;
+
     return self;
 }
 
@@ -53,16 +56,61 @@
 
 - (void)viewDidLayoutSubviews
 {
-    const CGSize size = self.view.bounds.size;
-    int w = (int) size.width;
-    int h = (int) size.height;
+    if (self->window->flags & SDL_WINDOW_RESIZABLE) {
+        SDL_WindowData *data = self->window->driverdata;
+        SDL_VideoDisplay *display = SDL_GetDisplayForWindow(self->window);
+        SDL_DisplayModeData *displaymodedata = (SDL_DisplayModeData *) display->current_mode.driverdata;
+        const CGSize size = data->view.bounds.size;
+        int w, h;
+
+        w = (int)(size.width * displaymodedata->scale);
+        h = (int)(size.height * displaymodedata->scale);
 
-    SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESIZED, w, h);
+        SDL_SendWindowEvent(self->window, SDL_WINDOWEVENT_RESIZED, w, h);
+    }
 }
 
 - (NSUInteger)supportedInterfaceOrientations
 {
-    return UIKit_GetSupportedOrientations(window);
+    NSUInteger orientationMask = 0;
+
+    const char *orientationsCString;
+    if ((orientationsCString = SDL_GetHint(SDL_HINT_ORIENTATIONS)) != NULL) {
+        BOOL rotate = NO;
+        NSString *orientationsNSString = [NSString stringWithCString:orientationsCString
+                                                            encoding:NSUTF8StringEncoding];
+        NSArray *orientations = [orientationsNSString componentsSeparatedByCharactersInSet:
+                                 [NSCharacterSet characterSetWithCharactersInString:@" "]];
+
+        if ([orientations containsObject:@"LandscapeLeft"]) {
+            orientationMask |= UIInterfaceOrientationMaskLandscapeLeft;
+        }
+        if ([orientations containsObject:@"LandscapeRight"]) {
+            orientationMask |= UIInterfaceOrientationMaskLandscapeRight;
+        }
+        if ([orientations containsObject:@"Portrait"]) {
+            orientationMask |= UIInterfaceOrientationMaskPortrait;
+        }
+        if ([orientations containsObject:@"PortraitUpsideDown"]) {
+            orientationMask |= UIInterfaceOrientationMaskPortraitUpsideDown;
+        }
+
+    } else if (self->window->flags & SDL_WINDOW_RESIZABLE) {
+        orientationMask = UIInterfaceOrientationMaskAll;  /* any orientation is okay. */
+    } else {
+        if (self->window->w >= self->window->h) {
+            orientationMask |= UIInterfaceOrientationMaskLandscape;
+        }
+        if (self->window->h >= self->window->w) {
+            orientationMask |= (UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown);
+        }
+    }
+
+    /* Don't allow upside-down orientation on the phone, so answering calls is in the natural orientation */
+    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
+        orientationMask &= ~UIInterfaceOrientationMaskPortraitUpsideDown;
+    }
+    return orientationMask;
 }
 
 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)orient
@@ -73,19 +121,13 @@
 
 - (BOOL)prefersStatusBarHidden
 {
-    if (window->flags & (SDL_WINDOW_FULLSCREEN|SDL_WINDOW_BORDERLESS)) {
+    if (self->window->flags & (SDL_WINDOW_FULLSCREEN|SDL_WINDOW_BORDERLESS)) {
         return YES;
     } else {
         return NO;
     }
 }
 
-- (UIStatusBarStyle)preferredStatusBarStyle
-{
-    /* We assume most SDL apps don't have a bright white background. */
-    return UIStatusBarStyleLightContent;
-}
-
 @end
 
 #endif /* SDL_VIDEO_DRIVER_UIKIT */

+ 8 - 14
src/video/uikit/SDL_uikitwindow.h

@@ -26,31 +26,25 @@
 #import "SDL_uikitopenglview.h"
 #import "SDL_uikitviewcontroller.h"
 
+typedef struct SDL_WindowData SDL_WindowData;
+
 extern int UIKit_CreateWindow(_THIS, SDL_Window * window);
 extern void UIKit_ShowWindow(_THIS, SDL_Window * window);
 extern void UIKit_HideWindow(_THIS, SDL_Window * window);
 extern void UIKit_RaiseWindow(_THIS, SDL_Window * window);
-extern void UIKit_SetWindowBordered(_THIS, SDL_Window * window, SDL_bool bordered);
 extern void UIKit_SetWindowFullscreen(_THIS, SDL_Window * window, SDL_VideoDisplay * display, SDL_bool fullscreen);
 extern void UIKit_DestroyWindow(_THIS, SDL_Window * window);
 extern SDL_bool UIKit_GetWindowWMInfo(_THIS, SDL_Window * window,
                                       struct SDL_SysWMinfo * info);
 
-extern NSUInteger UIKit_GetSupportedOrientations(SDL_Window * window);
-
 @class UIWindow;
 
-@interface SDL_uikitwindow : UIWindow
-
-@end
-
-@interface SDL_WindowData : NSObject
-
-@property (nonatomic, strong) SDL_uikitwindow *uiwindow;
-@property (nonatomic, strong) SDL_uikitopenglview *view;
-@property (nonatomic, strong) SDL_uikitviewcontroller *viewcontroller;
-
-@end
+struct SDL_WindowData
+{
+    UIWindow *uiwindow;
+    SDL_uikitopenglview *view;
+    SDL_uikitviewcontroller *viewcontroller;
+};
 
 #endif /* _SDL_uikitwindow_h */
 

+ 151 - 236
src/video/uikit/SDL_uikitwindow.m

@@ -41,65 +41,53 @@
 
 #include <Foundation/Foundation.h>
 
-@implementation SDL_uikitwindow
 
-- (void)layoutSubviews
-{
-    [super layoutSubviews];
-
-    /* This seems to be needed on iOS 8, otherwise the window's frame is put in
-     * an unexpected position when the screen or device is rotated.
-     * FIXME: is there a better solution to that problem than this ugly hack?
-     */
-    self.frame = self.screen.bounds;
-}
-
-@end
-
-@implementation SDL_WindowData
-
-@synthesize uiwindow;
-@synthesize view;
-@synthesize viewcontroller;
 
-@end
 
-
-static int SetupWindowData(_THIS, SDL_Window *window, SDL_uikitwindow *uiwindow, SDL_bool created)
+static int SetupWindowData(_THIS, SDL_Window *window, UIWindow *uiwindow, SDL_bool created)
 {
     SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
-    SDL_DisplayData *displaydata = (__bridge SDL_DisplayData *) display->driverdata;
+    SDL_DisplayModeData *displaymodedata = (SDL_DisplayModeData *) display->current_mode.driverdata;
+    SDL_DisplayData *displaydata = (SDL_DisplayData *) display->driverdata;
+    SDL_WindowData *data;
 
     /* Allocate the window data */
-    SDL_WindowData *data = [[SDL_WindowData alloc] init];
+    data = (SDL_WindowData *)SDL_malloc(sizeof(*data));
     if (!data) {
         return SDL_OutOfMemory();
     }
-
-    data.uiwindow = uiwindow;
+    data->uiwindow = uiwindow;
+    data->viewcontroller = nil;
+    data->view = nil;
 
     /* Fill in the SDL window with the window data */
     {
-        CGRect frame = UIKit_ComputeViewFrame(window, displaydata.uiscreen);
+        window->x = 0;
+        window->y = 0;
 
-        /* Get frame dimensions */
-        int width = (int) frame.size.width;
-        int height = (int) frame.size.height;
+        CGRect bounds;
+        if (window->flags & (SDL_WINDOW_FULLSCREEN|SDL_WINDOW_BORDERLESS)) {
+            bounds = [displaydata->uiscreen bounds];
+        } else {
+            bounds = [displaydata->uiscreen applicationFrame];
+        }
+
+        /* Get frame dimensions in pixels */
+        int width = (int)(bounds.size.width * displaymodedata->scale);
+        int height = (int)(bounds.size.height * displaymodedata->scale);
 
         /* Make sure the width/height are oriented correctly */
-        if (UIKit_IsDisplayLandscape(displaydata.uiscreen) != (width > height)) {
+        if (UIKit_IsDisplayLandscape(displaydata->uiscreen) != (width > height)) {
             int temp = width;
             width = height;
             height = temp;
         }
 
-        window->x = 0;
-        window->y = 0;
         window->w = width;
         window->h = height;
     }
 
-    window->driverdata = (void *) CFBridgingRetain(data);
+    window->driverdata = data;
 
     /* only one window on iOS, always shown */
     window->flags &= ~SDL_WINDOW_HIDDEN;
@@ -108,7 +96,7 @@ static int SetupWindowData(_THIS, SDL_Window *window, SDL_uikitwindow *uiwindow,
      * This is only set if the window is on the main screen. Other screens
      *  just force the window to have the borderless flag.
      */
-    if (displaydata.uiscreen == [UIScreen mainScreen]) {
+    if (displaydata->uiscreen == [UIScreen mainScreen]) {
         window->flags |= SDL_WINDOW_INPUT_FOCUS;  /* always has input focus */
 
         /* This was setup earlier for our window, and in iOS 7 is controlled by the view, not the application
@@ -128,8 +116,10 @@ static int SetupWindowData(_THIS, SDL_Window *window, SDL_uikitwindow *uiwindow,
      * device orientation changes. This will trigger resize events, if
      * appropriate.
      */
-    data.viewcontroller = [[SDL_uikitviewcontroller alloc] initWithSDLWindow:window];
-    data.viewcontroller.title = @"SDL App";  /* !!! FIXME: hook up SDL_SetWindowTitle() */
+    SDL_uikitviewcontroller *controller;
+    controller = [SDL_uikitviewcontroller alloc];
+    data->viewcontroller = [controller initWithSDLWindow:window];
+    [data->viewcontroller setTitle:@"SDL App"];  /* !!! FIXME: hook up SDL_SetWindowTitle() */
 
     return 0;
 }
@@ -137,118 +127,105 @@ static int SetupWindowData(_THIS, SDL_Window *window, SDL_uikitwindow *uiwindow,
 int
 UIKit_CreateWindow(_THIS, SDL_Window *window)
 {
-    @autoreleasepool {
-        SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
-        SDL_DisplayData *data = (__bridge SDL_DisplayData *) display->driverdata;
-        const BOOL external = ([UIScreen mainScreen] != data.uiscreen);
-        const CGSize origsize = [[data.uiscreen currentMode] size];
-
-        /* SDL currently puts this window at the start of display's linked list. We rely on this. */
-        SDL_assert(_this->windows == window);
-
-        /* We currently only handle a single window per display on iOS */
-        if (window->next != NULL) {
-            return SDL_SetError("Only one window allowed per display.");
-        }
-
-        /* If monitor has a resolution of 0x0 (hasn't been explicitly set by the
-         * user, so it's in standby), try to force the display to a resolution
-         * that most closely matches the desired window size.
-         */
-        if ((origsize.width == 0.0f) && (origsize.height == 0.0f)) {
-            if (display->num_display_modes == 0) {
-                _this->GetDisplayModes(_this, display);
-            }
+    SDL_VideoDisplay *display = SDL_GetDisplayForWindow(window);
+    SDL_DisplayData *data = (SDL_DisplayData *) display->driverdata;
+    const BOOL external = ([UIScreen mainScreen] != data->uiscreen);
+    const CGSize origsize = [[data->uiscreen currentMode] size];
 
-            int i;
-            const SDL_DisplayMode *bestmode = NULL;
-            for (i = display->num_display_modes; i >= 0; i--) {
-                const SDL_DisplayMode *mode = &display->display_modes[i];
-                if ((mode->w >= window->w) && (mode->h >= window->h))
-                    bestmode = mode;
-            }
+    /* SDL currently puts this window at the start of display's linked list. We rely on this. */
+    SDL_assert(_this->windows == window);
 
-            if (bestmode) {
-                SDL_DisplayModeData *modedata = (__bridge SDL_DisplayModeData *)bestmode->driverdata;
-                [data.uiscreen setCurrentMode:modedata.uiscreenmode];
+    /* We currently only handle a single window per display on iOS */
+    if (window->next != NULL) {
+        return SDL_SetError("Only one window allowed per display.");
+    }
 
-                /* desktop_mode doesn't change here (the higher level will
-                 * use it to set all the screens back to their defaults
-                 * upon window destruction, SDL_Quit(), etc.
-                 */
-                display->current_mode = *bestmode;
-            }
+    /* If monitor has a resolution of 0x0 (hasn't been explicitly set by the
+     * user, so it's in standby), try to force the display to a resolution
+     * that most closely matches the desired window size.
+     */
+    if ((origsize.width == 0.0f) && (origsize.height == 0.0f)) {
+        if (display->num_display_modes == 0) {
+            _this->GetDisplayModes(_this, display);
         }
 
-        if (data.uiscreen == [UIScreen mainScreen]) {
-            NSUInteger orientations = UIKit_GetSupportedOrientations(window);
-            UIApplication *app = [UIApplication sharedApplication];
+        int i;
+        const SDL_DisplayMode *bestmode = NULL;
+        for (i = display->num_display_modes; i >= 0; i--) {
+            const SDL_DisplayMode *mode = &display->display_modes[i];
+            if ((mode->w >= window->w) && (mode->h >= window->h))
+                bestmode = mode;
+        }
 
-            if (window->flags & (SDL_WINDOW_FULLSCREEN|SDL_WINDOW_BORDERLESS)) {
-                app.statusBarHidden = YES;
-            } else {
-                app.statusBarHidden = NO;
-            }
+        if (bestmode) {
+            SDL_DisplayModeData *modedata = (SDL_DisplayModeData *)bestmode->driverdata;
+            [data->uiscreen setCurrentMode:modedata->uiscreenmode];
 
-            /* Make sure the screen is using a supported orientation. We do it
-             * now so that SetupWindowData assigns the properly oriented width
-             * and height to the window's w and h variables.
+            /* desktop_mode doesn't change here (the higher level will
+             * use it to set all the screens back to their defaults
+             * upon window destruction, SDL_Quit(), etc.
              */
-            if (UIKit_IsDisplayLandscape(data.uiscreen)) {
-                if (!(orientations & UIInterfaceOrientationMaskLandscape)) {
-                    [app setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO];
-                }
-            } else {
-                if (!(orientations & (UIInterfaceOrientationMaskPortrait|UIInterfaceOrientationMaskPortraitUpsideDown))) {
-                    UIInterfaceOrientation orient = UIInterfaceOrientationLandscapeLeft;
-
-                    if (orientations & UIInterfaceOrientationMaskLandscapeRight) {
-                        orient = UIInterfaceOrientationLandscapeRight;
-                    }
-
-                    [app setStatusBarOrientation:orient animated:NO];
-                }
-            }
+            display->current_mode = *bestmode;
         }
+    }
 
-        /* ignore the size user requested, and make a fullscreen window */
-        /* !!! FIXME: can we have a smaller view? */
-        SDL_uikitwindow *uiwindow = [[SDL_uikitwindow alloc] initWithFrame:data.uiscreen.bounds];
-
-        /* put the window on an external display if appropriate. This implicitly
-         * does [uiwindow setframe:[uiscreen bounds]], so don't do it on the
-         * main display, where we land by default, as that would eat the
-         * status bar real estate.
-         */
-        if (external) {
-            [uiwindow setScreen:data.uiscreen];
+    if (data->uiscreen == [UIScreen mainScreen]) {
+        if (window->flags & (SDL_WINDOW_FULLSCREEN|SDL_WINDOW_BORDERLESS)) {
+            [UIApplication sharedApplication].statusBarHidden = YES;
+        } else {
+            [UIApplication sharedApplication].statusBarHidden = NO;
         }
+    }
 
-        if (SetupWindowData(_this, window, uiwindow, SDL_TRUE) < 0) {
-            return -1;
+    if (!(window->flags & SDL_WINDOW_RESIZABLE)) {
+        if (window->w > window->h) {
+            if (!UIKit_IsDisplayLandscape(data->uiscreen)) {
+                [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
+            }
+        } else if (window->w < window->h) {
+            if (UIKit_IsDisplayLandscape(data->uiscreen)) {
+                [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO];
+            }
         }
+    }
 
+    /* ignore the size user requested, and make a fullscreen window */
+    /* !!! FIXME: can we have a smaller view? */
+    UIWindow *uiwindow = [UIWindow alloc];
+    uiwindow = [uiwindow initWithFrame:[data->uiscreen bounds]];
+
+    /* put the window on an external display if appropriate. This implicitly
+     * does [uiwindow setframe:[uiscreen bounds]], so don't do it on the
+     * main display, where we land by default, as that would eat the
+     * status bar real estate.
+     */
+    if (external) {
+        [uiwindow setScreen:data->uiscreen];
+    }
+
+    if (SetupWindowData(_this, window, uiwindow, SDL_TRUE) < 0) {
+        [uiwindow release];
+        return -1;
     }
 
     return 1;
+
 }
 
 void
 UIKit_ShowWindow(_THIS, SDL_Window * window)
 {
-    @autoreleasepool {
-        UIWindow *uiwindow = ((__bridge SDL_WindowData *) window->driverdata).uiwindow;
-        [uiwindow makeKeyAndVisible];
-    }
+    UIWindow *uiwindow = ((SDL_WindowData *) window->driverdata)->uiwindow;
+
+    [uiwindow makeKeyAndVisible];
 }
 
 void
 UIKit_HideWindow(_THIS, SDL_Window * window)
 {
-    @autoreleasepool {
-        UIWindow *uiwindow = ((__bridge SDL_WindowData *) window->driverdata).uiwindow;
-        uiwindow.hidden = YES;
-    }
+    UIWindow *uiwindow = ((SDL_WindowData *) window->driverdata)->uiwindow;
+
+    uiwindow.hidden = YES;
 }
 
 void
@@ -262,153 +239,91 @@ UIKit_RaiseWindow(_THIS, SDL_Window * window)
     _this->GL_MakeCurrent(_this, _this->current_glwin, _this->current_glctx);
 }
 
-static void
-UIKit_UpdateWindowBorder(_THIS, SDL_Window * window)
+void
+UIKit_SetWindowFullscreen(_THIS, SDL_Window * window, SDL_VideoDisplay * display, SDL_bool fullscreen)
 {
-    SDL_WindowData *windowdata = (__bridge SDL_WindowData *) window->driverdata;
-    SDL_uikitviewcontroller *viewcontroller = windowdata.viewcontroller;
-    CGRect frame;
+    SDL_DisplayData *displaydata = (SDL_DisplayData *) display->driverdata;
+    SDL_DisplayModeData *displaymodedata = (SDL_DisplayModeData *) display->current_mode.driverdata;
+    UIWindow *uiwindow = ((SDL_WindowData *) window->driverdata)->uiwindow;
 
-    if (windowdata.uiwindow.screen == [UIScreen mainScreen]) {
-        if (window->flags & (SDL_WINDOW_FULLSCREEN | SDL_WINDOW_BORDERLESS)) {
-            [UIApplication sharedApplication].statusBarHidden = YES;
-        } else {
-            [UIApplication sharedApplication].statusBarHidden = NO;
-        }
-
-        /* iOS 7+ won't update the status bar until we tell it to. */
-        if ([viewcontroller respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {
-            [viewcontroller setNeedsStatusBarAppearanceUpdate];
-        }
+    if (fullscreen) {
+        [UIApplication sharedApplication].statusBarHidden = YES;
+    } else {
+        [UIApplication sharedApplication].statusBarHidden = NO;
     }
 
-    /* Update the view's frame to account for the status bar change. */
-    frame = UIKit_ComputeViewFrame(window, windowdata.uiwindow.screen);
-
-    windowdata.view.frame = frame;
-    [windowdata.view setNeedsLayout];
-    [windowdata.view layoutIfNeeded];
+    CGRect bounds;
+    if (fullscreen) {
+        bounds = [displaydata->uiscreen bounds];
+    } else {
+        bounds = [displaydata->uiscreen applicationFrame];
+    }
 
-    /* Get frame dimensions */
-    int width  = (int) frame.size.width;
-    int height = (int) frame.size.height;
+    /* Get frame dimensions in pixels */
+    int width = (int)(bounds.size.width * displaymodedata->scale);
+    int height = (int)(bounds.size.height * displaymodedata->scale);
 
     /* We can pick either width or height here and we'll rotate the
-     screen to match, so we pick the closest to what we wanted.
+       screen to match, so we pick the closest to what we wanted.
      */
     if (window->w >= window->h) {
-        SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESIZED, SDL_max(width, height), SDL_min(width, height));
+        if (width > height) {
+            window->w = width;
+            window->h = height;
+        } else {
+            window->w = height;
+            window->h = width;
+        }
     } else {
-        SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESIZED, SDL_min(width, height), SDL_max(width, height));
-    }
-}
-
-void
-UIKit_SetWindowBordered(_THIS, SDL_Window * window, SDL_bool bordered)
-{
-    @autoreleasepool {
-        UIKit_UpdateWindowBorder(_this, window);
-    }
-}
-
-void
-UIKit_SetWindowFullscreen(_THIS, SDL_Window * window, SDL_VideoDisplay * display, SDL_bool fullscreen)
-{
-    @autoreleasepool {
-        UIKit_UpdateWindowBorder(_this, window);
+        if (width > height) {
+            window->w = height;
+            window->h = width;
+        } else {
+            window->w = width;
+            window->h = height;
+        }
     }
 }
 
 void
 UIKit_DestroyWindow(_THIS, SDL_Window * window)
 {
-    @autoreleasepool {
-        if (window->driverdata != NULL) {
-            CFRelease(window->driverdata);
-        }
-    }
+    SDL_WindowData *data = (SDL_WindowData *)window->driverdata;
 
+    if (data) {
+        [data->viewcontroller release];
+        [data->uiwindow release];
+        SDL_free(data);
+    }
     window->driverdata = NULL;
 }
 
 SDL_bool
 UIKit_GetWindowWMInfo(_THIS, SDL_Window * window, SDL_SysWMinfo * info)
 {
-    @autoreleasepool {
-        UIWindow *uiwindow = ((__bridge SDL_WindowData *) window->driverdata).uiwindow;
+    UIWindow *uiwindow = ((SDL_WindowData *) window->driverdata)->uiwindow;
 
-        if (info->version.major <= SDL_MAJOR_VERSION) {
-            info->subsystem = SDL_SYSWM_UIKIT;
-            info->info.uikit.window = uiwindow;
-            return SDL_TRUE;
-        } else {
-            SDL_SetError("Application not compiled with SDL %d.%d\n",
-                         SDL_MAJOR_VERSION, SDL_MINOR_VERSION);
-            return SDL_FALSE;
-        }
-    }
-}
-
-NSUInteger
-UIKit_GetSupportedOrientations(SDL_Window * window)
-{
-    const char *hint = SDL_GetHint(SDL_HINT_ORIENTATIONS);
-    NSUInteger orientationMask = 0;
-
-    @autoreleasepool {
-        if (hint != NULL) {
-            NSArray *orientations = [@(hint) componentsSeparatedByString:@" "];
-
-            if ([orientations containsObject:@"LandscapeLeft"]) {
-                orientationMask |= UIInterfaceOrientationMaskLandscapeLeft;
-            }
-            if ([orientations containsObject:@"LandscapeRight"]) {
-                orientationMask |= UIInterfaceOrientationMaskLandscapeRight;
-            }
-            if ([orientations containsObject:@"Portrait"]) {
-                orientationMask |= UIInterfaceOrientationMaskPortrait;
-            }
-            if ([orientations containsObject:@"PortraitUpsideDown"]) {
-                orientationMask |= UIInterfaceOrientationMaskPortraitUpsideDown;
-            }
-        }
-
-        if (orientationMask == 0 && (window->flags & SDL_WINDOW_RESIZABLE)) {
-            /* any orientation is okay. */
-            orientationMask = UIInterfaceOrientationMaskAll;
-        }
-
-        if (orientationMask == 0) {
-            if (window->w >= window->h) {
-                orientationMask |= UIInterfaceOrientationMaskLandscape;
-            }
-            if (window->h >= window->w) {
-                orientationMask |= (UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown);
-            }
-        }
-
-        /* Don't allow upside-down orientation on the phone, so answering calls is in the natural orientation */
-        if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
-            orientationMask &= ~UIInterfaceOrientationMaskPortraitUpsideDown;
-        }
+    if (info->version.major <= SDL_MAJOR_VERSION) {
+        info->subsystem = SDL_SYSWM_UIKIT;
+        info->info.uikit.window = uiwindow;
+        return SDL_TRUE;
+    } else {
+        SDL_SetError("Application not compiled with SDL %d.%d\n",
+                     SDL_MAJOR_VERSION, SDL_MINOR_VERSION);
+        return SDL_FALSE;
     }
-
-    return orientationMask;
 }
 
 int
 SDL_iPhoneSetAnimationCallback(SDL_Window * window, int interval, void (*callback)(void*), void *callbackParam)
 {
-    @autoreleasepool {
-        SDL_WindowData *data = window ? (__bridge SDL_WindowData *)window->driverdata : nil;
-
-        if (!data || !data.view) {
-            return SDL_SetError("Invalid window or view not set");
-        }
+    SDL_WindowData *data = window ? (SDL_WindowData *)window->driverdata : NULL;
 
-        [data.view setAnimationCallback:interval callback:callback callbackParam:callbackParam];
+    if (!data || !data->view) {
+        return SDL_SetError("Invalid window or view not set");
     }
 
+    [data->view setAnimationCallback:interval callback:callback callbackParam:callbackParam];
     return 0;
 }
 

+ 1 - 0
src/video/winrt/SDL_winrtevents_c.h

@@ -63,6 +63,7 @@ extern void WINRT_ProcessMouseMovedEvent(SDL_Window * window, Windows::Devices::
 /* Keyboard */
 extern void WINRT_ProcessKeyDownEvent(Windows::UI::Core::KeyEventArgs ^args);
 extern void WINRT_ProcessKeyUpEvent(Windows::UI::Core::KeyEventArgs ^args);
+extern void WINRT_ProcessCharacterReceivedEvent(Windows::UI::Core::CharacterReceivedEventArgs ^args);
 
 /* XAML Thread Management */
 extern void WINRT_CycleXAMLThread();

+ 18 - 0
src/video/winrt/SDL_winrtkeyboard.cpp

@@ -365,4 +365,22 @@ WINRT_ProcessKeyUpEvent(Windows::UI::Core::KeyEventArgs ^args)
     SDL_SendKeyboardKey(SDL_RELEASED, sdlScancode);
 }
 
+void
+WINRT_ProcessCharacterReceivedEvent(Windows::UI::Core::CharacterReceivedEventArgs ^args)
+{
+    wchar_t src_ucs2[2];
+    char dest_utf8[16];
+    int result;
+
+    /* Setup src */
+    src_ucs2[0] = args->KeyCode;
+    src_ucs2[1] = L'\0';
+
+    /* Convert the text, then send an SDL_TEXTINPUT event. */
+    result = WideCharToMultiByte(CP_UTF8, 0, (LPCWSTR)&src_ucs2, -1, (LPSTR)dest_utf8, sizeof(dest_utf8), NULL, NULL);
+    if (result > 0) {
+        SDL_SendKeyboardText(dest_utf8);
+    }
+}
+
 #endif // SDL_VIDEO_DRIVER_WINRT

+ 4 - 4
src/video/winrt/SDL_winrtpointerinput.cpp

@@ -233,8 +233,8 @@ void WINRT_ProcessPointerPressedEvent(SDL_Window *window, Windows::UI::Input::Po
 
         if (!WINRT_LeftFingerDown) {
             if (button) {
-                SDL_SendMouseMotion(window, 0, 0, (int)windowPoint.X, (int)windowPoint.Y);
-                SDL_SendMouseButton(window, 0, SDL_PRESSED, button);
+                SDL_SendMouseMotion(window, SDL_TOUCH_MOUSEID, 0, (int)windowPoint.X, (int)windowPoint.Y);
+                SDL_SendMouseButton(window, SDL_TOUCH_MOUSEID, SDL_PRESSED, button);
             }
 
             WINRT_LeftFingerDown = pointerPoint->PointerId;
@@ -264,7 +264,7 @@ WINRT_ProcessPointerMovedEvent(SDL_Window *window, Windows::UI::Input::PointerPo
         SDL_SendMouseMotion(window, 0, 0, (int)windowPoint.X, (int)windowPoint.Y);
     } else {
         if (pointerPoint->PointerId == WINRT_LeftFingerDown) {
-            SDL_SendMouseMotion(window, 0, 0, (int)windowPoint.X, (int)windowPoint.Y);
+            SDL_SendMouseMotion(window, SDL_TOUCH_MOUSEID, 0, (int)windowPoint.X, (int)windowPoint.Y);
         }
 
         SDL_SendTouchMotion(
@@ -291,7 +291,7 @@ void WINRT_ProcessPointerReleasedEvent(SDL_Window *window, Windows::UI::Input::P
 
         if (WINRT_LeftFingerDown == pointerPoint->PointerId) {
             if (button) {
-                SDL_SendMouseButton(window, 0, SDL_RELEASED, button);
+                SDL_SendMouseButton(window, SDL_TOUCH_MOUSEID, SDL_RELEASED, button);
             }
             WINRT_LeftFingerDown = 0;
         }

+ 17 - 1
src/video/x11/SDL_x11events.c

@@ -866,12 +866,19 @@ X11_DispatchEvent(_THIS)
         /* Have we been requested to quit (or another client message?) */
     case ClientMessage:{
 
-            int xdnd_version=0;
+            static int xdnd_version=0;
 
             if (xevent.xclient.message_type == videodata->XdndEnter) {
+
                 SDL_bool use_list = xevent.xclient.data.l[1] & 1;
                 data->xdnd_source = xevent.xclient.data.l[0];
                 xdnd_version = ( xevent.xclient.data.l[1] >> 24);
+#ifdef DEBUG_XEVENTS
+                printf("XID of source window : %ld\n", data->xdnd_source);
+                printf("Protocol version to use : %ld\n", xdnd_version);
+                printf("More then 3 data types : %ld\n", use_list); 
+#endif
+ 
                 if (use_list) {
                     /* fetch conversion targets */
                     SDL_x11Prop p;
@@ -885,6 +892,15 @@ X11_DispatchEvent(_THIS)
                 }
             }
             else if (xevent.xclient.message_type == videodata->XdndPosition) {
+            
+#ifdef DEBUG_XEVENTS
+                Atom act= videodata->XdndActionCopy;
+                if(xdnd_version >= 2) {
+                    act = xevent.xclient.data.l[4];
+                }
+                printf("Action requested by user is : %s\n", X11_XGetAtomName(display , act));
+#endif
+                
 
                 /* reply with status */
                 memset(&m, 0, sizeof(XClientMessageEvent));

+ 8 - 17
test/testautomation_platform.c

@@ -34,16 +34,16 @@ int platform_testTypes(void *arg)
    int ret;
 
    ret = _compareSizeOfType( sizeof(Uint8), 1 );
-   SDLTest_AssertCheck( ret == 0, "sizeof(Uint8) = %lu, expected  1", sizeof(Uint8) );
+   SDLTest_AssertCheck( ret == 0, "sizeof(Uint8) = %lu, expected  1", (unsigned long)sizeof(Uint8) );
 
    ret = _compareSizeOfType( sizeof(Uint16), 2 );
-   SDLTest_AssertCheck( ret == 0, "sizeof(Uint16) = %lu, expected 2", sizeof(Uint16) );
+   SDLTest_AssertCheck( ret == 0, "sizeof(Uint16) = %lu, expected 2", (unsigned long)sizeof(Uint16) );
 
    ret = _compareSizeOfType( sizeof(Uint32), 4 );
-   SDLTest_AssertCheck( ret == 0, "sizeof(Uint32) = %lu, expected 4", sizeof(Uint32) );
+   SDLTest_AssertCheck( ret == 0, "sizeof(Uint32) = %lu, expected 4", (unsigned long)sizeof(Uint32) );
 
    ret = _compareSizeOfType( sizeof(Uint64), 8 );
-   SDLTest_AssertCheck( ret == 0, "sizeof(Uint64) = %lu, expected 8", sizeof(Uint64) );
+   SDLTest_AssertCheck( ret == 0, "sizeof(Uint64) = %lu, expected 8", (unsigned long)sizeof(Uint64) );
 
    return TEST_COMPLETED;
 }
@@ -395,21 +395,17 @@ int platform_testSetErrorInvalidInput(void *arg)
      len = SDL_strlen(lastError);
      SDLTest_AssertCheck(len == 0,
              "SDL_GetError(): expected message len 0, was len: %i",
-             0,
              len);
-     SDLTest_AssertCheck(SDL_strcmp(lastError, "") == 0,
-             "SDL_GetError(): expected message '', was message: '%s'",
-             lastError);
    }
 
    /* Set */
    result = SDL_SetError(probeError);
-   SDLTest_AssertPass("SDL_SetError()");
+   SDLTest_AssertPass("SDL_SetError('%s')", probeError);
    SDLTest_AssertCheck(result == -1, "SDL_SetError: expected -1, got: %i", result);
 
    /* Check for no-op */
    result = SDL_SetError(invalidError);
-   SDLTest_AssertPass("SDL_SetError()");
+   SDLTest_AssertPass("SDL_SetError(NULL)");
    SDLTest_AssertCheck(result == -1, "SDL_SetError: expected -1, got: %i", result);
    lastError = (char *)SDL_GetError();
    SDLTest_AssertCheck(lastError != NULL,
@@ -417,14 +413,9 @@ int platform_testSetErrorInvalidInput(void *arg)
    if (lastError != NULL)
    {
      len = SDL_strlen(lastError);
-     SDLTest_AssertCheck(len == SDL_strlen(probeError),
-             "SDL_GetError(): expected message len %i, was len: %i",
-             SDL_strlen(probeError),
+     SDLTest_AssertCheck(len == 0,
+             "SDL_GetError(): expected message len 0, was len: %i",
              len);
-     SDLTest_AssertCheck(SDL_strcmp(lastError, probeError) == 0,
-             "SDL_GetError(): expected message '%s', was message: '%s'",
-             probeError,
-             lastError);
    }
 
    /* Reset */

+ 52 - 4
test/testautomation_render.c

@@ -113,6 +113,9 @@ int render_testPrimitives (void *arg)
    int checkFailCount1;
    int checkFailCount2;
 
+   /* Clear surface. */
+   _clearScreen();
+
    /* Need drawcolor or just skip test. */
    SDLTest_AssertCheck(_hasDrawColor(), "_hasDrawColor");
 
@@ -184,7 +187,10 @@ int render_testPrimitives (void *arg)
 
    ret = SDL_RenderDrawLine(renderer, 79, 59, 50, 30 );
    SDLTest_AssertCheck(ret == 0, "Validate result from SDL_RenderDrawLine, expected: 0, got: %i", ret);
-
+   
+   /* Make current */
+   SDL_RenderPresent(renderer);
+   
    /* See if it's the same. */
    referenceSurface = SDLTest_ImagePrimitives();
    _compare(referenceSurface, ALLOWABLE_ERROR_OPAQUE );
@@ -214,6 +220,9 @@ int render_testPrimitivesBlend (void *arg)
    int checkFailCount2;
    int checkFailCount3;
 
+   /* Clear surface. */
+   _clearScreen();
+
    /* Need drawcolor and blendmode or just skip test. */
    SDLTest_AssertCheck(_hasDrawColor(), "_hasDrawColor");
    SDLTest_AssertCheck(_hasBlendModes(), "_hasBlendModes");
@@ -326,6 +335,9 @@ int render_testPrimitivesBlend (void *arg)
    SDLTest_AssertCheck(checkFailCount2 == 0, "Validate results from calls to SDL_SetRenderDrawBlendMode, expected: 0, got: %i", checkFailCount2);
    SDLTest_AssertCheck(checkFailCount3 == 0, "Validate results from calls to SDL_RenderDrawPoint, expected: 0, got: %i", checkFailCount3);
 
+   /* Make current */
+   SDL_RenderPresent(renderer);
+
    /* See if it's the same. */
    referenceSurface = SDLTest_ImagePrimitivesBlend();
    _compare(referenceSurface, ALLOWABLE_ERROR_BLENDED );
@@ -358,6 +370,8 @@ render_testBlit(void *arg)
    int i, j, ni, nj;
    int checkFailCount1;
 
+   /* Clear surface. */
+   _clearScreen();
 
    /* Need drawcolor or just skip test. */
    SDLTest_AssertCheck(_hasDrawColor(), "_hasDrawColor)");
@@ -390,6 +404,9 @@ render_testBlit(void *arg)
    }
    SDLTest_AssertCheck(checkFailCount1 == 0, "Validate results from calls to SDL_RenderCopy, expected: 0, got: %i", checkFailCount1);
 
+   /* Make current */
+   SDL_RenderPresent(renderer);
+
    /* See if it's the same */
    referenceSurface = SDLTest_ImageBlit();
    _compare(referenceSurface, ALLOWABLE_ERROR_OPAQUE );
@@ -424,6 +441,9 @@ render_testBlitColor (void *arg)
    int checkFailCount1;
    int checkFailCount2;
 
+   /* Clear surface. */
+   _clearScreen();
+
    /* Create face surface. */
    tface = _loadTestFace();
    SDLTest_AssertCheck(tface != NULL, "Verify _loadTestFace() result");
@@ -458,6 +478,9 @@ render_testBlitColor (void *arg)
    SDLTest_AssertCheck(checkFailCount1 == 0, "Validate results from calls to SDL_SetTextureColorMod, expected: 0, got: %i", checkFailCount1);
    SDLTest_AssertCheck(checkFailCount2 == 0, "Validate results from calls to SDL_RenderCopy, expected: 0, got: %i", checkFailCount2);
 
+   /* Make current */
+   SDL_RenderPresent(renderer);
+
    /* See if it's the same. */
    referenceSurface = SDLTest_ImageBlitColor();
    _compare(referenceSurface, ALLOWABLE_ERROR_OPAQUE );
@@ -492,6 +515,9 @@ render_testBlitAlpha (void *arg)
    int checkFailCount1;
    int checkFailCount2;
 
+   /* Clear surface. */
+   _clearScreen();
+
    /* Need alpha or just skip test. */
    SDLTest_AssertCheck(_hasTexAlpha(), "_hasTexAlpha");
 
@@ -529,6 +555,9 @@ render_testBlitAlpha (void *arg)
    SDLTest_AssertCheck(checkFailCount1 == 0, "Validate results from calls to SDL_SetTextureAlphaMod, expected: 0, got: %i", checkFailCount1);
    SDLTest_AssertCheck(checkFailCount2 == 0, "Validate results from calls to SDL_RenderCopy, expected: 0, got: %i", checkFailCount2);
 
+   /* Make current */
+   SDL_RenderPresent(renderer);
+
    /* See if it's the same. */
    referenceSurface = SDLTest_ImageBlitAlpha();
    _compare(referenceSurface, ALLOWABLE_ERROR_BLENDED );
@@ -644,6 +673,9 @@ render_testBlitBlend (void *arg)
    /* Test None. */
    _testBlitBlendMode( tface, SDL_BLENDMODE_NONE );
    referenceSurface = SDLTest_ImageBlitBlendNone();
+
+   /* Make current and compare */
+   SDL_RenderPresent(renderer);
    _compare(referenceSurface, ALLOWABLE_ERROR_OPAQUE );
    SDL_FreeSurface(referenceSurface);
    referenceSurface = NULL;
@@ -651,6 +683,9 @@ render_testBlitBlend (void *arg)
    /* Test Blend. */
    _testBlitBlendMode( tface, SDL_BLENDMODE_BLEND );
    referenceSurface = SDLTest_ImageBlitBlend();
+
+   /* Make current and compare */
+   SDL_RenderPresent(renderer);
    _compare(referenceSurface, ALLOWABLE_ERROR_BLENDED );
    SDL_FreeSurface(referenceSurface);
    referenceSurface = NULL;
@@ -658,6 +693,9 @@ render_testBlitBlend (void *arg)
    /* Test Add. */
    _testBlitBlendMode( tface, SDL_BLENDMODE_ADD );
    referenceSurface = SDLTest_ImageBlitBlendAdd();
+
+   /* Make current and compare */
+   SDL_RenderPresent(renderer);
    _compare(referenceSurface, ALLOWABLE_ERROR_BLENDED );
    SDL_FreeSurface(referenceSurface);
    referenceSurface = NULL;
@@ -665,6 +703,9 @@ render_testBlitBlend (void *arg)
    /* Test Mod. */
    _testBlitBlendMode( tface, SDL_BLENDMODE_MOD);
    referenceSurface = SDLTest_ImageBlitBlendMod();
+
+   /* Make current and compare */
+   SDL_RenderPresent(renderer);
    _compare(referenceSurface, ALLOWABLE_ERROR_BLENDED );
    SDL_FreeSurface(referenceSurface);
    referenceSurface = NULL;
@@ -712,6 +753,9 @@ render_testBlitBlend (void *arg)
    /* Clean up. */
    SDL_DestroyTexture( tface );
 
+   /* Make current */
+   SDL_RenderPresent(renderer);
+
    /* Check to see if final image matches. */
    referenceSurface = SDLTest_ImageBlitBlendAll();
    _compare(referenceSurface, ALLOWABLE_ERROR_BLENDED);
@@ -984,7 +1028,8 @@ _compare(SDL_Surface *referenceSurface, int allowable_error)
  *
  * \sa
  * http://wiki.libsdl.org/moin.cgi/SDL_SetRenderDrawColor
- * http://wiki.libsdl.org/moin.cgi/SDL_RenderFillRect
+ * http://wiki.libsdl.org/moin.cgi/SDL_RenderClear
+ * http://wiki.libsdl.org/moin.cgi/SDL_RenderPresent
  * http://wiki.libsdl.org/moin.cgi/SDL_SetRenderDrawBlendMode
  */
 static int
@@ -997,8 +1042,11 @@ _clearScreen(void)
    SDLTest_AssertCheck(ret == 0, "Validate result from SDL_SetRenderDrawColor, expected: 0, got: %i", ret);
 
    /* Clear screen. */
-   ret = SDL_RenderFillRect(renderer, NULL );
-   SDLTest_AssertCheck(ret == 0, "Validate result from SDL_RenderFillRect, expected: 0, got: %i", ret);
+   ret = SDL_RenderClear(renderer);
+   SDLTest_AssertCheck(ret == 0, "Validate result from SDL_RenderClear, expected: 0, got: %i", ret);
+
+   /* Make current */
+   SDL_RenderPresent(renderer);
 
    /* Set defaults. */
    ret = SDL_SetRenderDrawBlendMode(renderer, SDL_BLENDMODE_NONE );

+ 7 - 7
test/testautomation_rwops.c

@@ -105,7 +105,7 @@ _testGenericRWopsValidations(SDL_RWops *rw, int write)
    /* Set to start. */
    i = SDL_RWseek(rw, 0, RW_SEEK_SET );
    SDLTest_AssertPass("Call to SDL_RWseek succeeded");
-   SDLTest_AssertCheck(i == (Sint64)0, "Verify seek to 0 with SDL_RWseek (RW_SEEK_SET), expected 0, got %i", i);
+   SDLTest_AssertCheck(i == (Sint64)0, "Verify seek to 0 with SDL_RWseek (RW_SEEK_SET), expected 0, got %lli", i);
 
    /* Test write. */
    s = SDL_RWwrite(rw, RWopsHelloWorldTestString, sizeof(RWopsHelloWorldTestString)-1, 1);
@@ -120,12 +120,12 @@ _testGenericRWopsValidations(SDL_RWops *rw, int write)
    /* Test seek to random position */
    i = SDL_RWseek( rw, seekPos, RW_SEEK_SET );
    SDLTest_AssertPass("Call to SDL_RWseek succeeded");
-   SDLTest_AssertCheck(i == (Sint64)seekPos, "Verify seek to %i with SDL_RWseek (RW_SEEK_SET), expected %i, got %i", seekPos, seekPos, i);
+   SDLTest_AssertCheck(i == (Sint64)seekPos, "Verify seek to %i with SDL_RWseek (RW_SEEK_SET), expected %i, got %lli", seekPos, seekPos, i);
 
    /* Test seek back to start */
    i = SDL_RWseek(rw, 0, RW_SEEK_SET );
    SDLTest_AssertPass("Call to SDL_RWseek succeeded");
-   SDLTest_AssertCheck(i == (Sint64)0, "Verify seek to 0 with SDL_RWseek (RW_SEEK_SET), expected 0, got %i", i);
+   SDLTest_AssertCheck(i == (Sint64)0, "Verify seek to 0 with SDL_RWseek (RW_SEEK_SET), expected 0, got %lli", i);
 
    /* Test read */
    s = SDL_RWread( rw, buf, 1, sizeof(RWopsHelloWorldTestString)-1 );
@@ -144,7 +144,7 @@ _testGenericRWopsValidations(SDL_RWops *rw, int write)
    SDLTest_AssertPass("Call to SDL_RWseek(...,-4,RW_SEEK_CUR) succeeded");
    SDLTest_AssertCheck(
        i == (Sint64)(sizeof(RWopsHelloWorldTestString)-5),
-       "Verify seek to -4 with SDL_RWseek (RW_SEEK_CUR), expected %i, got %i",
+       "Verify seek to -4 with SDL_RWseek (RW_SEEK_CUR), expected %i, got %lli",
        sizeof(RWopsHelloWorldTestString)-5,
        i);
 
@@ -152,7 +152,7 @@ _testGenericRWopsValidations(SDL_RWops *rw, int write)
    SDLTest_AssertPass("Call to SDL_RWseek(...,-1,RW_SEEK_END) succeeded");
    SDLTest_AssertCheck(
        i == (Sint64)(sizeof(RWopsHelloWorldTestString)-2),
-       "Verify seek to -1 with SDL_RWseek (RW_SEEK_END), expected %i, got %i",
+       "Verify seek to -1 with SDL_RWseek (RW_SEEK_END), expected %i, got %lli",
        sizeof(RWopsHelloWorldTestString)-2,
        i);
 
@@ -161,7 +161,7 @@ _testGenericRWopsValidations(SDL_RWops *rw, int write)
    SDLTest_AssertPass("Call to SDL_RWseek(...,0,invalid_whence) succeeded");
    SDLTest_AssertCheck(
        i == (Sint64)(-1),
-       "Verify seek with SDL_RWseek (invalid_whence); expected: -1, got %i",
+       "Verify seek with SDL_RWseek (invalid_whence); expected: -1, got %lli",
        i);
 }
 
@@ -668,7 +668,7 @@ rwops_testFileWriteReadEndian(void)
      /* Test seek to start */
      result = SDL_RWseek( rw, 0, RW_SEEK_SET );
      SDLTest_AssertPass("Call to SDL_RWseek succeeded");
-     SDLTest_AssertCheck(result == 0, "Verify result from position 0 with SDL_RWseek, expected 0, got %i", result);
+     SDLTest_AssertCheck(result == 0, "Verify result from position 0 with SDL_RWseek, expected 0, got %lli", result);
 
      /* Read test data */
      BE16test = SDL_ReadBE16(rw);

+ 1 - 1
test/testautomation_sdltest.c

@@ -1076,7 +1076,7 @@ sdltest_randomIntegerInRange(void *arg)
   max = 0;
   result = SDLTest_RandomIntegerInRange(min, max);
   SDLTest_AssertPass("Call to SDLTest_RandomIntegerInRange(0,0)");
-  SDLTest_AssertCheck(result == 0, "Validated returned value; expected: 0, got: %d", min, max, result);
+  SDLTest_AssertCheck(result == 0, "Validated returned value; expected: 0, got: %d", result);
 
   /* Swapped min-max */
   min = (Sint32)SDLTest_RandomSint16();

+ 2 - 2
test/testautomation_timer.c

@@ -42,7 +42,7 @@ timer_getPerformanceCounter(void *arg)
 
   result = SDL_GetPerformanceCounter();
   SDLTest_AssertPass("Call to SDL_GetPerformanceCounter()");
-  SDLTest_AssertCheck(result > 0, "Check result value, expected: >0, got: %lu", result);
+  SDLTest_AssertCheck(result > 0, "Check result value, expected: >0, got: %llu", result);
 
   return TEST_COMPLETED;
 }
@@ -57,7 +57,7 @@ timer_getPerformanceFrequency(void *arg)
 
   result = SDL_GetPerformanceFrequency();
   SDLTest_AssertPass("Call to SDL_GetPerformanceFrequency()");
-  SDLTest_AssertCheck(result > 0, "Check result value, expected: >0, got: %lu", result);
+  SDLTest_AssertCheck(result > 0, "Check result value, expected: >0, got: %llu", result);
 
   return TEST_COMPLETED;
 }

+ 3 - 3
test/testautomation_video.c

@@ -740,7 +740,7 @@ video_getWindowGammaRampNegative(void *arg)
   /* Call against invalid window */
   result = SDL_GetWindowGammaRamp(NULL, red, green, blue);
   SDLTest_AssertPass("Call to SDL_GetWindowGammaRamp(window=NULL,r,g,b)");
-  SDLTest_AssertCheck(result == -1, "Validate result value; expected: -1, got: %f", result);
+  SDLTest_AssertCheck(result == -1, "Validate result value; expected: -1, got: %i", result);
   _checkInvalidWindowError();
 
   return TEST_COMPLETED;
@@ -1619,7 +1619,7 @@ video_getSetWindowData(void *arg)
 
   /* Set data with NULL to clear */
   result = (char *)SDL_SetWindowData(window, name, NULL);
-  SDLTest_AssertPass("Call to SDL_SetWindowData(...%s,NULL)", name, userdata);
+  SDLTest_AssertPass("Call to SDL_SetWindowData(...%s,NULL)", name);
   SDLTest_AssertCheck(SDL_strcmp(referenceUserdata2, result) == 0, "Validate that correct result was returned; expected: %s, got: %s", referenceUserdata2, result);
   SDLTest_AssertCheck(SDL_strcmp(referenceName, name) == 0, "Validate that name was not changed, expected: %s, got: %s", referenceName, name);
   SDLTest_AssertCheck(SDL_strcmp(referenceUserdata, userdata) == 0, "Validate that userdata was not changed, expected: %s, got: %s", referenceUserdata, userdata);
@@ -1627,7 +1627,7 @@ video_getSetWindowData(void *arg)
 
   /* Set data with NULL to clear again */
   result = (char *)SDL_SetWindowData(window, name, NULL);
-  SDLTest_AssertPass("Call to SDL_SetWindowData(...%s,NULL) [again]", name, userdata);
+  SDLTest_AssertPass("Call to SDL_SetWindowData(...%s,NULL) [again]", name);
   SDLTest_AssertCheck(result == NULL, "Validate that result is NULL");
   SDLTest_AssertCheck(SDL_strcmp(referenceName, name) == 0, "Validate that name was not changed, expected: %s, got: %s", referenceName, name);
   SDLTest_AssertCheck(SDL_strcmp(referenceUserdata, userdata) == 0, "Validate that userdata was not changed, expected: %s, got: %s", referenceUserdata, userdata);

+ 9 - 0
test/testgesture.c

@@ -215,6 +215,15 @@ int main(int argc, char* argv[])
       case SDL_KEYDOWN:
         switch (event.key.keysym.sym)
           {
+              case SDLK_i:
+              {
+                  int i;
+                  for (i = 0; i < SDL_GetNumTouchDevices(); ++i) {
+                      SDL_TouchID id = SDL_GetTouchDevice(i);
+                      SDL_Log("Fingers Down on device %"SDL_PRIs64": %d", id, SDL_GetNumTouchFingers(id));
+                  }
+                  break;
+              }
           case SDLK_SPACE:
         SDL_RecordGesture(-1);
         break;

+ 0 - 424
visualtest/docs/html/_s_d_l__visualtest__action__configparser_8h.html

@@ -1,424 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_action_configparser.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#define-members">Macros</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#enum-members">Enumerations</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_action_configparser.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a href="_s_d_l__visualtest__action__configparser_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:a19244c2e1556665be344807ace1556ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a19244c2e1556665be344807ace1556ed">MAX_ACTION_LINE_LENGTH</a>&#160;&#160;&#160;300</td></tr>
-<tr class="separator:a19244c2e1556665be344807ace1556ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:a89974e9149bfca6aabb3ff06cc9671d7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a89974e9149bfca6aabb3ff06cc9671d7">SDLVisualTest_Action</a></td></tr>
-<tr class="separator:a89974e9149bfca6aabb3ff06cc9671d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a065d1acf0f98bde777d10bd8ab24d268"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a065d1acf0f98bde777d10bd8ab24d268">SDLVisualTest_ActionNode</a></td></tr>
-<tr class="separator:a065d1acf0f98bde777d10bd8ab24d268"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac9ce1bb69d8774d1818c9f9d0f97c7f1"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#ac9ce1bb69d8774d1818c9f9d0f97c7f1">SDLVisualTest_ActionQueue</a></td></tr>
-<tr class="separator:ac9ce1bb69d8774d1818c9f9d0f97c7f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:a383e41b8547eab149a0a4af867b3ebc6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6">SDLVisualTest_ActionType</a> { <br/>
-&#160;&#160;<a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6ac5344bca6af9c07c4ee69ee4c2b18df2">SDL_ACTION_LAUNCH</a> = 0, 
-<a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6a87880c4f665344d4c3e12f9aa3af7410">SDL_ACTION_KILL</a>, 
-<a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6ad3d17a830b7e1e46e37d916130d8802a">SDL_ACTION_QUIT</a>, 
-<a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6af9b5d42cb90bf843f298be4593992fdb">SDL_ACTION_SCREENSHOT</a>, 
-<br/>
-&#160;&#160;<a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6a0853f8be8363015b822658b9f3b013f4">SDL_ACTION_VERIFY</a>
-<br/>
- }</td></tr>
-<tr class="separator:a383e41b8547eab149a0a4af867b3ebc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a647d1be8f0f27af2fb1e5d4da2100596"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a647d1be8f0f27af2fb1e5d4da2100596">SDLVisualTest_EnqueueAction</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue, <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> action)</td></tr>
-<tr class="separator:a647d1be8f0f27af2fb1e5d4da2100596"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0e7998533e6e10590612a8d5dee7ec0b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a0e7998533e6e10590612a8d5dee7ec0b">SDLVisualTest_DequeueAction</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a0e7998533e6e10590612a8d5dee7ec0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae68c1c80f728e125869882139bec2c9e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#ae68c1c80f728e125869882139bec2c9e">SDLVisualTest_InitActionQueue</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:ae68c1c80f728e125869882139bec2c9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afb508801942e7c74084480bcdb6f8613"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#afb508801942e7c74084480bcdb6f8613">SDLVisualTest_GetQueueFront</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:afb508801942e7c74084480bcdb6f8613"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8484ee36f78952192d4193c85fca2f17"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a8484ee36f78952192d4193c85fca2f17">SDLVisualTest_IsActionQueueEmpty</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a8484ee36f78952192d4193c85fca2f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a677da0d0e4793df342f91974b4559efa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a677da0d0e4793df342f91974b4559efa">SDLVisualTest_EmptyActionQueue</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a677da0d0e4793df342f91974b4559efa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ace5374ef7509e95383929ff185aaf7e6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#ace5374ef7509e95383929ff185aaf7e6">SDLVisualTest_InsertIntoActionQueue</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue, <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> action)</td></tr>
-<tr class="separator:ace5374ef7509e95383929ff185aaf7e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8ef9dce4d464d6994596deeace6ffa2d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a8ef9dce4d464d6994596deeace6ffa2d">SDLVisualTest_ParseActionConfig</a> (char *file, <a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a8ef9dce4d464d6994596deeace6ffa2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header file for the parser for action config files. </p>
-</div><h2 class="groupheader">Macro Definition Documentation</h2>
-<a class="anchor" id="a19244c2e1556665be344807ace1556ed"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_ACTION_LINE_LENGTH&#160;&#160;&#160;300</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>The maximum length of one line in the actions file </p>
-
-</div>
-</div>
-<h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="a89974e9149bfca6aabb3ff06cc9671d7"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>  <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct that defines an action that will be performed on the SUT process at a specific time. </p>
-
-</div>
-</div>
-<a class="anchor" id="a065d1acf0f98bde777d10bd8ab24d268"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a>  <a class="el" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct for a node in the action queue. </p>
-
-</div>
-</div>
-<a class="anchor" id="ac9ce1bb69d8774d1818c9f9d0f97c7f1"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>  <a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Queue structure for actions loaded from the actions config file. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Enumeration Type Documentation</h2>
-<a class="anchor" id="a383e41b8547eab149a0a4af867b3ebc6"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6">SDLVisualTest_ActionType</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Type of the action. </p>
-<table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a383e41b8547eab149a0a4af867b3ebc6ac5344bca6af9c07c4ee69ee4c2b18df2"></a>SDL_ACTION_LAUNCH</em>&nbsp;</td><td class="fielddoc">
-<p>Launch an application with some given arguments </p>
-</td></tr>
-<tr><td class="fieldname"><em><a class="anchor" id="a383e41b8547eab149a0a4af867b3ebc6a87880c4f665344d4c3e12f9aa3af7410"></a>SDL_ACTION_KILL</em>&nbsp;</td><td class="fielddoc">
-<p>Kill the SUT process </p>
-</td></tr>
-<tr><td class="fieldname"><em><a class="anchor" id="a383e41b8547eab149a0a4af867b3ebc6ad3d17a830b7e1e46e37d916130d8802a"></a>SDL_ACTION_QUIT</em>&nbsp;</td><td class="fielddoc">
-<p>Quit (Gracefully exit) the SUT process </p>
-</td></tr>
-<tr><td class="fieldname"><em><a class="anchor" id="a383e41b8547eab149a0a4af867b3ebc6af9b5d42cb90bf843f298be4593992fdb"></a>SDL_ACTION_SCREENSHOT</em>&nbsp;</td><td class="fielddoc">
-<p>Take a screenshot of the SUT window </p>
-</td></tr>
-<tr><td class="fieldname"><em><a class="anchor" id="a383e41b8547eab149a0a4af867b3ebc6a0853f8be8363015b822658b9f3b013f4"></a>SDL_ACTION_VERIFY</em>&nbsp;</td><td class="fielddoc">
-<p>Verify a previously taken screenshot </p>
-</td></tr>
-</table>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a0e7998533e6e10590612a8d5dee7ec0b"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_DequeueAction </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Remove an action from the front of the action queue pointed to by <code>queue</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a677da0d0e4793df342f91974b4559efa"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_EmptyActionQueue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Dequeues all the elements in the queque pointed to by <code>queue</code>. </p>
-
-</div>
-</div>
-<a class="anchor" id="a647d1be8f0f27af2fb1e5d4da2100596"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_EnqueueAction </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>&#160;</td>
-          <td class="paramname"><em>action</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Add an action pointed to by <code>action</code> to the rear of the action queue pointed to by <code>queue</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="afb508801942e7c74084480bcdb6f8613"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>* SDLVisualTest_GetQueueFront </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Get the action at the front of the action queue pointed to by <code>queue</code>. The returned action pointer may become invalid after subsequent dequeues.</p>
-<dl class="section return"><dt>Returns</dt><dd>pointer to the action on success, NULL on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ae68c1c80f728e125869882139bec2c9e"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_InitActionQueue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Initialize the action queue pointed to by <code>queue</code>. </p>
-
-</div>
-</div>
-<a class="anchor" id="ace5374ef7509e95383929ff185aaf7e6"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_InsertIntoActionQueue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>&#160;</td>
-          <td class="paramname"><em>action</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Inserts an action <code>action</code> into the queue pointed to by <code>queue</code> such that the times of actions in the queue increase as we move from the front to the rear.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a8484ee36f78952192d4193c85fca2f17"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_IsActionQueueEmpty </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Check if the queue pointed to by <code>queue</code> is empty or not.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 if the queue is empty, 0 otherwise. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a8ef9dce4d464d6994596deeace6ffa2d"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_ParseActionConfig </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>file</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Parses an action config file with path <code>file</code> and populates an action queue pointed to by <code>queue</code> with actions.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 169
visualtest/docs/html/_s_d_l__visualtest__action__configparser_8h_source.html

@@ -1,169 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_action_configparser.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_action_configparser.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__action__configparser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_action_configparser_h</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_action_configparser_h</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a19244c2e1556665be344807ace1556ed">   12</a></span>&#160;<span class="preprocessor">#define MAX_ACTION_LINE_LENGTH 300</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6">   22</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;{</div>
-<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6ac5344bca6af9c07c4ee69ee4c2b18df2">   25</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6ac5344bca6af9c07c4ee69ee4c2b18df2">SDL_ACTION_LAUNCH</a> = 0,</div>
-<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6a87880c4f665344d4c3e12f9aa3af7410">   27</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6a87880c4f665344d4c3e12f9aa3af7410">SDL_ACTION_KILL</a>,</div>
-<div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6ad3d17a830b7e1e46e37d916130d8802a">   29</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6ad3d17a830b7e1e46e37d916130d8802a">SDL_ACTION_QUIT</a>,</div>
-<div class="line"><a name="l00031"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6af9b5d42cb90bf843f298be4593992fdb">   31</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6af9b5d42cb90bf843f298be4593992fdb">SDL_ACTION_SCREENSHOT</a>,</div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6a0853f8be8363015b822658b9f3b013f4">   33</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6a0853f8be8363015b822658b9f3b013f4">SDL_ACTION_VERIFY</a></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;} <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6">SDLVisualTest_ActionType</a>;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action.html">   40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;{</div>
-<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action.html#a3ab091b672fc470015f09e6c4c50dcf1">   43</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a383e41b8547eab149a0a4af867b3ebc6">SDLVisualTest_ActionType</a> <a class="code" href="struct_s_d_l_visual_test___action.html#a3ab091b672fc470015f09e6c4c50dcf1">type</a>;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action.html#a42715f65f02da52edc5b22021d8ae670">   46</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___action.html#a42715f65f02da52edc5b22021d8ae670">time</a>;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keyword">union</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    {</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <span class="keyword">struct</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        {</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;            <span class="keywordtype">char</span>* path;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;            <span class="keywordtype">char</span>* args;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        } <a class="code" href="struct_s_d_l_visual_test___action.html#aa43e9883c9f24718f49b984b67b1afdc">process</a>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    } <a class="code" href="struct_s_d_l_visual_test___action.html#a4626514a67f261290b54fb3d85ca8ddd">extra</a>;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;} <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a89974e9149bfca6aabb3ff06cc9671d7">SDLVisualTest_Action</a>;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_node.html">   62</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;{</div>
-<div class="line"><a name="l00065"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_node.html#af46ec45094cc74a7432626a6234c6575">   65</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> <a class="code" href="struct_s_d_l_visual_test___action_node.html#af46ec45094cc74a7432626a6234c6575">action</a>;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_node.html#ae6154b60b896ce1a184d060ee4664485">   67</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a>* <a class="code" href="struct_s_d_l_visual_test___action_node.html#ae6154b60b896ce1a184d060ee4664485">next</a>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;} <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a065d1acf0f98bde777d10bd8ab24d268">SDLVisualTest_ActionNode</a>;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_queue.html">   73</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a></div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;{</div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_queue.html#a8b810b2fd2b05698be642ee08836a452">   76</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a>* <a class="code" href="struct_s_d_l_visual_test___action_queue.html#a8b810b2fd2b05698be642ee08836a452">front</a>;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_queue.html#a4aaf4563956932c81c65d05f9020f2ce">   78</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a>* <a class="code" href="struct_s_d_l_visual_test___action_queue.html#a4aaf4563956932c81c65d05f9020f2ce">rear</a>;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___action_queue.html#a439227feff9d7f55384e8780cfc2eb82">   80</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___action_queue.html#a439227feff9d7f55384e8780cfc2eb82">size</a>;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;} <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#ac9ce1bb69d8774d1818c9f9d0f97c7f1">SDLVisualTest_ActionQueue</a>;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a647d1be8f0f27af2fb1e5d4da2100596">SDLVisualTest_EnqueueAction</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue,</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                                <a class="code" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> action);</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a0e7998533e6e10590612a8d5dee7ec0b">SDLVisualTest_DequeueAction</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue);</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#ae68c1c80f728e125869882139bec2c9e">SDLVisualTest_InitActionQueue</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue);</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<a class="code" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>* <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#afb508801942e7c74084480bcdb6f8613">SDLVisualTest_GetQueueFront</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue);</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a8484ee36f78952192d4193c85fca2f17">SDLVisualTest_IsActionQueueEmpty</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue);</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a677da0d0e4793df342f91974b4559efa">SDLVisualTest_EmptyActionQueue</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue);</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#ace5374ef7509e95383929ff185aaf7e6">SDLVisualTest_InsertIntoActionQueue</a>(<a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue,</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                                        <a class="code" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> action);</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__action__configparser_8h.html#a8ef9dce4d464d6994596deeace6ffa2d">SDLVisualTest_ParseActionConfig</a>(<span class="keywordtype">char</span>* file, <a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>* queue);</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_action_configparser_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 208
visualtest/docs/html/_s_d_l__visualtest__exhaustive__variator_8h.html

@@ -1,208 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_exhaustive_variator.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#define-members">Macros</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_exhaustive_variator.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &quot;<a class="el" href="_s_d_l__visualtest__harness__argparser_8h_source.html">SDL_visualtest_harness_argparser.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__variator__common_8h_source.html">SDL_visualtest_variator_common.h</a>&quot;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__exhaustive__variator_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ab64de6cf7d6a1e6d09d470c020940c25"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__exhaustive__variator_8h.html#ab64de6cf7d6a1e6d09d470c020940c25">SDLVisualTest_ExhaustiveVariator</a></td></tr>
-<tr class="separator:ab64de6cf7d6a1e6d09d470c020940c25"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a9e213e530ddf5a18014786d10e9fdaee"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__exhaustive__variator_8h.html#a9e213e530ddf5a18014786d10e9fdaee">SDLVisualTest_InitExhaustiveVariator</a> (<a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> *variator, <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config)</td></tr>
-<tr class="separator:a9e213e530ddf5a18014786d10e9fdaee"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa9e13a92945ef48308215b3fa068ed29"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__exhaustive__variator_8h.html#aa9e13a92945ef48308215b3fa068ed29">SDLVisualTest_GetNextExhaustiveVariation</a> (<a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> *variator)</td></tr>
-<tr class="separator:aa9e13a92945ef48308215b3fa068ed29"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7168b055fb86bbbb700d87ae842f7152"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__exhaustive__variator_8h.html#a7168b055fb86bbbb700d87ae842f7152">SDLVisualTest_FreeExhaustiveVariator</a> (<a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> *variator)</td></tr>
-<tr class="separator:a7168b055fb86bbbb700d87ae842f7152"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header for the exhaustive variator. </p>
-</div><h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="ab64de6cf7d6a1e6d09d470c020940c25"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a>  <a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct for the variator that exhaustively iterates through all variations of command line arguments to the SUT. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a7168b055fb86bbbb700d87ae842f7152"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_FreeExhaustiveVariator </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Frees any resources associated with the variator. </p>
-
-</div>
-</div>
-<a class="anchor" id="aa9e13a92945ef48308215b3fa068ed29"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">char* SDLVisualTest_GetNextExhaustiveVariation </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Gets the arguments string for the next variation using the variator and updates the variator's current variation object to the next variation.</p>
-<dl class="section return"><dt>Returns</dt><dd>The arguments string representing the next variation on success, and NULL 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. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a9e213e530ddf5a18014786d10e9fdaee"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_InitExhaustiveVariator </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Initializes the variator.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 130
visualtest/docs/html/_s_d_l__visualtest__exhaustive__variator_8h_source.html

@@ -1,130 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_exhaustive_variator.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_exhaustive_variator.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__exhaustive__variator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html">SDL_visualtest_harness_argparser.h</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__variator__common_8h.html">SDL_visualtest_variator_common.h</a>&quot;</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_exhaustive_variator_h</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_exhaustive_variator_h</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html">   23</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;{</div>
-<div class="line"><a name="l00026"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html#a11c2995cf19b41c4a1b1f8d9b4081ff7">   26</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a> <a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html#a11c2995cf19b41c4a1b1f8d9b4081ff7">variation</a>;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html#ab66b4220589b2e2b6e1fde7d6c20bd72">   28</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> <a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html#ab66b4220589b2e2b6e1fde7d6c20bd72">config</a>;</div>
-<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html#a2b599af5b00be0f525ffc18feb0775a8">   30</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html#a2b599af5b00be0f525ffc18feb0775a8">buffer</a>[<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#a8485cbda108eca56406d67aaa685fcc5">MAX_SUT_ARGS_LEN</a>];</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;} <a class="code" href="_s_d_l__visualtest__exhaustive__variator_8h.html#ab64de6cf7d6a1e6d09d470c020940c25">SDLVisualTest_ExhaustiveVariator</a>;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__exhaustive__variator_8h.html#a9e213e530ddf5a18014786d10e9fdaee">SDLVisualTest_InitExhaustiveVariator</a>(<a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a>* variator,</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                                         <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="keywordtype">char</span>* <a class="code" href="_s_d_l__visualtest__exhaustive__variator_8h.html#aa9e13a92945ef48308215b3fa068ed29">SDLVisualTest_GetNextExhaustiveVariation</a>(<a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a>* variator);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__exhaustive__variator_8h.html#a7168b055fb86bbbb700d87ae842f7152">SDLVisualTest_FreeExhaustiveVariator</a>(<a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a>* variator);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_exhaustive_variator_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 231
visualtest/docs/html/_s_d_l__visualtest__harness__argparser_8h.html

@@ -1,231 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_harness_argparser.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#define-members">Macros</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_harness_argparser.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &lt;SDL.h&gt;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__sut__configparser_8h_source.html">SDL_visualtest_sut_configparser.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__variator__common_8h_source.html">SDL_visualtest_variator_common.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__action__configparser_8h_source.html">SDL_visualtest_action_configparser.h</a>&quot;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__harness__argparser_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:abdd33f362ae3bbdacb5de76473aa8a2f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__harness__argparser_8h.html#abdd33f362ae3bbdacb5de76473aa8a2f">MAX_PATH_LEN</a>&#160;&#160;&#160;300</td></tr>
-<tr class="separator:abdd33f362ae3bbdacb5de76473aa8a2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8485cbda108eca56406d67aaa685fcc5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__harness__argparser_8h.html#a8485cbda108eca56406d67aaa685fcc5">MAX_SUT_ARGS_LEN</a>&#160;&#160;&#160;600</td></tr>
-<tr class="separator:a8485cbda108eca56406d67aaa685fcc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ab89725ad0ec988d4923faa6a85972455"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__harness__argparser_8h.html#ab89725ad0ec988d4923faa6a85972455">SDLVisualTest_HarnessState</a></td></tr>
-<tr class="separator:ab89725ad0ec988d4923faa6a85972455"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a629609acc04ef21a21fdfbbf6c1589c8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__harness__argparser_8h.html#a629609acc04ef21a21fdfbbf6c1589c8">SDLVisualTest_ParseHarnessArgs</a> (char **argv, <a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a> *state)</td></tr>
-<tr class="separator:a629609acc04ef21a21fdfbbf6c1589c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a833147d8da541982c615645a797627cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__harness__argparser_8h.html#a833147d8da541982c615645a797627cc">SDLVisualTest_FreeHarnessState</a> (<a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a> *state)</td></tr>
-<tr class="separator:a833147d8da541982c615645a797627cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Provides functionality to parse command line arguments to the test harness. </p>
-</div><h2 class="groupheader">Macro Definition Documentation</h2>
-<a class="anchor" id="abdd33f362ae3bbdacb5de76473aa8a2f"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_PATH_LEN&#160;&#160;&#160;300</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Maximum length of a path string </p>
-
-</div>
-</div>
-<a class="anchor" id="a8485cbda108eca56406d67aaa685fcc5"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_SUT_ARGS_LEN&#160;&#160;&#160;600</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Maximum length of a string of SUT arguments </p>
-
-</div>
-</div>
-<h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="ab89725ad0ec988d4923faa6a85972455"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a>  <a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Stores the state of the test harness. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a833147d8da541982c615645a797627cc"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_FreeHarnessState </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a> *&#160;</td>
-          <td class="paramname"><em>state</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Frees any resources associated with the state object pointed to by <code>state</code>. </p>
-
-</div>
-</div>
-<a class="anchor" id="a629609acc04ef21a21fdfbbf6c1589c8"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_ParseHarnessArgs </td>
-          <td>(</td>
-          <td class="paramtype">char **&#160;</td>
-          <td class="paramname"><em>argv</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a> *&#160;</td>
-          <td class="paramname"><em>state</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Parse command line paramters to the test harness and populate a state object.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">argv</td><td>The array of command line parameters. </td></tr>
-    <tr><td class="paramname">state</td><td>Pointer to the state object to be populated.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>Non-zero on success, zero on failure. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 140
visualtest/docs/html/_s_d_l__visualtest__harness__argparser_8h_source.html

@@ -1,140 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_harness_argparser.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_harness_argparser.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__harness__argparser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#include &lt;SDL.h&gt;</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html">SDL_visualtest_sut_configparser.h</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__variator__common_8h.html">SDL_visualtest_variator_common.h</a>&quot;</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__action__configparser_8h.html">SDL_visualtest_action_configparser.h</a>&quot;</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_harness_argparser_h</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_harness_argparser_h</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#abdd33f362ae3bbdacb5de76473aa8a2f">   16</a></span>&#160;<span class="preprocessor">#define MAX_PATH_LEN 300</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#a8485cbda108eca56406d67aaa685fcc5">   18</a></span>&#160;<span class="preprocessor">#define MAX_SUT_ARGS_LEN 600</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html">   28</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;{</div>
-<div class="line"><a name="l00031"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#af277bbb5c712eb89e92337dd583a8b74">   31</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#af277bbb5c712eb89e92337dd583a8b74">sutapp</a>[<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#abdd33f362ae3bbdacb5de76473aa8a2f">MAX_PATH_LEN</a>];</div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#a00fab9c7cf802b96b6b29e098292d24d">   33</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#a00fab9c7cf802b96b6b29e098292d24d">sutargs</a>[<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#a8485cbda108eca56406d67aaa685fcc5">MAX_SUT_ARGS_LEN</a>];</div>
-<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#a493b57f443cc38b3d3df9c1e584d9d82">   35</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#a493b57f443cc38b3d3df9c1e584d9d82">timeout</a>;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#a42657080015a96da836e1640bbdf870e">   37</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#a42657080015a96da836e1640bbdf870e">sut_config</a>;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#aaaa989ae89caee6d39c722cfe6907466">   39</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#aaaa989ae89caee6d39c722cfe6907466">variator_type</a>;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#a0bd4e04c0c6be7b94e68501bb31dd62c">   41</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#a0bd4e04c0c6be7b94e68501bb31dd62c">num_variations</a>;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#a091c0d08290b73216a736ff42ac8fa99">   44</a></span>&#160;    SDL_bool <a class="code" href="struct_s_d_l_visual_test___harness_state.html#a091c0d08290b73216a736ff42ac8fa99">no_launch</a>;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#ae25567527563fbd7373fa1cf7cdede61">   46</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#ae25567527563fbd7373fa1cf7cdede61">action_queue</a>;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#aafa9a2fb15490380b6c2edd704f4fcf0">   48</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#aafa9a2fb15490380b6c2edd704f4fcf0">output_dir</a>[<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#abdd33f362ae3bbdacb5de76473aa8a2f">MAX_PATH_LEN</a>];</div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___harness_state.html#adc871112f24f61e2fff74a7a7fb9794f">   50</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___harness_state.html#adc871112f24f61e2fff74a7a7fb9794f">verify_dir</a>[<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#abdd33f362ae3bbdacb5de76473aa8a2f">MAX_PATH_LEN</a>];</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;} <a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#ab89725ad0ec988d4923faa6a85972455">SDLVisualTest_HarnessState</a>;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#a629609acc04ef21a21fdfbbf6c1589c8">SDLVisualTest_ParseHarnessArgs</a>(<span class="keywordtype">char</span>** argv, <a class="code" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a>* state);</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#a833147d8da541982c615645a797627cc">SDLVisualTest_FreeHarnessState</a>(<a class="code" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a>* state);</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_harness_argparser_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 115
visualtest/docs/html/_s_d_l__visualtest__mischelper_8h_source.html

@@ -1,115 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_mischelper.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_mischelper.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_mischelper_h</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_mischelper_h</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="keywordtype">void</span> <a class="code" href="mischelper_8c.html#a0dae46cdb4e58bdda78676260eaaf980">SDLVisualTest_HashString</a>(<span class="keywordtype">char</span>* str, <span class="keywordtype">char</span> hash[33]);</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_mischelper_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 172
visualtest/docs/html/_s_d_l__visualtest__parsehelper_8h.html

@@ -1,172 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_parsehelper.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_parsehelper.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a href="_s_d_l__visualtest__parsehelper_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a5f168fdd02f9d40ddbad97bd8c0b6361"><td class="memItemLeft" align="right" valign="top">char **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__parsehelper_8h.html#a5f168fdd02f9d40ddbad97bd8c0b6361">SDLVisualTest_ParseArgsToArgv</a> (char *args)</td></tr>
-<tr class="separator:a5f168fdd02f9d40ddbad97bd8c0b6361"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a508e690ed938e09fc3b724d2faf06899"><td class="memItemLeft" align="right" valign="top">char **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__parsehelper_8h.html#a508e690ed938e09fc3b724d2faf06899">SDLVisualTest_Tokenize</a> (char *str, int max_token_len)</td></tr>
-<tr class="separator:a508e690ed938e09fc3b724d2faf06899"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header with some helper functions for parsing strings. </p>
-</div><h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a5f168fdd02f9d40ddbad97bd8c0b6361"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">char** SDLVisualTest_ParseArgsToArgv </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>args</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Takes an string of command line arguments and breaks them up into an array based on whitespace.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">args</td><td>The string of arguments.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>NULL on failure, an array of strings on success. The last element of the array is NULL. The first element of the array is NULL and should be set to the path of the executable by the caller. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a508e690ed938e09fc3b724d2faf06899"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">char** SDLVisualTest_Tokenize </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>str</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">int&#160;</td>
-          <td class="paramname"><em>max_token_len</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Takes a string and breaks it into tokens by splitting on whitespace.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">str</td><td>The string to be split. </td></tr>
-    <tr><td class="paramname">max_token_len</td><td>Length of each element in the array to be returned.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>NULL on failure; an array of strings with the tokens on success. The last element of the array is NULL. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 117
visualtest/docs/html/_s_d_l__visualtest__parsehelper_8h_source.html

@@ -1,117 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_parsehelper.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_parsehelper.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__parsehelper_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_parsehelper_h</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_parsehelper_h</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keywordtype">char</span>** <a class="code" href="_s_d_l__visualtest__parsehelper_8h.html#a5f168fdd02f9d40ddbad97bd8c0b6361">SDLVisualTest_ParseArgsToArgv</a>(<span class="keywordtype">char</span>* args);</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="keywordtype">char</span>** <a class="code" href="_s_d_l__visualtest__parsehelper_8h.html#a508e690ed938e09fc3b724d2faf06899">SDLVisualTest_Tokenize</a>(<span class="keywordtype">char</span>* str, <span class="keywordtype">int</span> max_token_len);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_parsehelper_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 328
visualtest/docs/html/_s_d_l__visualtest__process_8h.html

@@ -1,328 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_process.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_process.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &lt;SDL_platform.h&gt;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__process_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:a94bc9e0b0b563a527ea50ef2eecd5402"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#a94bc9e0b0b563a527ea50ef2eecd5402">SDL_ProcessInfo</a></td></tr>
-<tr class="separator:a94bc9e0b0b563a527ea50ef2eecd5402"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5b7d5262f85e78bf4d53d88f3c509342"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#a5b7d5262f85e78bf4d53d88f3c509342">SDL_ProcessExitStatus</a></td></tr>
-<tr class="separator:a5b7d5262f85e78bf4d53d88f3c509342"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a12c16e5b870e2794d6bd5a1a3bb4582f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#a12c16e5b870e2794d6bd5a1a3bb4582f">SDL_LaunchProcess</a> (char *file, char *args, <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *pinfo)</td></tr>
-<tr class="separator:a12c16e5b870e2794d6bd5a1a3bb4582f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3a131140a71bf68fa68a900f06872239"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#a3a131140a71bf68fa68a900f06872239">SDL_IsProcessRunning</a> (<a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *pinfo)</td></tr>
-<tr class="separator:a3a131140a71bf68fa68a900f06872239"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae66242e44a004831ab231693fd11c8d0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#ae66242e44a004831ab231693fd11c8d0">SDL_KillProcess</a> (<a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *pinfo, <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> *ps)</td></tr>
-<tr class="separator:ae66242e44a004831ab231693fd11c8d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad8a5b6725ad1f0e1bac623cf4b6fc28d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#ad8a5b6725ad1f0e1bac623cf4b6fc28d">SDL_QuitProcess</a> (<a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *pinfo, <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> *ps)</td></tr>
-<tr class="separator:ad8a5b6725ad1f0e1bac623cf4b6fc28d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a54545d6b9f737a14030b4ce55ddd4a62"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html#a54545d6b9f737a14030b4ce55ddd4a62">SDL_GetProcessExitStatus</a> (<a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *pinfo, <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> *ps)</td></tr>
-<tr class="separator:a54545d6b9f737a14030b4ce55ddd4a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Provides cross-platfrom process launching and termination functionality. </p>
-</div><h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="a5b7d5262f85e78bf4d53d88f3c509342"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a>  <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>This structure stores the exit status (value returned by <a class="el" href="testharness_8c.html#a0ddf1224851353fc92bfbff6f499fa97">main()</a>) and whether the process exited sucessfully or not. </p>
-
-</div>
-</div>
-<a class="anchor" id="a94bc9e0b0b563a527ea50ef2eecd5402"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>  <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct to store a platform specific handle to a process. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a54545d6b9f737a14030b4ce55ddd4a62"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDL_GetProcessExitStatus </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *&#160;</td>
-          <td class="paramname"><em>pinfo</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> *&#160;</td>
-          <td class="paramname"><em>ps</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Gets the exit status of a process. If the exit status is -1, the process is still running.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">pinfo</td><td>Pointer to a <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> object of the process to be checked. </td></tr>
-    <tr><td class="paramname">ps</td><td>Pointer to a <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> object which will be populated with the exit status.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a3a131140a71bf68fa68a900f06872239"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDL_IsProcessRunning </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *&#160;</td>
-          <td class="paramname"><em>pinfo</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Checks if a process is running or not.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">pinfo</td><td>Pointer to <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> object of the process that needs to be checked.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>1 if the process is still running; zero if it is not and -1 if the status could not be retrieved. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ae66242e44a004831ab231693fd11c8d0"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDL_KillProcess </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *&#160;</td>
-          <td class="paramname"><em>pinfo</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> *&#160;</td>
-          <td class="paramname"><em>ps</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Kills a currently running process.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">pinfo</td><td>Pointer to a <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> object of the process to be terminated. </td></tr>
-    <tr><td class="paramname">ps</td><td>Pointer to a <a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> object which will be populated with the exit status.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a12c16e5b870e2794d6bd5a1a3bb4582f"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDL_LaunchProcess </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>file</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>args</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *&#160;</td>
-          <td class="paramname"><em>pinfo</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Launches a process with the given commandline arguments.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">file</td><td>The path to the executable to be launched. </td></tr>
-    <tr><td class="paramname">args</td><td>The command line arguments to be passed to the process. </td></tr>
-    <tr><td class="paramname">pinfo</td><td>Pointer to an <a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> object to be populated with platform specific information about the launched process.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>Non-zero on success, zero on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ad8a5b6725ad1f0e1bac623cf4b6fc28d"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDL_QuitProcess </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *&#160;</td>
-          <td class="paramname"><em>pinfo</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a> *&#160;</td>
-          <td class="paramname"><em>ps</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Cleanly exits the process represented by <code>pinfo</code> and stores the exit status in the exit status object pointed to by <code>ps</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 152
visualtest/docs/html/_s_d_l__visualtest__process_8h_source.html

@@ -1,152 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_process.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_process.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__process_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;SDL_platform.h&gt;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#if defined(__WIN32__)</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;Windows.h&gt;</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;Shlwapi.h&gt;</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#elif defined(__LINUX__)</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;unistd.h&gt;</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error &quot;Unsupported platform.&quot;</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_process_h</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_process_h</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="struct_s_d_l___process_info.html">   30</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;{</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment">//#if defined(_WIN32) || defined(__WIN32__)</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#if defined(__WIN32__)</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor"></span>    PROCESS_INFORMATION pi;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment">//#elif defined(__linux__)</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#elif defined(__LINUX__)</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor"></span>    <span class="keywordtype">int</span> pid;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor"></span>} <a class="code" href="_s_d_l__visualtest__process_8h.html#a94bc9e0b0b563a527ea50ef2eecd5402">SDL_ProcessInfo</a>;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"><a class="code" href="struct_s_d_l___process_exit_status.html">   45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;{</div>
-<div class="line"><a name="l00047"></a><span class="lineno"><a class="code" href="struct_s_d_l___process_exit_status.html#a51df50c07437f2e816d6ce7ce99e1cac">   47</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l___process_exit_status.html#a51df50c07437f2e816d6ce7ce99e1cac">exit_success</a>;   </div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="struct_s_d_l___process_exit_status.html#a9324a9ff7dc6697dd77f02998d5e77d7">   48</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l___process_exit_status.html#a9324a9ff7dc6697dd77f02998d5e77d7">exit_status</a>;    </div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;} <a class="code" href="_s_d_l__visualtest__process_8h.html#a5b7d5262f85e78bf4d53d88f3c509342">SDL_ProcessExitStatus</a>;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__process_8h.html#a12c16e5b870e2794d6bd5a1a3bb4582f">SDL_LaunchProcess</a>(<span class="keywordtype">char</span>* file, <span class="keywordtype">char</span>* args, <a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>* pinfo);</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__process_8h.html#a3a131140a71bf68fa68a900f06872239">SDL_IsProcessRunning</a>(<a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>* pinfo);</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__process_8h.html#ae66242e44a004831ab231693fd11c8d0">SDL_KillProcess</a>(<a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>* pinfo, <a class="code" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a>* ps);</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__process_8h.html#ad8a5b6725ad1f0e1bac623cf4b6fc28d">SDL_QuitProcess</a>(<a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>* pinfo, <a class="code" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a>* ps);</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__process_8h.html#a54545d6b9f737a14030b4ce55ddd4a62">SDL_GetProcessExitStatus</a>(<a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>* pinfo, <a class="code" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a>* ps);</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_process_h */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 213
visualtest/docs/html/_s_d_l__visualtest__random__variator_8h.html

@@ -1,213 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_random_variator.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_random_variator.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &quot;<a class="el" href="_s_d_l__visualtest__harness__argparser_8h_source.html">SDL_visualtest_harness_argparser.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__variator__common_8h_source.html">SDL_visualtest_variator_common.h</a>&quot;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__random__variator_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ab0df6ee6ec21b5070bfd8e90a7d79974"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__random__variator_8h.html#ab0df6ee6ec21b5070bfd8e90a7d79974">SDLVisualTest_RandomVariator</a></td></tr>
-<tr class="separator:ab0df6ee6ec21b5070bfd8e90a7d79974"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a807486069b7180c3b3bf8af4616d055f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__random__variator_8h.html#a807486069b7180c3b3bf8af4616d055f">SDLVisualTest_InitRandomVariator</a> (<a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> *variator, <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config, Uint64 seed)</td></tr>
-<tr class="separator:a807486069b7180c3b3bf8af4616d055f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a479aceb74b5355c1d22856fc7efce890"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__random__variator_8h.html#a479aceb74b5355c1d22856fc7efce890">SDLVisualTest_GetNextRandomVariation</a> (<a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> *variator)</td></tr>
-<tr class="separator:a479aceb74b5355c1d22856fc7efce890"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac95d9e0716e4c918c6902b10f9591d4b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__random__variator_8h.html#ac95d9e0716e4c918c6902b10f9591d4b">SDLVisualTest_FreeRandomVariator</a> (<a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> *variator)</td></tr>
-<tr class="separator:ac95d9e0716e4c918c6902b10f9591d4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header for the random variator. </p>
-</div><h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="ab0df6ee6ec21b5070bfd8e90a7d79974"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a>  <a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct for the variator that randomly generates variations of command line arguments to the SUT. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="ac95d9e0716e4c918c6902b10f9591d4b"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_FreeRandomVariator </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Frees any resources associated with the variator. </p>
-
-</div>
-</div>
-<a class="anchor" id="a479aceb74b5355c1d22856fc7efce890"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">char* SDLVisualTest_GetNextRandomVariation </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Generates a new random variation.</p>
-<dl class="section return"><dt>Returns</dt><dd>The arguments string representing the random variation on success, and NULL on failure. The pointer returned should not be freed. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a807486069b7180c3b3bf8af4616d055f"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_InitRandomVariator </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">Uint64&#160;</td>
-          <td class="paramname"><em>seed</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Initializes the variator.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 130
visualtest/docs/html/_s_d_l__visualtest__random__variator_8h_source.html

@@ -1,130 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_random_variator.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_random_variator.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__random__variator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html">SDL_visualtest_harness_argparser.h</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__variator__common_8h.html">SDL_visualtest_variator_common.h</a>&quot;</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_random_variator_h</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_random_variator_h</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___random_variator.html">   23</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;{</div>
-<div class="line"><a name="l00026"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___random_variator.html#a11c2995cf19b41c4a1b1f8d9b4081ff7">   26</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a> <a class="code" href="struct_s_d_l_visual_test___random_variator.html#a11c2995cf19b41c4a1b1f8d9b4081ff7">variation</a>;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___random_variator.html#ab66b4220589b2e2b6e1fde7d6c20bd72">   28</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> <a class="code" href="struct_s_d_l_visual_test___random_variator.html#ab66b4220589b2e2b6e1fde7d6c20bd72">config</a>;</div>
-<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___random_variator.html#a2b599af5b00be0f525ffc18feb0775a8">   30</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___random_variator.html#a2b599af5b00be0f525ffc18feb0775a8">buffer</a>[<a class="code" href="_s_d_l__visualtest__harness__argparser_8h.html#a8485cbda108eca56406d67aaa685fcc5">MAX_SUT_ARGS_LEN</a>];</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;} <a class="code" href="_s_d_l__visualtest__random__variator_8h.html#ab0df6ee6ec21b5070bfd8e90a7d79974">SDLVisualTest_RandomVariator</a>;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__random__variator_8h.html#a807486069b7180c3b3bf8af4616d055f">SDLVisualTest_InitRandomVariator</a>(<a class="code" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a>* variator,</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;                                     <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config, Uint64 seed);</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keywordtype">char</span>* <a class="code" href="_s_d_l__visualtest__random__variator_8h.html#a479aceb74b5355c1d22856fc7efce890">SDLVisualTest_GetNextRandomVariation</a>(<a class="code" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a>* variator);</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__random__variator_8h.html#ac95d9e0716e4c918c6902b10f9591d4b">SDLVisualTest_FreeRandomVariator</a>(<a class="code" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a>* variator);</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_random_variator_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 137
visualtest/docs/html/_s_d_l__visualtest__rwhelper_8h_source.html

@@ -1,137 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_rwhelper.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_rwhelper.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;SDL_rwops.h&gt;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_rwhelper_h</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_rwhelper_h</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define RWOPS_BUFFER_LEN 256</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">   25</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;{</div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html#a5b528063c1aaa0e626f5d5e49de5baad">   28</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html#a5b528063c1aaa0e626f5d5e49de5baad">buffer</a>[RWOPS_BUFFER_LEN];</div>
-<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html#a8a37d41b7b076eced766d7418450477d">   30</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html#a8a37d41b7b076eced766d7418450477d">buffer_pos</a>;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html#adb2920cd89b7b8b8b014290e82746d8c">   32</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html#adb2920cd89b7b8b8b014290e82746d8c">buffer_width</a>;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;} <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a>;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rwhelper_8c.html#aa7878508e6d851b11dc1d1186324064a">SDLVisualTest_RWHelperResetBuffer</a>(<a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a>* buffer);</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="keywordtype">char</span> <a class="code" href="rwhelper_8c.html#a92794c04d5568bde0da9f3020d88f44c">SDLVisualTest_RWHelperReadChar</a>(SDL_RWops* rw,</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                                    <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a>* buffer);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="keywordtype">char</span>* <a class="code" href="rwhelper_8c.html#af97cfdf8d58f716efa8fd9204666df12">SDLVisualTest_RWHelperReadLine</a>(SDL_RWops* rw, <span class="keywordtype">char</span>* str, <span class="keywordtype">int</span> size,</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;                                     <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a>* buffer,</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;                                     <span class="keywordtype">char</span> comment_char);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="keywordtype">int</span> <a class="code" href="rwhelper_8c.html#ac7f94417fa973af01a27452acd0043e8">SDLVisualTest_RWHelperCountNonEmptyLines</a>(SDL_RWops* rw,</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                                             <a class="code" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a>* buffer,</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                                             <span class="keywordtype">char</span> comment_char);</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_rwhelper_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 197
visualtest/docs/html/_s_d_l__visualtest__screenshot_8h.html

@@ -1,197 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_screenshot.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#define-members">Macros</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_screenshot.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &quot;<a class="el" href="_s_d_l__visualtest__process_8h_source.html">SDL_visualtest_process.h</a>&quot;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__screenshot_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:aefe6b7dbca1fbfb7aef081545c3ca66d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__screenshot_8h.html#aefe6b7dbca1fbfb7aef081545c3ca66d">SDLVisualTest_ScreenshotProcess</a> (<a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *pinfo, char *prefix)</td></tr>
-<tr class="separator:aefe6b7dbca1fbfb7aef081545c3ca66d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a812c545e97db11a756145d43b3a8e5ee"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__screenshot_8h.html#a812c545e97db11a756145d43b3a8e5ee">SDLVisualTest_ScreenshotDesktop</a> (char *filename)</td></tr>
-<tr class="separator:a812c545e97db11a756145d43b3a8e5ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac7b5335651144961676abc2116c38299"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__screenshot_8h.html#ac7b5335651144961676abc2116c38299">SDLVisualTest_VerifyScreenshots</a> (char *args, char *test_dir, char *verify_dir)</td></tr>
-<tr class="separator:ac7b5335651144961676abc2116c38299"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header for the screenshot API. </p>
-</div><h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a812c545e97db11a756145d43b3a8e5ee"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_ScreenshotDesktop </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>filename</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Takes a screenshot of the desktop and saves it into the file with path <code>filename</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="aefe6b7dbca1fbfb7aef081545c3ca66d"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_ScreenshotProcess </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a> *&#160;</td>
-          <td class="paramname"><em>pinfo</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>prefix</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Takes a screenshot of each window owned by the process <code>pinfo</code> and saves it in a file <code>prefix-i.png</code> where <code>prefix</code> is the full path to the file along with a prefix given to each screenshot.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ac7b5335651144961676abc2116c38299"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_VerifyScreenshots </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>args</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>test_dir</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>verify_dir</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Compare a screenshot taken previously with SUT arguments <code>args</code> that is located in <code>test_dir</code> with a verification image that is located in <code>verify_dir</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>-1 on failure, 0 if the images were not equal, 1 if the images are equal and 2 if the verification image is not present. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 121
visualtest/docs/html/_s_d_l__visualtest__screenshot_8h_source.html

@@ -1,121 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_screenshot.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_screenshot.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__screenshot_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__process_8h.html">SDL_visualtest_process.h</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_screenshot_h</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_screenshot_h</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__screenshot_8h.html#aefe6b7dbca1fbfb7aef081545c3ca66d">SDLVisualTest_ScreenshotProcess</a>(<a class="code" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>* pinfo, <span class="keywordtype">char</span>* prefix);</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__screenshot_8h.html#a812c545e97db11a756145d43b3a8e5ee">SDLVisualTest_ScreenshotDesktop</a>(<span class="keywordtype">char</span>* filename);</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__screenshot_8h.html#ac7b5335651144961676abc2116c38299">SDLVisualTest_VerifyScreenshots</a>(<span class="keywordtype">char</span>* args, <span class="keywordtype">char</span>* test_dir, <span class="keywordtype">char</span>* verify_dir);</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_screenshot_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 317
visualtest/docs/html/_s_d_l__visualtest__sut__configparser_8h.html

@@ -1,317 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_sut_configparser.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#define-members">Macros</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#enum-members">Enumerations</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_sut_configparser.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-
-<p><a href="_s_d_l__visualtest__sut__configparser_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:a0a8b0c1f8eee787abf09bf3a840eccc7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a0a8b0c1f8eee787abf09bf3a840eccc7">MAX_SUTOPTION_NAME_LEN</a>&#160;&#160;&#160;100</td></tr>
-<tr class="separator:a0a8b0c1f8eee787abf09bf3a840eccc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a21a678ced8cdf55b4cc70ad398bf33b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a21a678ced8cdf55b4cc70ad398bf33b6">MAX_SUTOPTION_CATEGORY_LEN</a>&#160;&#160;&#160;40</td></tr>
-<tr class="separator:a21a678ced8cdf55b4cc70ad398bf33b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6c700fc8ff02cfa0c795b9593f86b9a0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a6c700fc8ff02cfa0c795b9593f86b9a0">MAX_SUTOPTION_ENUMVAL_LEN</a>&#160;&#160;&#160;40</td></tr>
-<tr class="separator:a6c700fc8ff02cfa0c795b9593f86b9a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8f1a5749af5a592b30a194c72d848f75"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a8f1a5749af5a592b30a194c72d848f75">MAX_SUTOPTION_LINE_LENGTH</a>&#160;&#160;&#160;256</td></tr>
-<tr class="separator:a8f1a5749af5a592b30a194c72d848f75"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:a8cbe93330b2ce59cdf6da59e2eca6045"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a8cbe93330b2ce59cdf6da59e2eca6045">SDLVisualTest_SUTIntRange</a></td></tr>
-<tr class="separator:a8cbe93330b2ce59cdf6da59e2eca6045"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9f35b5fe1ce4ba831a9b9e1f2bc8b7f6"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a9f35b5fe1ce4ba831a9b9e1f2bc8b7f6">SDLVisualTest_SUTOption</a></td></tr>
-<tr class="separator:a9f35b5fe1ce4ba831a9b9e1f2bc8b7f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1b493a40d601932b62ee643390aec169"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a1b493a40d601932b62ee643390aec169">SDLVisualTest_SUTConfig</a></td></tr>
-<tr class="separator:a1b493a40d601932b62ee643390aec169"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:af9893831d9f79360f57e84a67a90293c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#af9893831d9f79360f57e84a67a90293c">SDLVisualTest_SUTOptionType</a> { <b>SDL_SUT_OPTIONTYPE_STRING</b> = 0, 
-<b>SDL_SUT_OPTIONTYPE_INT</b>, 
-<b>SDL_SUT_OPTIONTYPE_ENUM</b>, 
-<b>SDL_SUT_OPTIONTYPE_BOOL</b>
- }</td></tr>
-<tr class="separator:af9893831d9f79360f57e84a67a90293c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a8e178cd8a1f279f5d2cf908545e97544"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a8e178cd8a1f279f5d2cf908545e97544">SDLVisualTest_ParseSUTConfig</a> (char *file, <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config)</td></tr>
-<tr class="separator:a8e178cd8a1f279f5d2cf908545e97544"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a1bddf9732c0d3ed1c24455d22193de9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#a1bddf9732c0d3ed1c24455d22193de9a">SDLVisualTest_FreeSUTConfig</a> (<a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config)</td></tr>
-<tr class="separator:a1bddf9732c0d3ed1c24455d22193de9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header for the parser for SUT config files. </p>
-</div><h2 class="groupheader">Macro Definition Documentation</h2>
-<a class="anchor" id="a21a678ced8cdf55b4cc70ad398bf33b6"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_SUTOPTION_CATEGORY_LEN&#160;&#160;&#160;40</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Maximum length of the name of a category of an SUT option </p>
-
-</div>
-</div>
-<a class="anchor" id="a6c700fc8ff02cfa0c795b9593f86b9a0"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_SUTOPTION_ENUMVAL_LEN&#160;&#160;&#160;40</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Maximum length of one enum value of an SUT option </p>
-
-</div>
-</div>
-<a class="anchor" id="a8f1a5749af5a592b30a194c72d848f75"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_SUTOPTION_LINE_LENGTH&#160;&#160;&#160;256</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Maximum length of a line in the paramters file </p>
-
-</div>
-</div>
-<a class="anchor" id="a0a8b0c1f8eee787abf09bf3a840eccc7"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define MAX_SUTOPTION_NAME_LEN&#160;&#160;&#160;100</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Maximum length of the name of an SUT option </p>
-
-</div>
-</div>
-<h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="a1b493a40d601932b62ee643390aec169"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>  <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct to hold all the options to an SUT application. </p>
-
-</div>
-</div>
-<a class="anchor" id="a8cbe93330b2ce59cdf6da59e2eca6045"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a>  <a class="el" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Represents the range of values an integer option can take. </p>
-
-</div>
-</div>
-<a class="anchor" id="a9f35b5fe1ce4ba831a9b9e1f2bc8b7f6"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a>  <a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct that defines an option to be passed to the SUT. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Enumeration Type Documentation</h2>
-<a class="anchor" id="af9893831d9f79360f57e84a67a90293c"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html#af9893831d9f79360f57e84a67a90293c">SDLVisualTest_SUTOptionType</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Describes the different kinds of options to the SUT. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a1bddf9732c0d3ed1c24455d22193de9a"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_FreeSUTConfig </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Free any resources associated with the config object pointed to by <code>config</code>. </p>
-
-</div>
-</div>
-<a class="anchor" id="a8e178cd8a1f279f5d2cf908545e97544"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_ParseSUTConfig </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>file</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Parses a configuration file that describes the command line options an SUT application will take and populates a SUT config object. All lines in the config file must be smaller than</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">file</td><td>Path to the configuration file. </td></tr>
-    <tr><td class="paramname">config</td><td>Pointer to an object that represents an SUT configuration.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>zero on failure, non-zero on success </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 154
visualtest/docs/html/_s_d_l__visualtest__sut__configparser_8h_source.html

@@ -1,154 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_sut_configparser.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_sut_configparser.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__sut__configparser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_sut_configparser_h</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_sut_configparser_h</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a0a8b0c1f8eee787abf09bf3a840eccc7">   12</a></span>&#160;<span class="preprocessor">#define MAX_SUTOPTION_NAME_LEN 100</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a21a678ced8cdf55b4cc70ad398bf33b6">   14</a></span>&#160;<span class="preprocessor">#define MAX_SUTOPTION_CATEGORY_LEN 40</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a6c700fc8ff02cfa0c795b9593f86b9a0">   16</a></span>&#160;<span class="preprocessor">#define MAX_SUTOPTION_ENUMVAL_LEN 40</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a8f1a5749af5a592b30a194c72d848f75">   18</a></span>&#160;<span class="preprocessor">#define MAX_SUTOPTION_LINE_LENGTH 256</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#af9893831d9f79360f57e84a67a90293c">   28</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    SDL_SUT_OPTIONTYPE_STRING = 0,</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    SDL_SUT_OPTIONTYPE_INT,</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    SDL_SUT_OPTIONTYPE_ENUM,</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    SDL_SUT_OPTIONTYPE_BOOL</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;} <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#af9893831d9f79360f57e84a67a90293c">SDLVisualTest_SUTOptionType</a>;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html">   38</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a> {</div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html#a3e202b201e6255d975cd6d3aff1f5a4d">   40</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html#a3e202b201e6255d975cd6d3aff1f5a4d">min</a>;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html#ae1e1dde676c120fa6d10f3bb2c14059e">   42</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html#ae1e1dde676c120fa6d10f3bb2c14059e">max</a>;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;} <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a8cbe93330b2ce59cdf6da59e2eca6045">SDLVisualTest_SUTIntRange</a>;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html">   48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a> {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#ad14ca616d8f7c9b61eff58baaead7f1f">   51</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#ad14ca616d8f7c9b61eff58baaead7f1f">name</a>[<a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a0a8b0c1f8eee787abf09bf3a840eccc7">MAX_SUTOPTION_NAME_LEN</a>];</div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a6744d43d3ad17d06068dba9ee7b78c83">   54</a></span>&#160;    <span class="keywordtype">char</span>** <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a6744d43d3ad17d06068dba9ee7b78c83">categories</a>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a857b9e5ccfca26034b47a5f3236d822c">   56</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#af9893831d9f79360f57e84a67a90293c">SDLVisualTest_SUTOptionType</a> <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a857b9e5ccfca26034b47a5f3236d822c">type</a>;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a79305c1b10f7b4defee52e1eefde8fbc">   58</a></span>&#160;    SDL_bool <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a79305c1b10f7b4defee52e1eefde8fbc">required</a>;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="keyword">union </span>{</div>
-<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a2bb1301268866e0e41d035ea0a4914e8">   63</a></span>&#160;        <a class="code" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a> <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a2bb1301268866e0e41d035ea0a4914e8">range</a>;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a596ff3567c4b736561dba1915a2cd38d">   66</a></span>&#160;        <span class="keywordtype">char</span>** <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#a596ff3567c4b736561dba1915a2cd38d">enum_values</a>;</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    } <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html#aa9545bd4acd476f61533d04d53cdffdc">data</a>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;} <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a9f35b5fe1ce4ba831a9b9e1f2bc8b7f6">SDLVisualTest_SUTOption</a>;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">   73</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a></div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;{</div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html#afda1bef370f3d5ea6919b7b6a73d01c0">   76</a></span>&#160;    <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a>* <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html#afda1bef370f3d5ea6919b7b6a73d01c0">options</a>;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html#a593108c2cc4b7dd3edecefd724edfd51">   78</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html#a593108c2cc4b7dd3edecefd724edfd51">num_options</a>;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;} <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a1b493a40d601932b62ee643390aec169">SDLVisualTest_SUTConfig</a>;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a8e178cd8a1f279f5d2cf908545e97544">SDLVisualTest_ParseSUTConfig</a>(<span class="keywordtype">char</span>* file, <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config);</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html#a1bddf9732c0d3ed1c24455d22193de9a">SDLVisualTest_FreeSUTConfig</a>(<a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config);</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_sut_configparser_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 339
visualtest/docs/html/_s_d_l__visualtest__variator__common_8h.html

@@ -1,339 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_variator_common.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#define-members">Macros</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#enum-members">Enumerations</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_variator_common.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &lt;SDL_types.h&gt;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__sut__configparser_8h_source.html">SDL_visualtest_sut_configparser.h</a>&quot;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__variator__common_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:afcdce86a10fbcdc9f3e47c47b70e3ea3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#afcdce86a10fbcdc9f3e47c47b70e3ea3">SDL_SUT_INTEGER_OPTION_TEST_STEPS</a>&#160;&#160;&#160;3</td></tr>
-<tr class="separator:afcdce86a10fbcdc9f3e47c47b70e3ea3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:a4a7752dc89880ce3f62a478b3d0d8d64"><td class="memItemLeft" align="right" valign="top">typedef enum <br class="typebreak"/>
-<a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a4a7752dc89880ce3f62a478b3d0d8d64">SDLVisualTest_VariatorType</a></td></tr>
-<tr class="separator:a4a7752dc89880ce3f62a478b3d0d8d64"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa4e5fb752f4cd087101ea3e1f6124dfb"><td class="memItemLeft" align="right" valign="top">typedef union <br class="typebreak"/>
-<a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#aa4e5fb752f4cd087101ea3e1f6124dfb">SDLVisualTest_SUTOptionValue</a></td></tr>
-<tr class="separator:aa4e5fb752f4cd087101ea3e1f6124dfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6b447c1467862ecd623cc8f37489faeb"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a6b447c1467862ecd623cc8f37489faeb">SDLVisualTest_Variation</a></td></tr>
-<tr class="separator:a6b447c1467862ecd623cc8f37489faeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:a04bfc880abe6940d69a63c06a33acdbd"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a> { <b>SDL_VARIATOR_NONE</b> = 0, 
-<b>SDL_VARIATOR_EXHAUSTIVE</b>, 
-<b>SDL_VARIATOR_RANDOM</b>
- }</td></tr>
-<tr class="separator:a04bfc880abe6940d69a63c06a33acdbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:aafcecc06c8feb24b6f6a509bfa9db681"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#aafcecc06c8feb24b6f6a509bfa9db681">SDLVisualTest_NextValue</a> (<a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a> *var, <a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a> *opt)</td></tr>
-<tr class="separator:aafcecc06c8feb24b6f6a509bfa9db681"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad981c2efab849e76dc878ef8da9d6017"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#ad981c2efab849e76dc878ef8da9d6017">SDLVisualTest_MakeStrFromVariation</a> (<a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a> *variation, <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config, char *buffer, int size)</td></tr>
-<tr class="separator:ad981c2efab849e76dc878ef8da9d6017"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac87934906c51364778dc910ebca47b6c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#ac87934906c51364778dc910ebca47b6c">SDLVisualTest_InitVariation</a> (<a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a> *variation, <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config)</td></tr>
-<tr class="separator:ac87934906c51364778dc910ebca47b6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header for common functionality used by variators. </p>
-</div><h2 class="groupheader">Macro Definition Documentation</h2>
-<a class="anchor" id="afcdce86a10fbcdc9f3e47c47b70e3ea3"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define SDL_SUT_INTEGER_OPTION_TEST_STEPS&#160;&#160;&#160;3</td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>The number of variations one integer option would generate </p>
-
-</div>
-</div>
-<h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="aa4e5fb752f4cd087101ea3e1f6124dfb"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef union <a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a>  <a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>One possible value for a command line option to the SUT. </p>
-
-</div>
-</div>
-<a class="anchor" id="a6b447c1467862ecd623cc8f37489faeb"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a>  <a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Represents a valid combination of parameters that can be passed to the SUT. The ordering of the values here is the same as the ordering of the options in the <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> object for this variation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a4a7752dc89880ce3f62a478b3d0d8d64"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef enum <a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a>  <a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>enum for indicating the type of variator being used </p>
-
-</div>
-</div>
-<h2 class="groupheader">Enumeration Type Documentation</h2>
-<a class="anchor" id="a04bfc880abe6940d69a63c06a33acdbd"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>enum for indicating the type of variator being used </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="ac87934906c51364778dc910ebca47b6c"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_InitVariation </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a> *&#160;</td>
-          <td class="paramname"><em>variation</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Initializes the variation using the following rules:</p>
-<ul>
-<li>Boolean options are initialized to SDL_FALSE.</li>
-<li>Integer options are initialized to the minimum valid value they can hold.</li>
-<li>Enum options are initialized to the first element in the list of values they can take.</li>
-<li>String options are initialized to the name of the option.</li>
-</ul>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ad981c2efab849e76dc878ef8da9d6017"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_MakeStrFromVariation </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a> *&#160;</td>
-          <td class="paramname"><em>variation</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>buffer</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">int&#160;</td>
-          <td class="paramname"><em>size</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Converts a variation object into a string of command line arguments.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">variation</td><td>Variation object to be converted. </td></tr>
-    <tr><td class="paramname">config</td><td>Config object for the SUT. </td></tr>
-    <tr><td class="paramname">buffer</td><td>Pointer to the buffer the arguments string will be copied into. </td></tr>
-    <tr><td class="paramname">size</td><td>Size of the buffer.</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="aafcecc06c8feb24b6f6a509bfa9db681"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_NextValue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a> *&#160;</td>
-          <td class="paramname"><em>var</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a> *&#160;</td>
-          <td class="paramname"><em>opt</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>"Increments" the value of the option by one and returns the carry. We wrap around to the initial value on overflow which makes the carry one. For example: "incrementing" an SDL_FALSE option makes it SDL_TRUE with no carry, and "incrementing" an SDL_TRUE option makes it SDL_FALSE with carry one. For integers, a random value in the valid range for the option is used.</p>
-<dl class="params"><dt>Parameters</dt><dd>
-  <table class="params">
-    <tr><td class="paramname">var</td><td>Value of the option </td></tr>
-    <tr><td class="paramname">opt</td><td>Object with metadata about the option</td></tr>
-  </table>
-  </dd>
-</dl>
-<dl class="section return"><dt>Returns</dt><dd>1 if there is a carry for enum and bool type options, 0 otherwise. 1 is always returned for integer and string type options. -1 is returned on error. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 158
visualtest/docs/html/_s_d_l__visualtest__variator__common_8h_source.html

@@ -1,158 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_variator_common.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_variator_common.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__variator__common_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &lt;SDL_types.h&gt;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__sut__configparser_8h.html">SDL_visualtest_sut_configparser.h</a>&quot;</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_variator_common_h</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_variator_common_h</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__variator__common_8h.html#afcdce86a10fbcdc9f3e47c47b70e3ea3">   15</a></span>&#160;<span class="preprocessor">#define SDL_SUT_INTEGER_OPTION_TEST_STEPS 3</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">   23</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;{</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    SDL_VARIATOR_NONE = 0,</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    SDL_VARIATOR_EXHAUSTIVE,</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    SDL_VARIATOR_RANDOM</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;} <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a>;</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html">   33</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">union </span><a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;{</div>
-<div class="line"><a name="l00036"></a><span class="lineno"><a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html#ace8ec6519c056e35443a6c401f3d0941">   36</a></span>&#160;    SDL_bool <a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html#ace8ec6519c056e35443a6c401f3d0941">bool_value</a>;</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;    <span class="keyword">struct </span>{</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keywordtype">int</span> value;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;        SDL_bool on;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    } <a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html#a4291d9ad3cfb3fe1645ea2732e11d68a">integer</a>;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keyword">struct </span>{</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <span class="keywordtype">int</span> index;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        SDL_bool on;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    } <a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html#ad40e26afd4b8532327b61897d5b009e3">enumerated</a>;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <span class="keyword">struct </span>{</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keywordtype">char</span>* value;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        SDL_bool on;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    } <a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html#a2bf4b969ff9633c937e4d15118d1edc6">string</a>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;} <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#aa4e5fb752f4cd087101ea3e1f6124dfb">SDLVisualTest_SUTOptionValue</a>;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___variation.html">   63</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;{</div>
-<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___variation.html#a1eab2e90f0195b4f4632eb19523aeadf">   66</a></span>&#160;    <a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a>* <a class="code" href="struct_s_d_l_visual_test___variation.html#a1eab2e90f0195b4f4632eb19523aeadf">vars</a>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___variation.html#a2daded0b80f9ab7ed3703cc2686e5a92">   68</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct_s_d_l_visual_test___variation.html#a2daded0b80f9ab7ed3703cc2686e5a92">num_vars</a>;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;} <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a6b447c1467862ecd623cc8f37489faeb">SDLVisualTest_Variation</a>;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#aafcecc06c8feb24b6f6a509bfa9db681">SDLVisualTest_NextValue</a>(<a class="code" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a>* var,</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                            <a class="code" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a>* opt);</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#ad981c2efab849e76dc878ef8da9d6017">SDLVisualTest_MakeStrFromVariation</a>(<a class="code" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a>* variation,</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                                       <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config,</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                                       <span class="keywordtype">char</span>* buffer, <span class="keywordtype">int</span> size);</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#ac87934906c51364778dc910ebca47b6c">SDLVisualTest_InitVariation</a>(<a class="code" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a>* variation,</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                                <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config);</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_variator_common_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 220
visualtest/docs/html/_s_d_l__visualtest__variators_8h.html

@@ -1,220 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_variators.h File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#nested-classes">Data Structures</a> &#124;
-<a href="#define-members">Macros</a> &#124;
-<a href="#typedef-members">Typedefs</a> &#124;
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">SDL_visualtest_variators.h File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &quot;<a class="el" href="_s_d_l__visualtest__exhaustive__variator_8h_source.html">SDL_visualtest_exhaustive_variator.h</a>&quot;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__random__variator_8h_source.html">SDL_visualtest_random_variator.h</a>&quot;</code><br/>
-</div>
-<p><a href="_s_d_l__visualtest__variators_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:a520a2479efbe9c4a9d617735f7314e0a"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
-<a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variators_8h.html#a520a2479efbe9c4a9d617735f7314e0a">SDLVisualTest_Variator</a></td></tr>
-<tr class="separator:a520a2479efbe9c4a9d617735f7314e0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ac1d82ee387a19743e47a82c87d3fb7f4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variators_8h.html#ac1d82ee387a19743e47a82c87d3fb7f4">SDLVisualTest_InitVariator</a> (<a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a> *variator, <a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *config, <a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a> type, Uint64 seed)</td></tr>
-<tr class="separator:ac1d82ee387a19743e47a82c87d3fb7f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aebdd4c3c545b0063d16929fd56f1a79f"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variators_8h.html#aebdd4c3c545b0063d16929fd56f1a79f">SDLVisualTest_GetNextVariation</a> (<a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a> *variator)</td></tr>
-<tr class="separator:aebdd4c3c545b0063d16929fd56f1a79f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a98727ef649135c3312056d7603cb70b5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variators_8h.html#a98727ef649135c3312056d7603cb70b5">SDLVisualTest_FreeVariator</a> (<a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a> *variator)</td></tr>
-<tr class="separator:a98727ef649135c3312056d7603cb70b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Header for all the variators that vary input parameters to a SUT application. </p>
-</div><h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="a520a2479efbe9c4a9d617735f7314e0a"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct <a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a>  <a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Struct that acts like a wrapper around the different types of variators available. </p>
-
-</div>
-</div>
-<h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a98727ef649135c3312056d7603cb70b5"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_FreeVariator </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Frees any resources associated with the variator. </p>
-
-</div>
-</div>
-<a class="anchor" id="aebdd4c3c545b0063d16929fd56f1a79f"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">char* SDLVisualTest_GetNextVariation </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Gets the next variation using the variator.</p>
-<dl class="section return"><dt>Returns</dt><dd>The arguments string representing the variation on success, and NULL on failure. The pointer returned should not be freed. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ac1d82ee387a19743e47a82c87d3fb7f4"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_InitVariator </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a> *&#160;</td>
-          <td class="paramname"><em>variator</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a> *&#160;</td>
-          <td class="paramname"><em>config</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a>&#160;</td>
-          <td class="paramname"><em>type</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">Uint64&#160;</td>
-          <td class="paramname"><em>seed</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Initializes the variator object pointed to by <code>variator</code> of type <code>type</code> with information from the config object pointed to by <code>config</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 135
visualtest/docs/html/_s_d_l__visualtest__variators_8h_source.html

@@ -1,135 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include/SDL_visualtest_variators.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">SDL_visualtest_variators.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<a href="_s_d_l__visualtest__variators_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* See COPYING.txt for the full license governing this code. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__exhaustive__variator_8h.html">SDL_visualtest_exhaustive_variator.h</a>&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_s_d_l__visualtest__random__variator_8h.html">SDL_visualtest_random_variator.h</a>&quot;</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifndef _SDL_visualtest_variators_h</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _SDL_visualtest_variators_h</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">/* Set up for C function definitions, even when using C++ */</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___variator.html">   23</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;{</div>
-<div class="line"><a name="l00026"></a><span class="lineno"><a class="code" href="struct_s_d_l_visual_test___variator.html#a24d4399dc1877c1843e120e7b027ae64">   26</a></span>&#160;    <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a> <a class="code" href="struct_s_d_l_visual_test___variator.html#a24d4399dc1877c1843e120e7b027ae64">type</a>;</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keyword">union</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    {</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        <a class="code" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a> exhaustive;</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        <a class="code" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a> random;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;    } <a class="code" href="struct_s_d_l_visual_test___variator.html#af99a8790e729d599c656a2070e672e9a">data</a>;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;} <a class="code" href="_s_d_l__visualtest__variators_8h.html#a520a2479efbe9c4a9d617735f7314e0a">SDLVisualTest_Variator</a>;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keywordtype">int</span> <a class="code" href="_s_d_l__visualtest__variators_8h.html#ac1d82ee387a19743e47a82c87d3fb7f4">SDLVisualTest_InitVariator</a>(<a class="code" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a>* variator,</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;                               <a class="code" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>* config,</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                               <a class="code" href="_s_d_l__visualtest__variator__common_8h.html#a04bfc880abe6940d69a63c06a33acdbd">SDLVisualTest_VariatorType</a> type,</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                               Uint64 seed);</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keywordtype">char</span>* <a class="code" href="_s_d_l__visualtest__variators_8h.html#aebdd4c3c545b0063d16929fd56f1a79f">SDLVisualTest_GetNextVariation</a>(<a class="code" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a>* variator);</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="_s_d_l__visualtest__variators_8h.html#a98727ef649135c3312056d7603cb70b5">SDLVisualTest_FreeVariator</a>(<a class="code" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a>* variator);</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">/* Ends C function definitions when using C++ */</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _SDL_visualtest_variators_h */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 301
visualtest/docs/html/action__configparser_8c.html

@@ -1,301 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/src/action_configparser.c File Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="summary">
-<a href="#func-members">Functions</a>  </div>
-  <div class="headertitle">
-<div class="title">action_configparser.c File Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include &lt;SDL_stdinc.h&gt;</code><br/>
-<code>#include &lt;SDL_test.h&gt;</code><br/>
-<code>#include &lt;string.h&gt;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__action__configparser_8h_source.html">SDL_visualtest_action_configparser.h</a>&quot;</code><br/>
-<code>#include &quot;SDL_visualtest_rwhelper.h&quot;</code><br/>
-<code>#include &quot;<a class="el" href="_s_d_l__visualtest__parsehelper_8h_source.html">SDL_visualtest_parsehelper.h</a>&quot;</code><br/>
-</div><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a647d1be8f0f27af2fb1e5d4da2100596"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#a647d1be8f0f27af2fb1e5d4da2100596">SDLVisualTest_EnqueueAction</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue, <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> action)</td></tr>
-<tr class="separator:a647d1be8f0f27af2fb1e5d4da2100596"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0e7998533e6e10590612a8d5dee7ec0b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#a0e7998533e6e10590612a8d5dee7ec0b">SDLVisualTest_DequeueAction</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a0e7998533e6e10590612a8d5dee7ec0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae68c1c80f728e125869882139bec2c9e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#ae68c1c80f728e125869882139bec2c9e">SDLVisualTest_InitActionQueue</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:ae68c1c80f728e125869882139bec2c9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afb508801942e7c74084480bcdb6f8613"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#afb508801942e7c74084480bcdb6f8613">SDLVisualTest_GetQueueFront</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:afb508801942e7c74084480bcdb6f8613"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8484ee36f78952192d4193c85fca2f17"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#a8484ee36f78952192d4193c85fca2f17">SDLVisualTest_IsActionQueueEmpty</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a8484ee36f78952192d4193c85fca2f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a677da0d0e4793df342f91974b4559efa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#a677da0d0e4793df342f91974b4559efa">SDLVisualTest_EmptyActionQueue</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a677da0d0e4793df342f91974b4559efa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ace5374ef7509e95383929ff185aaf7e6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#ace5374ef7509e95383929ff185aaf7e6">SDLVisualTest_InsertIntoActionQueue</a> (<a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue, <a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a> action)</td></tr>
-<tr class="separator:ace5374ef7509e95383929ff185aaf7e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a8ef9dce4d464d6994596deeace6ffa2d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html#a8ef9dce4d464d6994596deeace6ffa2d">SDLVisualTest_ParseActionConfig</a> (char *file, <a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *queue)</td></tr>
-<tr class="separator:a8ef9dce4d464d6994596deeace6ffa2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
-<div class="textblock"><p>Source file for the parser for action config files. </p>
-</div><h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="a0e7998533e6e10590612a8d5dee7ec0b"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_DequeueAction </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Remove an action from the front of the action queue pointed to by <code>queue</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a677da0d0e4793df342f91974b4559efa"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_EmptyActionQueue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Dequeues all the elements in the queque pointed to by <code>queue</code>. </p>
-
-</div>
-</div>
-<a class="anchor" id="a647d1be8f0f27af2fb1e5d4da2100596"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_EnqueueAction </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>&#160;</td>
-          <td class="paramname"><em>action</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Add an action pointed to by <code>action</code> to the rear of the action queue pointed to by <code>queue</code>.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="afb508801942e7c74084480bcdb6f8613"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>* SDLVisualTest_GetQueueFront </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Get the action at the front of the action queue pointed to by <code>queue</code>. The returned action pointer may become invalid after subsequent dequeues.</p>
-<dl class="section return"><dt>Returns</dt><dd>pointer to the action on success, NULL on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="ae68c1c80f728e125869882139bec2c9e"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void SDLVisualTest_InitActionQueue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Initialize the action queue pointed to by <code>queue</code>. </p>
-
-</div>
-</div>
-<a class="anchor" id="ace5374ef7509e95383929ff185aaf7e6"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_InsertIntoActionQueue </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>&#160;</td>
-          <td class="paramname"><em>action</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Inserts an action <code>action</code> into the queue pointed to by <code>queue</code> such that the times of actions in the queue increase as we move from the front to the rear.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a8484ee36f78952192d4193c85fca2f17"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_IsActionQueueEmpty </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>)</td><td></td>
-          <td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Check if the queue pointed to by <code>queue</code> is empty or not.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 if the queue is empty, 0 otherwise. </dd></dl>
-
-</div>
-</div>
-<a class="anchor" id="a8ef9dce4d464d6994596deeace6ffa2d"></a>
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">int SDLVisualTest_ParseActionConfig </td>
-          <td>(</td>
-          <td class="paramtype">char *&#160;</td>
-          <td class="paramname"><em>file</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a> *&#160;</td>
-          <td class="paramname"><em>queue</em>&#160;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td>
-        </tr>
-      </table>
-</div><div class="memdoc">
-<p>Parses an action config file with path <code>file</code> and populates an action queue pointed to by <code>queue</code> with actions.</p>
-<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 on failure. </dd></dl>
-
-</div>
-</div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 114
visualtest/docs/html/annotated.html

@@ -1,114 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: Data Structures</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
-      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
-    </ul>
-  </div>
-</div><!-- top -->
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div class="header">
-  <div class="headertitle">
-<div class="title">Data Structures</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
-<table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l___process_exit_status.html" target="_self">SDL_ProcessExitStatus</a></td><td class="desc"></td></tr>
-<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l___process_info.html" target="_self">SDL_ProcessInfo</a></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___action.html" target="_self">SDLVisualTest_Action</a></td><td class="desc"></td></tr>
-<tr id="row_3_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___action_node.html" target="_self">SDLVisualTest_ActionNode</a></td><td class="desc"></td></tr>
-<tr id="row_4_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___action_queue.html" target="_self">SDLVisualTest_ActionQueue</a></td><td class="desc"></td></tr>
-<tr id="row_5_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html" target="_self">SDLVisualTest_ExhaustiveVariator</a></td><td class="desc"></td></tr>
-<tr id="row_6_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___harness_state.html" target="_self">SDLVisualTest_HarnessState</a></td><td class="desc"></td></tr>
-<tr id="row_7_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___random_variator.html" target="_self">SDLVisualTest_RandomVariator</a></td><td class="desc"></td></tr>
-<tr id="row_8_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___r_w_helper_buffer.html" target="_self">SDLVisualTest_RWHelperBuffer</a></td><td class="desc"></td></tr>
-<tr id="row_9_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html" target="_self">SDLVisualTest_SUTConfig</a></td><td class="desc"></td></tr>
-<tr id="row_10_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___s_u_t_int_range.html" target="_self">SDLVisualTest_SUTIntRange</a></td><td class="desc"></td></tr>
-<tr id="row_11_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html" target="_self">SDLVisualTest_SUTOption</a></td><td class="desc"></td></tr>
-<tr id="row_12_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html" target="_self">SDLVisualTest_SUTOptionValue</a></td><td class="desc"></td></tr>
-<tr id="row_13_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___variation.html" target="_self">SDLVisualTest_Variation</a></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_d_l_visual_test___variator.html" target="_self">SDLVisualTest_Variator</a></td><td class="desc"></td></tr>
-</table>
-</div><!-- directory -->
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

BIN
visualtest/docs/html/bc_s.png


BIN
visualtest/docs/html/bdwn.png


+ 0 - 105
visualtest/docs/html/classes.html

@@ -1,105 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: Data Structure Index</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
-      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
-    </ul>
-  </div>
-</div><!-- top -->
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div class="header">
-  <div class="headertitle">
-<div class="title">Data Structure Index</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="qindex"><a class="qindex" href="#letter_S">S</a></div>
-<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
-<tr><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
-</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___action.html">SDLVisualTest_Action</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___harness_state.html">SDLVisualTest_HarnessState</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___s_u_t_int_range.html">SDLVisualTest_SUTIntRange</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___variator.html">SDLVisualTest_Variator</a>&#160;&#160;&#160;</td></tr>
-<tr><td valign="top"><a class="el" href="struct_s_d_l_visual_test___action_node.html">SDLVisualTest_ActionNode</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___random_variator.html">SDLVisualTest_RandomVariator</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___s_u_t_option.html">SDLVisualTest_SUTOption</a>&#160;&#160;&#160;</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="struct_s_d_l___process_exit_status.html">SDL_ProcessExitStatus</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___action_queue.html">SDLVisualTest_ActionQueue</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___r_w_helper_buffer.html">SDLVisualTest_RWHelperBuffer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="union_s_d_l_visual_test___s_u_t_option_value.html">SDLVisualTest_SUTOptionValue</a>&#160;&#160;&#160;</td><td></td></tr>
-<tr><td valign="top"><a class="el" href="struct_s_d_l___process_info.html">SDL_ProcessInfo</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___exhaustive_variator.html">SDLVisualTest_ExhaustiveVariator</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___s_u_t_config.html">SDLVisualTest_SUTConfig</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_d_l_visual_test___variation.html">SDLVisualTest_Variation</a>&#160;&#160;&#160;</td><td></td></tr>
-<tr><td></td><td></td><td></td><td></td><td></td></tr>
-</table>
-<div class="qindex"><a class="qindex" href="#letter_S">S</a></div>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

BIN
visualtest/docs/html/closed.png


+ 0 - 117
visualtest/docs/html/config_8h_source.html

@@ -1,117 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/config.h Source File</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li class="current"><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-  <div id="navrow2" class="tabs2">
-    <ul class="tablist">
-      <li><a href="files.html"><span>File&#160;List</span></a></li>
-      <li><a href="globals.html"><span>Globals</span></a></li>
-    </ul>
-  </div>
-</div><!-- top -->
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div class="header">
-  <div class="headertitle">
-<div class="title">C:/Users/DELL/Work/sdlvisualtest/visualtest/config.h</div>  </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* config.h.  Generated from config.h.in by configure.  */</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">/* config.h.in.  Generated from configure.in by autoheader.  */</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;</div>
-<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">/* Define to the address where bug reports for this package should be sent. */</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#define PACKAGE_BUGREPORT &quot;apoorvupreti@gmail.com&quot;</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">/* Define to the full name of this package. */</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define PACKAGE_NAME &quot;sdlvisualtest&quot;</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">/* Define to the full name and version of this package. */</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#define PACKAGE_STRING &quot;sdlvisualtest 0.01&quot;</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">/* Define to the one symbol short name of this package. */</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define PACKAGE_TARNAME &quot;sdlvisualtest&quot;</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">/* Define to the home page for this package. */</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#define PACKAGE_URL &quot;&quot;</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">/* Define to the version of this package. */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#define PACKAGE_VERSION &quot;0.01&quot;</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">/* Define to empty if `const&#39; does not conform to ANSI C. */</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">/* #undef const */</span></div>
-</div><!-- fragment --></div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:23 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 98
visualtest/docs/html/dir_244674c763b96fdad0a6ffe8d0250e08.html

@@ -1,98 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/unittest Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_244674c763b96fdad0a6ffe8d0250e08.html">unittest</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">unittest Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:testquit_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>testquit.c</b></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 127
visualtest/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html

@@ -1,127 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/src Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">src Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
-Directories</h2></td></tr>
-<tr class="memitem:dir_a18918b93668b435612395bbc2e8b82b"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a18918b93668b435612395bbc2e8b82b.html">linux</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:dir_f584182df4c69fab0b14563b4d535158"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_f584182df4c69fab0b14563b4d535158.html">windows</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:action__configparser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="action__configparser_8c.html">action_configparser.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:harness__argparser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="harness__argparser_8c.html">harness_argparser.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:mischelper_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mischelper_8c.html">mischelper.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:parsehelper_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parsehelper_8c.html">parsehelper.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:rwhelper_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rwhelper_8c.html">rwhelper.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:screenshot_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="screenshot_8c.html">screenshot.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:sut__configparser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sut__configparser_8c.html">sut_configparser.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:testharness_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="testharness_8c.html">testharness.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:variator__common_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="variator__common_8c.html">variator_common.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:variator__exhaustive_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="variator__exhaustive_8c.html">variator_exhaustive.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:variator__random_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="variator__random_8c.html">variator_random.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:variators_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="variators_8c.html">variators.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 98
visualtest/docs/html/dir_88e6415a3128b404f1102a130772bdb6.html

@@ -1,98 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/linux Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_88e6415a3128b404f1102a130772bdb6.html">linux</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">linux Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:linux__process_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>linux_process.c</b></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Tue Jul 9 2013 22:23:45 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 98
visualtest/docs/html/dir_a18918b93668b435612395bbc2e8b82b.html

@@ -1,98 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/src/linux Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a18918b93668b435612395bbc2e8b82b.html">linux</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">linux Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:linux__process_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="linux__process_8c.html">linux_process.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 120
visualtest/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html

@@ -1,120 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/include Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">include Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:_s_d_l__visualtest__action__configparser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__action__configparser_8h.html">SDL_visualtest_action_configparser.h</a> <a href="_s_d_l__visualtest__action__configparser_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__exhaustive__variator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__exhaustive__variator_8h.html">SDL_visualtest_exhaustive_variator.h</a> <a href="_s_d_l__visualtest__exhaustive__variator_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__harness__argparser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__harness__argparser_8h.html">SDL_visualtest_harness_argparser.h</a> <a href="_s_d_l__visualtest__harness__argparser_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__mischelper_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>SDL_visualtest_mischelper.h</b> <a href="_s_d_l__visualtest__mischelper_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__parsehelper_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__parsehelper_8h.html">SDL_visualtest_parsehelper.h</a> <a href="_s_d_l__visualtest__parsehelper_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__process_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__process_8h.html">SDL_visualtest_process.h</a> <a href="_s_d_l__visualtest__process_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__random__variator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__random__variator_8h.html">SDL_visualtest_random_variator.h</a> <a href="_s_d_l__visualtest__random__variator_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__rwhelper_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><b>SDL_visualtest_rwhelper.h</b> <a href="_s_d_l__visualtest__rwhelper_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__screenshot_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__screenshot_8h.html">SDL_visualtest_screenshot.h</a> <a href="_s_d_l__visualtest__screenshot_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__sut__configparser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__sut__configparser_8h.html">SDL_visualtest_sut_configparser.h</a> <a href="_s_d_l__visualtest__sut__configparser_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__variator__common_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variator__common_8h.html">SDL_visualtest_variator_common.h</a> <a href="_s_d_l__visualtest__variator__common_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:_s_d_l__visualtest__variators_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_d_l__visualtest__variators_8h.html">SDL_visualtest_variators.h</a> <a href="_s_d_l__visualtest__variators_8h_source.html">[code]</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 100
visualtest/docs/html/dir_f584182df4c69fab0b14563b4d535158.html

@@ -1,100 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/src/windows Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_f584182df4c69fab0b14563b4d535158.html">windows</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">windows Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:windows__process_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="windows__process_8c.html">windows_process.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:windows__screenshot_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="windows__screenshot_8c.html">windows_screenshot.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Thu Sep 26 2013 00:18:24 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

+ 0 - 98
visualtest/docs/html/dir_fe549de2418b81853b5f194edb4a7f34.html

@@ -1,98 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
-<meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.4"/>
-<title>SDL Visual Test: C:/Users/DELL/Work/sdlvisualtest/visualtest/windows Directory Reference</title>
-<link href="tabs.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="jquery.js"></script>
-<script type="text/javascript" src="dynsections.js"></script>
-<link href="search/search.css" rel="stylesheet" type="text/css"/>
-<script type="text/javascript" src="search/search.js"></script>
-<script type="text/javascript">
-  $(document).ready(function() { searchBox.OnSelectItem(0); });
-</script>
-<link href="doxygen.css" rel="stylesheet" type="text/css" />
-</head>
-<body>
-<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
-<div id="titlearea">
-<table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-  <td style="padding-left: 0.5em;">
-   <div id="projectname">SDL Visual Test
-   </div>
-  </td>
- </tr>
- </tbody>
-</table>
-</div>
-<!-- end header part -->
-<!-- Generated by Doxygen 1.8.4 -->
-<script type="text/javascript">
-var searchBox = new SearchBox("searchBox", "search",false,'Search');
-</script>
-  <div id="navrow1" class="tabs">
-    <ul class="tablist">
-      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
-      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
-      <li><a href="files.html"><span>Files</span></a></li>
-      <li>
-        <div id="MSearchBox" class="MSearchBoxInactive">
-        <span class="left">
-          <img id="MSearchSelect" src="search/mag_sel.png"
-               onmouseover="return searchBox.OnSearchSelectShow()"
-               onmouseout="return searchBox.OnSearchSelectHide()"
-               alt=""/>
-          <input type="text" id="MSearchField" value="Search" accesskey="S"
-               onfocus="searchBox.OnSearchFieldFocus(true)" 
-               onblur="searchBox.OnSearchFieldFocus(false)" 
-               onkeyup="searchBox.OnSearchFieldChange(event)"/>
-          </span><span class="right">
-            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
-          </span>
-        </div>
-      </li>
-    </ul>
-  </div>
-<!-- window showing the filter options -->
-<div id="MSearchSelectWindow"
-     onmouseover="return searchBox.OnSearchSelectShow()"
-     onmouseout="return searchBox.OnSearchSelectHide()"
-     onkeydown="return searchBox.OnSearchSelectKey(event)">
-<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
-
-<!-- iframe showing the search results (closed by default) -->
-<div id="MSearchResultsWindow">
-<iframe src="javascript:void(0)" frameborder="0" 
-        name="MSearchResults" id="MSearchResults">
-</iframe>
-</div>
-
-<div id="nav-path" class="navpath">
-  <ul>
-<li class="navelem"><a class="el" href="dir_fe549de2418b81853b5f194edb4a7f34.html">windows</a></li>  </ul>
-</div>
-</div><!-- top -->
-<div class="header">
-  <div class="headertitle">
-<div class="title">windows Directory Reference</div>  </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:windows__process_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="windows__process_8c.html">windows_process.c</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table>
-</div><!-- contents -->
-<!-- start footer part -->
-<hr class="footer"/><address class="footer"><small>
-Generated on Tue Jul 9 2013 22:23:45 for SDL Visual Test by &#160;<a href="http://www.doxygen.org/index.html">
-<img class="footer" src="doxygen.png" alt="doxygen"/>
-</a> 1.8.4
-</small></address>
-</body>
-</html>

Some files were not shown because too many files changed in this diff