Wiki Page Content

Differences between revisions 1 and 9 (spanning 8 versions)
Revision 1 as of 2010-07-15 00:46:04
Size: 2471
Editor: SheenaSmith
Comment: create page, add content (Wed Mar 10 ver; changeset 4428)
Revision 9 as of 2010-08-22 20:06:32
Size: 1904
Editor: SheenaSmith
Comment: minor change
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
||<tablewidth="100%" style="color: #FF0000;" :> DRAFT||
Line 6: Line 5:
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 11:
SDL_RWseek(ctx, offset, whence) long SDL_RWseek(SDL_RWops* context,
                long offset,
                int whence)
Line 15: Line 16:
<<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?)>> <<Color2(green,Seems like the type for '''context''' might have changed from SDL_RWops* to struct SDL_RWops*. Which is correct?)>>
Line 18: Line 19:
||'''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 23: Line 24:
Returns the final offset in the data source. ??? Returns the final offset in the data source after the seek.
Line 32: Line 33:
  int length;   long length;
Line 55: Line 56:
,,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 58: Line 59:
||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 65: Line 64:
 .[[SDL_OtherFunction]] <<Color2(green,Not sure how to determine which functions to list here. 1.2 list is no longer valid (SDL_RWread SDL_RWwrite SDL_RWclose). Not finding any that directly reference SDL_RWseek. Should I list all the current read and write functions?)>>  .[[SDL_RWclose]]
 .[[SDL_RWread]]
 .[[SDL_RWtell]]
 .[[SDL_RWwrite]]

SDL_RWseek

Use this function to seek within an SDL_RWops data source.

Syntax

long SDL_RWseek(SDL_RWops* context,
                long       offset, 
                int        whence)

green

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 after the seek.

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


CategoryAPI, CategoryIO

None: SDL_RWseek (last edited 2015-06-20 20:01:11 by PhilippWiesemann)

(Page Info.)
Feedback
Please include your contact information if you'd like to receive a reply.
Submit