forked from KolibriOS/kolibrios
4f7ee97ec9
git-svn-id: svn://kolibrios.org@4680 a494cfbc-eb01-0410-851d-a64ba20cac60
77 lines
2.8 KiB
C++
77 lines
2.8 KiB
C++
/*
|
|
SDL - Simple DirectMedia Layer
|
|
Copyright (C) 1997-2004 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: SDL_loadso.h,v 1.5 2004/01/04 16:49:07 slouken Exp $";
|
|
#endif
|
|
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
/* System dependent library loading routines */
|
|
|
|
/* Some things to keep in mind:
|
|
- These functions only work on C function names. Other languages may
|
|
have name mangling and intrinsic language support that varies from
|
|
compiler to compiler.
|
|
- Make sure you declare your function pointers with the same calling
|
|
convention as the actual library function. Your code will crash
|
|
mysteriously if you do not do this.
|
|
- Avoid namespace collisions. If you load a symbol from the library,
|
|
it is not defined whether or not it goes into the global symbol
|
|
namespace for the application. If it does and it conflicts with
|
|
symbols in your code or other shared libraries, you will not get
|
|
the results you expect. :)
|
|
*/
|
|
|
|
|
|
#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 * SDLCALL 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 * SDLCALL SDL_LoadFunction(void *handle, const char *name);
|
|
|
|
/* Unload a shared object from memory */
|
|
extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle);
|
|
|
|
/* Ends C function definitions when using C++ */
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#include "close_code.h"
|
|
|
|
#endif /* _SDL_loadso_h */
|