Rev 1 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1 | Rev 8 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | /* | 1 | /* | 
| 2 |   Simple DirectMedia Layer | 2 |   Simple DirectMedia Layer | 
| 3 |   Copyright (C) 1997- | 3 |   Copyright (C) 1997-2018 Sam Lantinga <slouken@libsdl.org> | 
| 4 | 4 | ||
| 5 |   This software is provided 'as-is', without any express or implied | 5 |   This software is provided 'as-is', without any express or implied | 
| 6 |   warranty.  In no event will the authors be held liable for any damages | 6 |   warranty.  In no event will the authors be held liable for any damages | 
| 7 |   arising from the use of this software. | 7 |   arising from the use of this software. | 
| 8 | 8 | ||
| Line 83... | Line 83... | ||
| 83 | # endif | 83 | # endif | 
| 84 | # include <math.h> | 84 | # include <math.h> | 
| 85 | #endif | 85 | #endif | 
| 86 | #ifdef HAVE_FLOAT_H | 86 | #ifdef HAVE_FLOAT_H | 
| 87 | # include <float.h> | 87 | # include <float.h> | 
| - | 88 | #endif | |
| - | 89 | #if defined(HAVE_ALLOCA) && !defined(alloca) | |
| - | 90 | # if defined(HAVE_ALLOCA_H) | |
| - | 91 | #  include <alloca.h> | |
| - | 92 | # elif defined(__GNUC__) | |
| - | 93 | #  define alloca __builtin_alloca | |
| - | 94 | # elif defined(_MSC_VER) | |
| - | 95 | #  include <malloc.h> | |
| - | 96 | #  define alloca _alloca | |
| - | 97 | # elif defined(__WATCOMC__) | |
| - | 98 | #  include <malloc.h> | |
| - | 99 | # elif defined(__BORLANDC__) | |
| - | 100 | #  include <malloc.h> | |
| - | 101 | # elif defined(__DMC__) | |
| - | 102 | #  include <stdlib.h> | |
| - | 103 | # elif defined(__AIX__) | |
| - | 104 | #pragma alloca | |
| - | 105 | # elif defined(__MRC__) | |
| - | 106 | void *alloca(unsigned); | |
| - | 107 | # else | |
| - | 108 | char *alloca(); | |
| - | 109 | # endif | |
| 88 | #endif | 110 | #endif | 
| 89 | 111 | ||
| 90 | /** | 112 | /** | 
| 91 |  *  The number of elements in an array. | 113 |  *  The number of elements in an array. | 
| 92 |  */ | 114 |  */ | 
| Line 326... | Line 348... | ||
| 326 | /* Set up for C function definitions, even when using C++ */ | 348 | /* Set up for C function definitions, even when using C++ */ | 
| 327 | #ifdef __cplusplus | 349 | #ifdef __cplusplus | 
| 328 | extern "C" { | 350 | extern "C" { | 
| 329 | #endif | 351 | #endif | 
| 330 | 352 | ||
| 331 | #if defined(HAVE_ALLOCA) && !defined(alloca) | - | |
| 332 | # if defined(HAVE_ALLOCA_H) | - | |
| 333 | #  include <alloca.h> | - | |
| 334 | # elif defined(__GNUC__) | - | |
| 335 | #  define alloca __builtin_alloca | - | |
| 336 | # elif defined(_MSC_VER) | - | |
| 337 | #  include <malloc.h> | - | |
| 338 | #  define alloca _alloca | - | |
| 339 | # elif defined(__WATCOMC__) | - | |
| 340 | #  include <malloc.h> | - | |
| 341 | # elif defined(__BORLANDC__) | - | |
| 342 | #  include <malloc.h> | - | |
| 343 | # elif defined(__DMC__) | - | |
| 344 | #  include <stdlib.h> | - | |
| 345 | # elif defined(__AIX__) | - | |
| 346 | #pragma alloca | - | |
| 347 | # elif defined(__MRC__) | - | |
| 348 | void *alloca(unsigned); | - | |
| 349 | # else | - | |
| 350 | char *alloca(); | - | |
| 351 | # endif | - | |
| 352 | #endif | - | |
| 353 | #ifdef HAVE_ALLOCA | 353 | #ifdef HAVE_ALLOCA | 
| 354 | #define SDL_stack_alloc(type, count)    (type*)alloca(sizeof(type)*(count)) | 354 | #define SDL_stack_alloc(type, count)    (type*)alloca(sizeof(type)*(count)) | 
| 355 | #define SDL_stack_free(data) | 355 | #define SDL_stack_free(data) | 
| 356 | #else | 356 | #else | 
| 357 | #define SDL_stack_alloc(type, count)    (type*)SDL_malloc(sizeof(type)*(count)) | 357 | #define SDL_stack_alloc(type, count)    (type*)SDL_malloc(sizeof(type)*(count)) | 
| Line 442... | Line 442... | ||
| 442 | case 1: *_p++ = _val; /* fallthrough */ | 442 | case 1: *_p++ = _val; /* fallthrough */ | 
| 443 | } while ( --_n ); | 443 | } while ( --_n ); | 
| 444 |     } | 444 |     } | 
| 445 | #endif | 445 | #endif | 
| 446 | } | 446 | } | 
| 447 | - | ||
| 448 | 447 | ||
| 449 | extern DECLSPEC void *SDLCALL SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); | 448 | extern DECLSPEC void *SDLCALL SDL_memcpy(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); | 
| 450 | 449 | ||
| 451 | extern DECLSPEC void *SDLCALL SDL_memmove(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); | 450 | extern DECLSPEC void *SDLCALL SDL_memmove(SDL_OUT_BYTECAP(len) void *dst, SDL_IN_BYTECAP(len) const void *src, size_t len); | 
| 452 | extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len); | 451 | extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len); | 
| 453 | 452 | ||
| - | 453 | extern DECLSPEC wchar_t *SDLCALL SDL_wcsdup(const wchar_t *wstr); | |
| 454 | extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr); | 454 | extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr); | 
| 455 | extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); | 455 | extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); | 
| 456 | extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); | 456 | extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); | 
| 457 | extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2); | 457 | extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2); | 
| 458 | 458 | ||
| Line 499... | Line 499... | ||
| 499 | #define M_PI    3.14159265358979323846264338327950288   /**< pi */ | 499 | #define M_PI    3.14159265358979323846264338327950288   /**< pi */ | 
| 500 | #endif | 500 | #endif | 
| 501 | #endif | 501 | #endif | 
| 502 | 502 | ||
| 503 | extern DECLSPEC double SDLCALL SDL_acos(double x); | 503 | extern DECLSPEC double SDLCALL SDL_acos(double x); | 
| - | 504 | extern DECLSPEC float SDLCALL SDL_acosf(float x); | |
| 504 | extern DECLSPEC double SDLCALL SDL_asin(double x); | 505 | extern DECLSPEC double SDLCALL SDL_asin(double x); | 
| - | 506 | extern DECLSPEC float SDLCALL SDL_asinf(float x); | |
| 505 | extern DECLSPEC double SDLCALL SDL_atan(double x); | 507 | extern DECLSPEC double SDLCALL SDL_atan(double x); | 
| - | 508 | extern DECLSPEC float SDLCALL SDL_atanf(float x); | |
| 506 | extern DECLSPEC double SDLCALL SDL_atan2(double x, double y); | 509 | extern DECLSPEC double SDLCALL SDL_atan2(double x, double y); | 
| - | 510 | extern DECLSPEC float SDLCALL SDL_atan2f(float x, float y); | |
| 507 | extern DECLSPEC double SDLCALL SDL_ceil(double x); | 511 | extern DECLSPEC double SDLCALL SDL_ceil(double x); | 
| - | 512 | extern DECLSPEC float SDLCALL SDL_ceilf(float x); | |
| 508 | extern DECLSPEC double SDLCALL SDL_copysign(double x, double y); | 513 | extern DECLSPEC double SDLCALL SDL_copysign(double x, double y); | 
| - | 514 | extern DECLSPEC float SDLCALL SDL_copysignf(float x, float y); | |
| 509 | extern DECLSPEC double SDLCALL SDL_cos(double x); | 515 | extern DECLSPEC double SDLCALL SDL_cos(double x); | 
| 510 | extern DECLSPEC float SDLCALL SDL_cosf(float x); | 516 | extern DECLSPEC float SDLCALL SDL_cosf(float x); | 
| - | 517 | extern DECLSPEC double SDLCALL SDL_exp(double x); | |
| - | 518 | extern DECLSPEC float SDLCALL SDL_expf(float x); | |
| 511 | extern DECLSPEC double SDLCALL SDL_fabs(double x); | 519 | extern DECLSPEC double SDLCALL SDL_fabs(double x); | 
| - | 520 | extern DECLSPEC float SDLCALL SDL_fabsf(float x); | |
| 512 | extern DECLSPEC double SDLCALL SDL_floor(double x); | 521 | extern DECLSPEC double SDLCALL SDL_floor(double x); | 
| - | 522 | extern DECLSPEC float SDLCALL SDL_floorf(float x); | |
| - | 523 | extern DECLSPEC double SDLCALL SDL_fmod(double x, double y); | |
| - | 524 | extern DECLSPEC float SDLCALL SDL_fmodf(float x, float y); | |
| 513 | extern DECLSPEC double SDLCALL SDL_log(double x); | 525 | extern DECLSPEC double SDLCALL SDL_log(double x); | 
| - | 526 | extern DECLSPEC float SDLCALL SDL_logf(float x); | |
| - | 527 | extern DECLSPEC double SDLCALL SDL_log10(double x); | |
| - | 528 | extern DECLSPEC float SDLCALL SDL_log10f(float x); | |
| 514 | extern DECLSPEC double SDLCALL SDL_pow(double x, double y); | 529 | extern DECLSPEC double SDLCALL SDL_pow(double x, double y); | 
| - | 530 | extern DECLSPEC float SDLCALL SDL_powf(float x, float y); | |
| 515 | extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n); | 531 | extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n); | 
| - | 532 | extern DECLSPEC float SDLCALL SDL_scalbnf(float x, int n); | |
| 516 | extern DECLSPEC double SDLCALL SDL_sin(double x); | 533 | extern DECLSPEC double SDLCALL SDL_sin(double x); | 
| 517 | extern DECLSPEC float SDLCALL SDL_sinf(float x); | 534 | extern DECLSPEC float SDLCALL SDL_sinf(float x); | 
| 518 | extern DECLSPEC double SDLCALL SDL_sqrt(double x); | 535 | extern DECLSPEC double SDLCALL SDL_sqrt(double x); | 
| 519 | extern DECLSPEC float SDLCALL SDL_sqrtf(float x); | 536 | extern DECLSPEC float SDLCALL SDL_sqrtf(float x); | 
| 520 | extern DECLSPEC double SDLCALL SDL_tan(double x); | 537 | extern DECLSPEC double SDLCALL SDL_tan(double x); |