Wiki Page Content

Differences between revisions 2 and 4 (spanning 2 versions)
Revision 2 as of 2010-07-15 17:35:55
Size: 2562
Editor: SheenaSmith
Comment:
Revision 4 as of 2010-07-15 18:28:40
Size: 2503
Editor: SheenaSmith
Comment: update content
Deletions are marked like this. Additions are marked like this.
Line 15: Line 15:
<<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))>>
<<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 66: Line 66:
 .[[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]] (Macro) ???
 .[[SDL_RWread]] (Macro) ???
 .[[SDL_RWtell]] (Macro) ???
 .[[SDL_RWwrite]] (Macro) ???

<<Color2(green,Should the current read and write functions (not macros) be listed?)>>

DRAFT

SDL_RWseek

Use this function (macro) to *call the seek function pointer in an SDL_RWops structure*.

Syntax

SDL_RWseek(ctx, offset, whence)

green

  • (ctx)->seek(ctx, offset, whence)

Function Parameters

ctx

*a pointer to an SDL_RWops structure* green

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()
{
  int 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

Note: 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

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

green

green


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