test/testnative.h
author Sam Lantinga <slouken@libsdl.org>
Thu, 07 Dec 2017 16:08:09 -0800
changeset 11730 ac6c607e065c
parent 10737 3406a0f8b041
child 11811 5d94cb6b24d3
permissions -rw-r--r--
Enable building the Metal renderer by default, and weak link the Metal framework so the SDL library is safe to use on older Macs
Also generate iOS versions of the Metal shaders
slouken@5535
     1
/*
slouken@10737
     2
  Copyright (C) 1997-2017 Sam Lantinga <slouken@libsdl.org>
slouken@5535
     3
slouken@5535
     4
  This software is provided 'as-is', without any express or implied
slouken@5535
     5
  warranty.  In no event will the authors be held liable for any damages
slouken@5535
     6
  arising from the use of this software.
slouken@5535
     7
slouken@5535
     8
  Permission is granted to anyone to use this software for any purpose,
slouken@5535
     9
  including commercial applications, and to alter it and redistribute it
slouken@5535
    10
  freely.
slouken@5535
    11
*/
slouken@3059
    12
slouken@3059
    13
/* Definitions for platform dependent windowing functions to test SDL
slouken@3059
    14
   integration with native windows
slouken@3059
    15
*/
slouken@3059
    16
slouken@3059
    17
#include "SDL.h"
slouken@3059
    18
slouken@3059
    19
/* This header includes all the necessary system headers for native windows */
slouken@3059
    20
#include "SDL_syswm.h"
slouken@3059
    21
slouken@3059
    22
typedef struct
slouken@3059
    23
{
slouken@3059
    24
    const char *tag;
slouken@3061
    25
    void *(*CreateNativeWindow) (int w, int h);
slouken@3061
    26
    void (*DestroyNativeWindow) (void *window);
slouken@3059
    27
} NativeWindowFactory;
slouken@3059
    28
slouken@5062
    29
#ifdef SDL_VIDEO_DRIVER_WINDOWS
slouken@5062
    30
#define TEST_NATIVE_WINDOWS
slouken@5062
    31
extern NativeWindowFactory WindowsWindowFactory;
slouken@3059
    32
#endif
slouken@3059
    33
slouken@3059
    34
#ifdef SDL_VIDEO_DRIVER_X11
slouken@3059
    35
#define TEST_NATIVE_X11
slouken@3059
    36
extern NativeWindowFactory X11WindowFactory;
slouken@3059
    37
#endif
slouken@3059
    38
slouken@3059
    39
#ifdef SDL_VIDEO_DRIVER_COCOA
slouken@3059
    40
/* Actually, we don't really do this, since it involves adding Objective C
slouken@3059
    41
   support to the build system, which is a little tricky.  You can uncomment
slouken@3059
    42
   it manually though and link testnativecocoa.m into the test application.
slouken@3059
    43
*/
slouken@3059
    44
#define TEST_NATIVE_COCOA
slouken@3059
    45
extern NativeWindowFactory CocoaWindowFactory;
slouken@3059
    46
#endif