Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Added a new header file: SDL_loadso.h
It contains the following functions: SDL_LoadObject(), SDL_LoadFunction(), SDL_UnloadObject() The UNIX esd and arts audio code use these to dynamically load their respective audio libraries.
- Loading branch information
Showing
with
516 additions
and 24 deletions.
- +6 −0 WhatsNew
- +68 −6 configure.in
- +1 −0 docs.html
- +1 −0 include/Makefile.am
- +1 −0 include/SDL.h
- +61 −0 include/SDL_loadso.h
- +0 −2 include/SDL_name.h
- +2 −1 src/Makefile.am
- +193 −0 src/SDL_loadso.c
- +2 −0 src/audio/arts/Makefile.am
- +100 −11 src/audio/arts/SDL_artsaudio.c
- +2 −0 src/audio/esd/Makefile.am
- +79 −4 src/audio/esd/SDL_esdaudio.c
@@ -0,0 +1,61 @@ | ||
/* | ||
SDL - Simple DirectMedia Layer | ||
Copyright (C) 1997, 1998, 1999, 2000, 2001 Sam Lantinga | ||
This library is free software; you can redistribute it and/or | ||
modify it under the terms of the GNU Library General Public | ||
License as published by the Free Software Foundation; either | ||
version 2 of the License, or (at your option) any later version. | ||
This library is distributed in the hope that it will be useful, | ||
but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
Library General Public License for more details. | ||
You should have received a copy of the GNU Library General Public | ||
License along with this library; if not, write to the Free | ||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
Sam Lantinga | ||
slouken@libsdl.org | ||
*/ | ||
|
||
#ifdef SAVE_RCSID | ||
static char rcsid = | ||
"@(#) $Id$"; | ||
#endif | ||
|
||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | ||
/* System dependent library loading routines */ | ||
|
||
#ifndef _SDL_loadso_h | ||
#define _SDL_loadso_h | ||
|
||
#include "begin_code.h" | ||
/* Set up for C function definitions, even when using C++ */ | ||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/* This function dynamically loads a shared object and returns a pointer | ||
* to the object handle (or NULL if there was an error). | ||
* The 'sofile' parameter is a system dependent name of the object file. | ||
*/ | ||
extern DECLSPEC void *SDL_LoadObject(const char *sofile); | ||
|
||
/* Given an object handle, this function looks up the address of the | ||
* named function in the shared object and returns it. This address | ||
* is no longer valid after calling SDL_UnloadObject(). | ||
*/ | ||
extern DECLSPEC void *SDL_LoadFunction(void *handle, const char *name); | ||
|
||
/* Unload a shared object from memory */ | ||
extern DECLSPEC void SDL_UnloadObject(void *handle); | ||
|
||
/* Ends C function definitions when using C++ */ | ||
#ifdef __cplusplus | ||
} | ||
#endif | ||
#include "close_code.h" | ||
|
||
#endif /* _SDL_loadso_h */ |
Oops, something went wrong.