Mercurial > sdl-ios-xcode
annotate docs/html/sdlcreatesemaphore.html @ 2866:e532417a6977
Fixed SDL 1.2 compatibility problem.
The API specifies that SDL_OpenAudio() will fill out the 'desired' audio spec
with the correct samples and size set by the driver. This value is important
since it may be used by applications that size audio buffers, etc.
However, we want to allow advanced applications to call SDL_OpenAudioDevice()
which gets passed a const 'desired' parameter, and have the correct data filled
into the 'obtained' parameter, possibly allowing or not allowing format changes.
So... 'obtained' becomes the audio format the user callback is expected to use,
and we add flags to allow the application to specify which format changes are
allowed.
Note: We really need to add a way to query the 'obtained' audio spec.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sat, 13 Dec 2008 06:36:47 +0000 |
parents | 355632dca928 |
children |
rev | line source |
---|---|
0 | 1 <HTML |
2 ><HEAD | |
3 ><TITLE | |
4 >SDL_CreateSemaphore</TITLE | |
5 ><META | |
6 NAME="GENERATOR" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ |
0 | 8 "><LINK |
9 REL="HOME" | |
10 TITLE="SDL Library Documentation" | |
11 HREF="index.html"><LINK | |
12 REL="UP" | |
13 TITLE="Multi-threaded Programming" | |
14 HREF="thread.html"><LINK | |
15 REL="PREVIOUS" | |
16 TITLE="SDL_mutexV" | |
17 HREF="sdlmutexv.html"><LINK | |
18 REL="NEXT" | |
19 TITLE="SDL_DestroySemaphore" | |
20 HREF="sdldestroysemaphore.html"></HEAD | |
21 ><BODY | |
22 CLASS="REFENTRY" | |
23 BGCOLOR="#FFF8DC" | |
24 TEXT="#000000" | |
25 LINK="#0000ee" | |
26 VLINK="#551a8b" | |
27 ALINK="#ff0000" | |
28 ><DIV | |
29 CLASS="NAVHEADER" | |
30 ><TABLE | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
31 SUMMARY="Header navigation table" |
0 | 32 WIDTH="100%" |
33 BORDER="0" | |
34 CELLPADDING="0" | |
35 CELLSPACING="0" | |
36 ><TR | |
37 ><TH | |
38 COLSPAN="3" | |
39 ALIGN="center" | |
40 >SDL Library Documentation</TH | |
41 ></TR | |
42 ><TR | |
43 ><TD | |
44 WIDTH="10%" | |
45 ALIGN="left" | |
46 VALIGN="bottom" | |
47 ><A | |
48 HREF="sdlmutexv.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
49 ACCESSKEY="P" |
0 | 50 >Prev</A |
51 ></TD | |
52 ><TD | |
53 WIDTH="80%" | |
54 ALIGN="center" | |
55 VALIGN="bottom" | |
56 ></TD | |
57 ><TD | |
58 WIDTH="10%" | |
59 ALIGN="right" | |
60 VALIGN="bottom" | |
61 ><A | |
62 HREF="sdldestroysemaphore.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
63 ACCESSKEY="N" |
0 | 64 >Next</A |
65 ></TD | |
66 ></TR | |
67 ></TABLE | |
68 ><HR | |
69 ALIGN="LEFT" | |
70 WIDTH="100%"></DIV | |
71 ><H1 | |
72 ><A | |
73 NAME="SDLCREATESEMAPHORE" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
74 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
75 >SDL_CreateSemaphore</H1 |
0 | 76 ><DIV |
77 CLASS="REFNAMEDIV" | |
78 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
79 NAME="AEN7936" |
0 | 80 ></A |
81 ><H2 | |
82 >Name</H2 | |
83 >SDL_CreateSemaphore -- Creates a new semaphore and assigns an initial value to it.</DIV | |
84 ><DIV | |
85 CLASS="REFSYNOPSISDIV" | |
86 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
87 NAME="AEN7939" |
0 | 88 ></A |
89 ><H2 | |
90 >Synopsis</H2 | |
91 ><DIV | |
92 CLASS="FUNCSYNOPSIS" | |
93 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
94 NAME="AEN7940" |
0 | 95 ></A |
96 ><P | |
97 ></P | |
98 ><PRE | |
99 CLASS="FUNCSYNOPSISINFO" | |
100 >#include "SDL.h" | |
101 #include "SDL_thread.h"</PRE | |
102 ><P | |
103 ><CODE | |
104 ><CODE | |
105 CLASS="FUNCDEF" | |
106 >SDL_sem *<B | |
107 CLASS="FSFUNC" | |
108 >SDL_CreateSemaphore</B | |
109 ></CODE | |
110 >(Uint32 initial_value);</CODE | |
111 ></P | |
112 ><P | |
113 ></P | |
114 ></DIV | |
115 ></DIV | |
116 ><DIV | |
117 CLASS="REFSECT1" | |
118 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
119 NAME="AEN7946" |
0 | 120 ></A |
121 ><H2 | |
122 >Description</H2 | |
123 ><P | |
124 ><TT | |
125 CLASS="FUNCTION" | |
126 >SDL_CreateSemaphore()</TT | |
127 > creates a new semaphore and | |
128 initializes it with the value <TT | |
129 CLASS="PARAMETER" | |
130 ><I | |
131 >initial_value</I | |
132 ></TT | |
133 >. | |
134 Each locking operation on the semaphore by | |
135 <A | |
136 HREF="sdlsemwait.html" | |
137 >SDL_SemWait</A | |
138 >, | |
139 <A | |
140 HREF="sdlsemtrywait.html" | |
141 >SDL_SemTryWait</A | |
142 > or | |
143 <A | |
144 HREF="sdlsemwaittimeout.html" | |
145 >SDL_SemWaitTimeout</A | |
146 > | |
147 will atomically decrement the semaphore value. The locking operation will be blocked | |
148 if the semaphore value is not positive (greater than zero). Each unlock operation by | |
149 <A | |
150 HREF="sdlsempost.html" | |
151 >SDL_SemPost</A | |
152 > | |
153 will atomically increment the semaphore value.</P | |
154 ></DIV | |
155 ><DIV | |
156 CLASS="REFSECT1" | |
157 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
158 NAME="AEN7955" |
0 | 159 ></A |
160 ><H2 | |
161 >Return Value</H2 | |
162 ><P | |
163 >Returns a pointer to an initialized semaphore or | |
164 <SPAN | |
165 CLASS="RETURNVALUE" | |
166 >NULL</SPAN | |
167 > if there was an error.</P | |
168 ></DIV | |
169 ><DIV | |
170 CLASS="REFSECT1" | |
171 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
172 NAME="AEN7959" |
0 | 173 ></A |
174 ><H2 | |
175 >Examples</H2 | |
176 ><P | |
177 ><PRE | |
178 CLASS="PROGRAMLISTING" | |
179 >SDL_sem *my_sem; | |
180 | |
181 my_sem = SDL_CreateSemaphore(INITIAL_SEM_VALUE); | |
182 | |
183 if (my_sem == NULL) { | |
184 return CREATE_SEM_FAILED; | |
185 }</PRE | |
186 ></P | |
187 ></DIV | |
188 ><DIV | |
189 CLASS="REFSECT1" | |
190 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
191 NAME="AEN7963" |
0 | 192 ></A |
193 ><H2 | |
194 >See Also</H2 | |
195 ><P | |
196 ><A | |
197 HREF="sdldestroysemaphore.html" | |
198 ><TT | |
199 CLASS="FUNCTION" | |
200 >SDL_DestroySemaphore</TT | |
201 ></A | |
202 >, | |
203 <A | |
204 HREF="sdlsemwait.html" | |
205 ><TT | |
206 CLASS="FUNCTION" | |
207 >SDL_SemWait</TT | |
208 ></A | |
209 >, | |
210 <A | |
211 HREF="sdlsemtrywait.html" | |
212 ><TT | |
213 CLASS="FUNCTION" | |
214 >SDL_SemTryWait</TT | |
215 ></A | |
216 >, | |
217 <A | |
218 HREF="sdlsemwaittimeout.html" | |
219 ><TT | |
220 CLASS="FUNCTION" | |
221 >SDL_SemWaitTimeout</TT | |
222 ></A | |
223 >, | |
224 <A | |
225 HREF="sdlsempost.html" | |
226 ><TT | |
227 CLASS="FUNCTION" | |
228 >SDL_SemPost</TT | |
229 ></A | |
230 >, | |
231 <A | |
232 HREF="sdlsemvalue.html" | |
233 ><TT | |
234 CLASS="FUNCTION" | |
235 >SDL_SemValue</TT | |
236 ></A | |
237 ></P | |
238 ></DIV | |
239 ><DIV | |
240 CLASS="NAVFOOTER" | |
241 ><HR | |
242 ALIGN="LEFT" | |
243 WIDTH="100%"><TABLE | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
244 SUMMARY="Footer navigation table" |
0 | 245 WIDTH="100%" |
246 BORDER="0" | |
247 CELLPADDING="0" | |
248 CELLSPACING="0" | |
249 ><TR | |
250 ><TD | |
251 WIDTH="33%" | |
252 ALIGN="left" | |
253 VALIGN="top" | |
254 ><A | |
255 HREF="sdlmutexv.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
256 ACCESSKEY="P" |
0 | 257 >Prev</A |
258 ></TD | |
259 ><TD | |
260 WIDTH="34%" | |
261 ALIGN="center" | |
262 VALIGN="top" | |
263 ><A | |
264 HREF="index.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
265 ACCESSKEY="H" |
0 | 266 >Home</A |
267 ></TD | |
268 ><TD | |
269 WIDTH="33%" | |
270 ALIGN="right" | |
271 VALIGN="top" | |
272 ><A | |
273 HREF="sdldestroysemaphore.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
274 ACCESSKEY="N" |
0 | 275 >Next</A |
276 ></TD | |
277 ></TR | |
278 ><TR | |
279 ><TD | |
280 WIDTH="33%" | |
281 ALIGN="left" | |
282 VALIGN="top" | |
283 >SDL_mutexV</TD | |
284 ><TD | |
285 WIDTH="34%" | |
286 ALIGN="center" | |
287 VALIGN="top" | |
288 ><A | |
289 HREF="thread.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
290 ACCESSKEY="U" |
0 | 291 >Up</A |
292 ></TD | |
293 ><TD | |
294 WIDTH="33%" | |
295 ALIGN="right" | |
296 VALIGN="top" | |
297 >SDL_DestroySemaphore</TD | |
298 ></TR | |
299 ></TABLE | |
300 ></DIV | |
301 ></BODY | |
302 ></HTML | |
303 > |