Annotation of sbbs/include/sdl/sdl_loadso.h, revision 1.1

1.1     ! root        1: /*
        !             2:     SDL - Simple DirectMedia Layer
        !             3:     Copyright (C) 1997-2004 Sam Lantinga
        !             4: 
        !             5:     This library is free software; you can redistribute it and/or
        !             6:     modify it under the terms of the GNU Library General Public
        !             7:     License as published by the Free Software Foundation; either
        !             8:     version 2 of the License, or (at your option) any later version.
        !             9: 
        !            10:     This library is distributed in the hope that it will be useful,
        !            11:     but WITHOUT ANY WARRANTY; without even the implied warranty of
        !            12:     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
        !            13:     Library General Public License for more details.
        !            14: 
        !            15:     You should have received a copy of the GNU Library General Public
        !            16:     License along with this library; if not, write to the Free
        !            17:     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
        !            18: 
        !            19:     Sam Lantinga
        !            20:     [email protected]
        !            21: */
        !            22: 
        !            23: #ifdef SAVE_RCSID
        !            24: static char rcsid =
        !            25:  "@(#) $Id: SDL_loadso.h,v 1.1.1.1 2005/11/18 23:23:29 rswindell Exp $";
        !            26: #endif
        !            27: 
        !            28: /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
        !            29: /* System dependent library loading routines                           */
        !            30: 
        !            31: /* Some things to keep in mind:                                        
        !            32:    - These functions only work on C function names.  Other languages may
        !            33:      have name mangling and intrinsic language support that varies from
        !            34:      compiler to compiler.
        !            35:    - Make sure you declare your function pointers with the same calling
        !            36:      convention as the actual library function.  Your code will crash
        !            37:      mysteriously if you do not do this.
        !            38:    - Avoid namespace collisions.  If you load a symbol from the library,
        !            39:      it is not defined whether or not it goes into the global symbol
        !            40:      namespace for the application.  If it does and it conflicts with
        !            41:      symbols in your code or other shared libraries, you will not get
        !            42:      the results you expect. :)
        !            43: */
        !            44: 
        !            45: 
        !            46: #ifndef _SDL_loadso_h
        !            47: #define _SDL_loadso_h
        !            48: 
        !            49: #include "begin_code.h"
        !            50: /* Set up for C function definitions, even when using C++ */
        !            51: #ifdef __cplusplus
        !            52: extern "C" {
        !            53: #endif
        !            54: 
        !            55: /* This function dynamically loads a shared object and returns a pointer
        !            56:  * to the object handle (or NULL if there was an error).
        !            57:  * The 'sofile' parameter is a system dependent name of the object file.
        !            58:  */
        !            59: extern DECLSPEC void * SDLCALL SDL_LoadObject(const char *sofile);
        !            60: 
        !            61: /* Given an object handle, this function looks up the address of the
        !            62:  * named function in the shared object and returns it.  This address
        !            63:  * is no longer valid after calling SDL_UnloadObject().
        !            64:  */
        !            65: extern DECLSPEC void * SDLCALL SDL_LoadFunction(void *handle, const char *name);
        !            66: 
        !            67: /* Unload a shared object from memory */
        !            68: extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle);
        !            69: 
        !            70: /* Ends C function definitions when using C++ */
        !            71: #ifdef __cplusplus
        !            72: }
        !            73: #endif
        !            74: #include "close_code.h"
        !            75: 
        !            76: #endif /* _SDL_loadso_h */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.