Permalink
File 2 of 2 in
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
File 2 of 2 in
dd070f9
Previous
Next
Previous
Next
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@@ -0,0 +1,93 @@ | ||
/* | ||
* This code provides a glue layer between PhysicsFS and Simple Directmedia | ||
* Layer's (SDL) RWops i/o abstraction. | ||
* | ||
* License: this code is public domain. I make no warranty that it is useful, | ||
* correct, harmless, or environmentally safe. | ||
* | ||
* This particular file may be used however you like, including copying it | ||
* verbatim into a closed-source project, exploiting it commercially, and | ||
* removing any trace of my name from the source (although I hope you won't | ||
* do that). I welcome enhancements and corrections to this file, but I do | ||
* not require you to send me patches if you make changes. | ||
* | ||
* Unless otherwise stated, the rest of PhysicsFS falls under the GNU Lesser | ||
* General Public License: http://www.gnu.org/licenses/lgpl.txt | ||
* | ||
* SDL falls under the LGPL, too. You can get SDL at http://www.libsdl.org/ | ||
* | ||
* This file was written by Ryan C. Gordon. (icculus@clutteredmind.org). | ||
*/ | ||
|
||
#ifndef _INCLUDE_PHYSFSRWOPS_H_ | ||
#define _INCLUDE_PHYSFSRWOPS_H_ | ||
|
||
#include "physfs.h" | ||
#include "SDL.h" | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
#if (defined _MSC_VER) | ||
#define __EXPORT__ __declspec(dllexport) | ||
#else | ||
#define __EXPORT__ | ||
#endif | ||
|
||
/** | ||
* Open a platform-independent filename for reading, and make it accessible | ||
* via an SDL_RWops structure. The file will be closed in PhysicsFS when the | ||
* RWops is closed. PhysicsFS should be configured to your liking before | ||
* opening files through this method. | ||
* | ||
* @param filename File to open in platform-independent notation. | ||
* @return A valid SDL_RWops structure on success, NULL on error. Specifics | ||
* of the error can be gleaned from PHYSFS_getLastError(). | ||
*/ | ||
__EXPORT__ SDL_RWops *PHYSFSRWOPS_openRead(const char *fname); | ||
|
||
/** | ||
* Open a platform-independent filename for writing, and make it accessible | ||
* via an SDL_RWops structure. The file will be closed in PhysicsFS when the | ||
* RWops is closed. PhysicsFS should be configured to your liking before | ||
* opening files through this method. | ||
* | ||
* @param filename File to open in platform-independent notation. | ||
* @return A valid SDL_RWops structure on success, NULL on error. Specifics | ||
* of the error can be gleaned from PHYSFS_getLastError(). | ||
*/ | ||
__EXPORT__ SDL_RWops *PHYSFSRWOPS_openWrite(const char *fname); | ||
|
||
/** | ||
* Open a platform-independent filename for appending, and make it accessible | ||
* via an SDL_RWops structure. The file will be closed in PhysicsFS when the | ||
* RWops is closed. PhysicsFS should be configured to your liking before | ||
* opening files through this method. | ||
* | ||
* @param filename File to open in platform-independent notation. | ||
* @return A valid SDL_RWops structure on success, NULL on error. Specifics | ||
* of the error can be gleaned from PHYSFS_getLastError(). | ||
*/ | ||
__EXPORT__ SDL_RWops *PHYSFSRWOPS_openAppend(const char *fname); | ||
|
||
/** | ||
* Make a SDL_RWops from an existing PhysicsFS file handle. You should | ||
* dispose of any references to the handle after successful creation of | ||
* the RWops. The actual PhysicsFS handle will be destroyed when the | ||
* RWops is closed. | ||
* | ||
* @param handle a valid PhysicsFS file handle. | ||
* @return A valid SDL_RWops structure on success, NULL on error. Specifics | ||
* of the error can be gleaned from PHYSFS_getLastError(). | ||
*/ | ||
__EXPORT__ SDL_RWops *PHYSFSRWOPS_makeRWops(PHYSFS_file *handle); | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif | ||
|
||
#endif /* include-once blocker */ | ||
|
||
/* end of physfsrwops.h ... */ | ||
|
Oops, something went wrong.