|
Size: 2506
Comment: minor change
|
Size: 1811
Comment: update content (from Sam)
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 6: | Line 6: |
| Use this function ^(macro)^ to *call the seek function pointer in an SDL_RWops structure*. | Use this function to seek within an SDL_RWops data source. |
| Line 12: | Line 12: |
| SDL_RWseek(ctx, offset, whence) | long SDL_RWseek(SDL_RWops* context, long offset, int whence) |
| Line 15: | Line 17: |
| <<Color2(green,Should there be anything to indicate a RV at the beginning of the syntax? Should the 3 params be on separate lines like a regular function even though the rest of the syntax is different? Should the following be included in the syntax section?)>> {{{(ctx)->seek(ctx, offset, whence)}}} |
|
| Line 19: | Line 18: |
| ||'''ctx'''||*a pointer to an SDL_RWops structure* <<Color2(green,why isn't there a pointer symbol?)>>|| ||'''offset'''||*an offset in bytes^, relative to '''whence''' location^; can be negative*|| |
||'''context'''||a pointer to an SDL_RWops structure|| ||'''offset'''||an offset in bytes, relative to '''whence''' location; can be negative|| |
| Line 24: | Line 23: |
| Returns the final offset in the data source. ??? | Returns the final offset in the data source. |
| Line 33: | Line 32: |
| int length; | long length; |
| Line 56: | Line 55: |
| ,,Note: ,,This is not a predefined function, just a macro that calls whatever seek function has been placed in the SDL_RWops structure. | This is not a predefined function, just a macro that calls whatever seek function has been placed in the SDL_RWops structure. |
| Line 59: | Line 58: |
| ||RW_SEEK_SET||0||seek from the beginning of data|| ||RW_SEEK_CUR||1||seek relative to current read point|| ||RW_SEEK_END||2||seek relative to the end of data|| <<Color2(green,What does the number in the center column represent? Thought it was the value you'd put in the macro but the code example suggests otherwise. Is that one of those things that we're leaving out?)>> |
||RW_SEEK_SET||seek from the beginning of data|| ||RW_SEEK_CUR||seek relative to current read point|| ||RW_SEEK_END||seek relative to the end of data|| |
| Line 66: | Line 63: |
| .[[SDL_RWclose]] (Macro) *??? .[[SDL_RWread]] (Macro) *??? .[[SDL_RWtell]] (Macro) ??? .[[SDL_RWwrite]] (Macro) *??? <<Color2(green,Should the current read and write functions (not macros) be listed?)>> |
.[[SDL_RWclose]] .[[SDL_RWread]] .[[SDL_RWtell]] .[[SDL_RWwrite]] |
DRAFT |
SDL_RWseek
Use this function to seek within an SDL_RWops data source.
Syntax
long SDL_RWseek(SDL_RWops* context,
long offset,
int whence)
Function Parameters
context |
a pointer to an SDL_RWops structure |
offset |
an offset in bytes, relative to whence location; can be negative |
whence |
any of RW_SEEK_SET, RW_SEEK_CUR, RW_SEEK_END; see Remarks for details |
Return Value
Returns the final offset in the data source.
Code Examples
#include <stdio.h>
#include "SDL_rwops.h"
int main()
{
long length;
SDL_RWops *rw=SDL_RWFromFile("myfile.bin","rb");
if(rw==NULL)
{
fprintf(stderr,"Couldn't open myfile.bin\n");
return(1);
}
/* Seek to 0 bytes from the end of the file -- i.e. the exact end of file */
length=SDL_RWseek(rw,0,SEEK_END);
SDL_RWclose(rw);
if(length<0)
{
fprintf(stderr,"Could not seek inside myfile.bin\n");
return(2);
}
fprintf(stderr,"myfile.bin is %d bytes long\n",length);
return(0);
}
Remarks
This is not a predefined function, just a macro that calls whatever seek function has been placed in the SDL_RWops structure.
whence may be any of the following values:
RW_SEEK_SET |
seek from the beginning of data |
RW_SEEK_CUR |
seek relative to current read point |
RW_SEEK_END |
seek relative to the end of data |
