view docs/html/sdlpushevent.html @ 1078:e2ef6b7001fd

Patch from Antonio SJ Musumeci: " This code with SDL-1.2.8 and CVS: #include <stdio.h> #include <stdlib.h> #include <SDL.h> int main(int argc, char** argv) { char alphabet[26] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; char buffer_file[27] = {0}; char buffer_mem[27] = {0}; int rv_file; int rv_mem; FILE* file_ptr; SDL_RWops* rwop_file; SDL_RWops* rwop_mem; file_ptr = fopen("./blah", "w"); fwrite(alphabet, 1, sizeof(alphabet), file_ptr); fclose(file_ptr); rwop_mem = SDL_RWFromMem(alphabet, sizeof(alphabet)); rwop_file = SDL_RWFromFile("./blah", "r"); rv_mem = SDL_RWread(rwop_mem , buffer_mem, 5, 6); rv_file = SDL_RWread(rwop_file, buffer_file, 5, 6); printf("From File: %d %s\n" "From Mem: %d %s\n", rv_file, buffer_file, rv_mem, buffer_mem); printf("Seek end of File: %d\n" "Seek end of Mem: %d\n", SDL_RWseek(rwop_file, 0, SEEK_END), SDL_RWseek(rwop_mem , 0, SEEK_END)); SDL_RWclose(rwop_file); SDL_RWclose(rwop_mem); return 0; } Produces this output: From File: 5 ABCDEFGHIJKLMNOPQRSTUVWXYZ From Mem: 5 ABCDEFGHIJKLMNOPQRSTUVWXY Seek end of File: 26 Seek end of Mem: 26 " --ryan.
author Ryan C. Gordon <icculus@icculus.org>
date Fri, 24 Jun 2005 12:48:38 +0000
parents 355632dca928
children
line wrap: on
line source

<HTML
><HEAD
><TITLE
>SDL_PushEvent</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
"><LINK
REL="HOME"
TITLE="SDL Library Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="Event Functions."
HREF="eventfunctions.html"><LINK
REL="PREVIOUS"
TITLE="SDL_WaitEvent"
HREF="sdlwaitevent.html"><LINK
REL="NEXT"
TITLE="SDL_SetEventFilter"
HREF="sdlseteventfilter.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFF8DC"
TEXT="#000000"
LINK="#0000ee"
VLINK="#551a8b"
ALINK="#ff0000"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>SDL Library Documentation</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="sdlwaitevent.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="sdlseteventfilter.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="SDLPUSHEVENT"
></A
>SDL_PushEvent</H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN5536"
></A
><H2
>Name</H2
>SDL_PushEvent&nbsp;--&nbsp;Pushes an event onto the event queue</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN5539"
></A
><H2
>Synopsis</H2
><DIV
CLASS="FUNCSYNOPSIS"
><A
NAME="AEN5540"
></A
><P
></P
><PRE
CLASS="FUNCSYNOPSISINFO"
>#include "SDL.h"</PRE
><P
><CODE
><CODE
CLASS="FUNCDEF"
>int <B
CLASS="FSFUNC"
>SDL_PushEvent</B
></CODE
>(SDL_Event *event);</CODE
></P
><P
></P
></DIV
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5546"
></A
><H2
>Description</H2
><P
>The event queue can actually be used as a two way communication channel. Not only can events be read from the queue, but the user can also push their own events onto it. <TT
CLASS="PARAMETER"
><I
>event</I
></TT
> is a pointer to the event structure you wish to push onto the queue.</P
><DIV
CLASS="NOTE"
><BLOCKQUOTE
CLASS="NOTE"
><P
><B
>Note: </B
>Pushing device input events onto the queue doesn't modify the state of the device within SDL.</P
></BLOCKQUOTE
></DIV
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5552"
></A
><H2
>Return Value</H2
><P
>Returns <SPAN
CLASS="RETURNVALUE"
>0</SPAN
> on success or <SPAN
CLASS="RETURNVALUE"
>-1</SPAN
> if the event couldn't be pushed.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5557"
></A
><H2
>Examples</H2
><P
>See <A
HREF="sdlevent.html"
><SPAN
CLASS="STRUCTNAME"
>SDL_Event</SPAN
></A
>.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN5562"
></A
><H2
>See Also</H2
><P
><A
HREF="sdlpollevent.html"
><TT
CLASS="FUNCTION"
>SDL_PollEvent</TT
></A
>,
<A
HREF="sdlpeepevents.html"
><TT
CLASS="FUNCTION"
>SDL_PeepEvents</TT
></A
>,
<A
HREF="sdlevent.html"
><SPAN
CLASS="STRUCTNAME"
>SDL_Event</SPAN
></A
></P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="sdlwaitevent.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="sdlseteventfilter.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>SDL_WaitEvent</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="eventfunctions.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>SDL_SetEventFilter</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>