Mercurial > sdl-ios-xcode
view docs/html/sdlinitsubsystem.html @ 3202:3aa519a5c676
I've made so many changes I don't dare continue until I check the current stuff in.
/test/testatomic.c performs absolutely basic tests to show that the function work as expected. Need a second test to do more detailed tests.
/include/SDL_atomic.h provides declarations for all included functions.
/src/atomic/linux/SDL_atomic.c provided all the functions. On a generic built the 64 bit functions work, but they are emulated. On a build for -march=pentium and above the 64 bit functions use native instructions
/src/atomic/dummy/SDL_atomic.c emulates all the operations using SDL_mutex.h.
/src/atomic/win32/SDL_atomic.c is a copy of dummy
/src/atomic/macosx/SDL_atomic.s is a copy of dummy
These versions of SDL_atomic.c provide a frame work for building the library with a mixture of native and emulated functions. This allows the whole library to be provided on all platforms. (I hope.)
I hope this fits with the SDL philosophy of either providing a common subset or emulating when the platform is missing a feature.
I have not added dummy, macosx, or win32 to the build. They are there as place holders for future work.
I have modified congifure.in to compile sources in /src/atomic/linux. (The SDL configure.in file is an amazing piece of work and I hope I didn't mess it up. :-)
author | Bob Pendleton <bob@pendleton.com> |
---|---|
date | Mon, 29 Jun 2009 19:54:43 +0000 |
parents | 355632dca928 |
children |
line wrap: on
line source
<HTML ><HEAD ><TITLE >SDL_InitSubSystem</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="General" HREF="general.html"><LINK REL="PREVIOUS" TITLE="SDL_Init" HREF="sdlinit.html"><LINK REL="NEXT" TITLE="SDL_QuitSubSystem" HREF="sdlquitsubsystem.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="sdlinit.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="sdlquitsubsystem.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="SDLINITSUBSYSTEM" ></A >SDL_InitSubSystem</H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN510" ></A ><H2 >Name</H2 >SDL_InitSubSystem -- Initialize subsystems</DIV ><DIV CLASS="REFSYNOPSISDIV" ><A NAME="AEN513" ></A ><H2 >Synopsis</H2 ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN514" ></A ><P ></P ><PRE CLASS="FUNCSYNOPSISINFO" >#include "SDL.h"</PRE ><P ><CODE ><CODE CLASS="FUNCDEF" >int <B CLASS="FSFUNC" >SDL_InitSubSystem</B ></CODE >(Uint32 flags);</CODE ></P ><P ></P ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN520" ></A ><H2 >Description</H2 ><P >After SDL has been initialized with <A HREF="sdlinit.html" ><TT CLASS="FUNCTION" >SDL_Init</TT ></A > you may initialize uninitialized subsystems with <TT CLASS="FUNCTION" >SDL_InitSubSystem</TT >. The <TT CLASS="PARAMETER" ><I >flags</I ></TT > parameter is the same as that used in <A HREF="sdlinit.html" ><TT CLASS="FUNCTION" >SDL_Init</TT ></A >.</P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN529" ></A ><H2 >Examples</H2 ><PRE CLASS="PROGRAMLISTING" >/* Seperating Joystick and Video initialization. */ SDL_Init(SDL_INIT_VIDEO); . . SDL_SetVideoMode(640, 480, 16, SDL_DOUBLEBUF|SDL_FULLSCREEN); . /* Do Some Video stuff */ . . /* Initialize the joystick subsystem */ SDL_InitSubSystem(SDL_INIT_JOYSTICK); /* Do some stuff with video and joystick */ . . . /* Shut them both down */ SDL_Quit();</PRE ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN532" ></A ><H2 >Return Value</H2 ><P >Returns <SPAN CLASS="RETURNVALUE" >-1</SPAN > on an error or <SPAN CLASS="RETURNVALUE" >0</SPAN > on success.</P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN537" ></A ><H2 >See Also</H2 ><P ><A HREF="sdlinit.html" ><TT CLASS="FUNCTION" >SDL_Init</TT ></A >, <A HREF="sdlquit.html" ><TT CLASS="FUNCTION" >SDL_Quit</TT ></A >, <A HREF="sdlquitsubsystem.html" ><TT CLASS="FUNCTION" >SDL_QuitSubSystem</TT ></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="sdlinit.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="sdlquitsubsystem.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >SDL_Init</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="general.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >SDL_QuitSubSystem</TD ></TR ></TABLE ></DIV ></BODY ></HTML >