misc/winutils/include/SDL_loadso.h
author nemo
Mon, 08 Dec 2014 10:14:47 -0500
changeset 10635 8e8b320eefad
parent 10017 de822cd3df3a
permissions -rw-r--r--
nil out CurrentHedgehog in FreeModule, add a test for nil'd CurrentHedgehog in DelCI since I'd still like to use DeleteGear for the other stuff it does. Move some variable initialiasations in AI Misc to hopefully avoid some uninit val errors.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6560
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     1
/*
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     2
    SDL - Simple DirectMedia Layer
7809
7d4fb2f35f4f update SDL headers for winutils
koda
parents: 6560
diff changeset
     3
    Copyright (C) 1997-2012 Sam Lantinga
6560
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     4
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     5
    This library is free software; you can redistribute it and/or
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     6
    modify it under the terms of the GNU Lesser General Public
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     7
    License as published by the Free Software Foundation; either
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     8
    version 2.1 of the License, or (at your option) any later version.
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
     9
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    10
    This library is distributed in the hope that it will be useful,
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    13
    Lesser General Public License for more details.
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    14
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    15
    You should have received a copy of the GNU Lesser General Public
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    16
    License along with this library; if not, write to the Free Software
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    17
    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    18
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    19
    Sam Lantinga
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    20
    slouken@libsdl.org
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    21
*/
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    22
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    23
/** @file SDL_loadso.h
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    24
 *  System dependent library loading routines
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    25
 */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    26
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    27
/** @file SDL_loadso.h
10017
de822cd3df3a fixwhitespace and dos2unix
koda
parents: 7809
diff changeset
    28
 *  Some things to keep in mind:
6560
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    29
 *  - These functions only work on C function names.  Other languages may
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    30
 *    have name mangling and intrinsic language support that varies from
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    31
 *    compiler to compiler.
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    32
 *  - Make sure you declare your function pointers with the same calling
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    33
 *    convention as the actual library function.  Your code will crash
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    34
 *    mysteriously if you do not do this.
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    35
 *  - Avoid namespace collisions.  If you load a symbol from the library,
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    36
 *    it is not defined whether or not it goes into the global symbol
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    37
 *    namespace for the application.  If it does and it conflicts with
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    38
 *    symbols in your code or other shared libraries, you will not get
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    39
 *    the results you expect. :)
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    40
 */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    41
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    42
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    43
#ifndef _SDL_loadso_h
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    44
#define _SDL_loadso_h
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    45
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    46
#include "SDL_stdinc.h"
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    47
#include "SDL_error.h"
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    48
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    49
#include "begin_code.h"
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    50
/* Set up for C function definitions, even when using C++ */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    51
#ifdef __cplusplus
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    52
extern "C" {
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    53
#endif
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    54
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    55
/**
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    56
 * This function dynamically loads a shared object and returns a pointer
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    57
 * to the object handle (or NULL if there was an error).
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    58
 * The 'sofile' parameter is a system dependent name of the object file.
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    59
 */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    60
extern DECLSPEC void * SDLCALL SDL_LoadObject(const char *sofile);
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    61
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    62
/**
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    63
 * Given an object handle, this function looks up the address of the
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    64
 * named function in the shared object and returns it.  This address
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    65
 * is no longer valid after calling SDL_UnloadObject().
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    66
 */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    67
extern DECLSPEC void * SDLCALL SDL_LoadFunction(void *handle, const char *name);
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    68
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    69
/** Unload a shared object from memory */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    70
extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle);
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    71
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    72
/* Ends C function definitions when using C++ */
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    73
#ifdef __cplusplus
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    74
}
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    75
#endif
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    76
#include "close_code.h"
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    77
ca07e6be08d0 GCI task: cmd.exe
bovi
parents:
diff changeset
    78
#endif /* _SDL_loadso_h */