1 <HTML 2 ><HEAD 3 ><TITLE 4 ></TITLE 5 ><META 6 NAME="GENERATOR" 7 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ 8 "><LINK 9 REL="NEXT" 10 TITLE="SDL Guide" 11 HREF="guide.html"></HEAD 12 ><BODY 13 CLASS="BOOK" 14 BGCOLOR="#FFF8DC" 15 TEXT="#000000" 16 LINK="#0000ee" 17 VLINK="#551a8b" 18 ALINK="#ff0000" 19 ><DIV 20 CLASS="BOOK" 21 ><A 22 NAME="AEN1" 23 ></A 24 ><DIV 25 CLASS="TOC" 26 ><DL 27 ><DT 28 ><B 29 >Table of Contents</B 30 ></DT 31 ><DT 32 >I. <A 33 HREF="guide.html" 34 >SDL Guide</A 35 ></DT 36 ><DD 37 ><DL 38 ><DT 39 ><A 40 HREF="guidepreface.html" 41 >Preface</A 42 ></DT 43 ><DD 44 ><DL 45 ><DT 46 ><A 47 HREF="guidepreface.html#GUIDEABOUTSDL" 48 >About SDL</A 49 ></DT 50 ><DT 51 ><A 52 HREF="guideaboutsdldoc.html" 53 >About SDLdoc</A 54 ></DT 55 ><DT 56 ><A 57 HREF="guidecredits.html" 58 >Credits</A 59 ></DT 60 ></DL 61 ></DD 62 ><DT 63 >1. <A 64 HREF="guidethebasics.html" 65 >The Basics</A 66 ></DT 67 ><DD 68 ><DL 69 ><DT 70 ><A 71 HREF="guidethebasics.html#GUIDEINTRODUCTION" 72 >Introduction</A 73 ></DT 74 ><DT 75 ><A 76 HREF="guidebasicsinit.html" 77 >Initializing SDL</A 78 ></DT 79 ></DL 80 ></DD 81 ><DT 82 >2. <A 83 HREF="guidevideo.html" 84 >Graphics and Video</A 85 ></DT 86 ><DD 87 ><DL 88 ><DT 89 ><A 90 HREF="guidevideo.html#GUIDEVIDEOINTRO" 91 >Introduction to SDL Video</A 92 ></DT 93 ><DT 94 ><A 95 HREF="guidevideoopengl.html" 96 >Using OpenGL With SDL</A 97 ></DT 98 ></DL 99 ></DD 100 ><DT 101 >3. <A 102 HREF="guideinput.html" 103 >Input handling</A 104 ></DT 105 ><DD 106 ><DL 107 ><DT 108 ><A 109 HREF="guideinput.html#GUIDEINPUTJOYSTICK" 110 >Handling Joysticks</A 111 ></DT 112 ><DT 113 ><A 114 HREF="guideinputkeyboard.html" 115 >Handling the Keyboard</A 116 ></DT 117 ></DL 118 ></DD 119 ><DT 120 >4. <A 121 HREF="guideexamples.html" 122 >Examples</A 123 ></DT 124 ><DD 125 ><DL 126 ><DT 127 ><A 128 HREF="guideexamples.html#AEN369" 129 >Introduction</A 130 ></DT 131 ><DT 132 ><A 133 HREF="guideeventexamples.html" 134 >Event Examples</A 135 ></DT 136 ><DT 137 ><A 138 HREF="guideaudioexamples.html" 139 >Audio Examples</A 140 ></DT 141 ><DT 142 ><A 143 HREF="guidecdromexamples.html" 144 >CDROM Examples</A 145 ></DT 146 ><DT 147 ><A 148 HREF="guidetimeexamples.html" 149 >Time Examples</A 150 ></DT 151 ></DL 152 ></DD 153 ></DL 154 ></DD 155 ><DT 156 >II. <A 157 HREF="reference.html" 158 >SDL Reference</A 159 ></DT 160 ><DD 161 ><DL 162 ><DT 163 >5. <A 164 HREF="general.html" 165 >General</A 166 ></DT 167 ><DD 168 ><DL 169 ><DT 170 ><A 171 HREF="sdlinit.html" 172 >SDL_Init</A 173 > -- Initializes SDL</DT 174 ><DT 175 ><A 176 HREF="sdlinitsubsystem.html" 177 >SDL_InitSubSystem</A 178 > -- Initialize subsystems</DT 179 ><DT 180 ><A 181 HREF="sdlquitsubsystem.html" 182 >SDL_QuitSubSystem</A 183 > -- Shut down a subsystem</DT 184 ><DT 185 ><A 186 HREF="sdlquit.html" 187 >SDL_Quit</A 188 > -- Shut down SDL</DT 189 ><DT 190 ><A 191 HREF="sdlwasinit.html" 192 >SDL_WasInit</A 193 > -- Check which subsystems are initialized</DT 194 ><DT 195 ><A 196 HREF="sdlgeterror.html" 197 >SDL_GetError</A 198 > -- Get SDL error string</DT 199 ><DT 200 ><A 201 HREF="sdlenvvars.html" 202 >SDL_envvars</A 203 > -- SDL environment variables</DT 204 ></DL 205 ></DD 206 ><DT 207 >6. <A 208 HREF="video.html" 209 >Video</A 210 ></DT 211 ><DD 212 ><DL 213 ><DT 214 ><A 215 HREF="sdlgetvideosurface.html" 216 >SDL_GetVideoSurface</A 217 > -- returns a pointer to the current display surface</DT 218 ><DT 219 ><A 220 HREF="sdlgetvideoinfo.html" 221 >SDL_GetVideoInfo</A 222 > -- returns a pointer to information about the video hardware</DT 223 ><DT 224 ><A 225 HREF="sdlvideodrivername.html" 226 >SDL_VideoDriverName</A 227 > -- Obtain the name of the video driver</DT 228 ><DT 229 ><A 230 HREF="sdllistmodes.html" 231 >SDL_ListModes</A 232 > -- Returns a pointer to an array of available screen dimensions for 233 the given format and video flags</DT 234 ><DT 235 ><A 236 HREF="sdlvideomodeok.html" 237 >SDL_VideoModeOK</A 238 > -- Check to see if a particular video mode is supported.</DT 239 ><DT 240 ><A 241 HREF="sdlsetvideomode.html" 242 >SDL_SetVideoMode</A 243 > -- Set up a video mode with the specified width, height and bits-per-pixel.</DT 244 ><DT 245 ><A 246 HREF="sdlupdaterect.html" 247 >SDL_UpdateRect</A 248 > -- Makes sure the given area is updated on the given screen.</DT 249 ><DT 250 ><A 251 HREF="sdlupdaterects.html" 252 >SDL_UpdateRects</A 253 > -- Makes sure the given list of rectangles is updated on the given screen.</DT 254 ><DT 255 ><A 256 HREF="sdlflip.html" 257 >SDL_Flip</A 258 > -- Swaps screen buffers</DT 259 ><DT 260 ><A 261 HREF="sdlsetcolors.html" 262 >SDL_SetColors</A 263 > -- Sets a portion of the colormap for the given 8-bit surface.</DT 264 ><DT 265 ><A 266 HREF="sdlsetpalette.html" 267 >SDL_SetPalette</A 268 > -- Sets the colors in the palette of an 8-bit surface.</DT 269 ><DT 270 ><A 271 HREF="sdlsetgamma.html" 272 >SDL_SetGamma</A 273 > -- Sets the color gamma function for the display</DT 274 ><DT 275 ><A 276 HREF="sdlgetgammaramp.html" 277 >SDL_GetGammaRamp</A 278 > -- Gets the color gamma lookup tables for the display</DT 279 ><DT 280 ><A 281 HREF="sdlsetgammaramp.html" 282 >SDL_SetGammaRamp</A 283 > -- Sets the color gamma lookup tables for the display</DT 284 ><DT 285 ><A 286 HREF="sdlmaprgb.html" 287 >SDL_MapRGB</A 288 > -- Map a RGB color value to a pixel format.</DT 289 ><DT 290 ><A 291 HREF="sdlmaprgba.html" 292 >SDL_MapRGBA</A 293 > -- Map a RGBA color value to a pixel format.</DT 294 ><DT 295 ><A 296 HREF="sdlgetrgb.html" 297 >SDL_GetRGB</A 298 > -- Get RGB values from a pixel in the specified pixel format.</DT 299 ><DT 300 ><A 301 HREF="sdlgetrgba.html" 302 >SDL_GetRGBA</A 303 > -- Get RGBA values from a pixel in the specified pixel format.</DT 304 ><DT 305 ><A 306 HREF="sdlcreatergbsurface.html" 307 >SDL_CreateRGBSurface</A 308 > -- Create an empty SDL_Surface</DT 309 ><DT 310 ><A 311 HREF="sdlcreatergbsurfacefrom.html" 312 >SDL_CreateRGBSurfaceFrom</A 313 > -- Create an SDL_Surface from pixel data</DT 314 ><DT 315 ><A 316 HREF="sdlfreesurface.html" 317 >SDL_FreeSurface</A 318 > -- Frees (deletes) a SDL_Surface</DT 319 ><DT 320 ><A 321 HREF="sdllocksurface.html" 322 >SDL_LockSurface</A 323 > -- Lock a surface for directly access.</DT 324 ><DT 325 ><A 326 HREF="sdlunlocksurface.html" 327 >SDL_UnlockSurface</A 328 > -- Unlocks a previously locked surface.</DT 329 ><DT 330 ><A 331 HREF="sdlloadbmp.html" 332 >SDL_LoadBMP</A 333 > -- Load a Windows BMP file into an SDL_Surface.</DT 334 ><DT 335 ><A 336 HREF="sdlsavebmp.html" 337 >SDL_SaveBMP</A 338 > -- Save an SDL_Surface as a Windows BMP file.</DT 339 ><DT 340 ><A 341 HREF="sdlsetcolorkey.html" 342 >SDL_SetColorKey</A 343 > -- Sets the color key (transparent pixel) in a blittable surface and 344 RLE acceleration.</DT 345 ><DT 346 ><A 347 HREF="sdlsetalpha.html" 348 >SDL_SetAlpha</A 349 > -- Adjust the alpha properties of a surface</DT 350 ><DT 351 ><A 352 HREF="sdlsetcliprect.html" 353 >SDL_SetClipRect</A 354 > -- Sets the clipping rectangle for a surface.</DT 355 ><DT 356 ><A 357 HREF="sdlgetcliprect.html" 358 >SDL_GetClipRect</A 359 > -- Gets the clipping rectangle for a surface.</DT 360 ><DT 361 ><A 362 HREF="sdlconvertsurface.html" 363 >SDL_ConvertSurface</A 364 > -- Converts a surface to the same format as another surface.</DT 365 ><DT 366 ><A 367 HREF="sdlblitsurface.html" 368 >SDL_BlitSurface</A 369 > -- This performs a fast blit from the source surface to the destination surface.</DT 370 ><DT 371 ><A 372 HREF="sdlfillrect.html" 373 >SDL_FillRect</A 374 > -- This function performs a fast fill of the given rectangle with some color</DT 375 ><DT 376 ><A 377 HREF="sdldisplayformat.html" 378 >SDL_DisplayFormat</A 379 > -- Convert a surface to the display format</DT 380 ><DT 381 ><A 382 HREF="sdldisplayformatalpha.html" 383 >SDL_DisplayFormatAlpha</A 384 > -- Convert a surface to the display format</DT 385 ><DT 386 ><A 387 HREF="sdlwarpmouse.html" 388 >SDL_WarpMouse</A 389 > -- Set the position of the mouse cursor.</DT 390 ><DT 391 ><A 392 HREF="sdlcreatecursor.html" 393 >SDL_CreateCursor</A 394 > -- Creates a new mouse cursor.</DT 395 ><DT 396 ><A 397 HREF="sdlfreecursor.html" 398 >SDL_FreeCursor</A 399 > -- Frees a cursor created with SDL_CreateCursor.</DT 400 ><DT 401 ><A 402 HREF="sdlsetcursor.html" 403 >SDL_SetCursor</A 404 > -- Set the currently active mouse cursor.</DT 405 ><DT 406 ><A 407 HREF="sdlgetcursor.html" 408 >SDL_GetCursor</A 409 > -- Get the currently active mouse cursor.</DT 410 ><DT 411 ><A 412 HREF="sdlshowcursor.html" 413 >SDL_ShowCursor</A 414 > -- Toggle whether or not the cursor is shown on the screen.</DT 415 ><DT 416 ><A 417 HREF="sdlglloadlibrary.html" 418 >SDL_GL_LoadLibrary</A 419 > -- Specify an OpenGL library</DT 420 ><DT 421 ><A 422 HREF="sdlglgetprocaddress.html" 423 >SDL_GL_GetProcAddress</A 424 > -- Get the address of a GL function</DT 425 ><DT 426 ><A 427 HREF="sdlglgetattribute.html" 428 >SDL_GL_GetAttribute</A 429 > -- Get the value of a special SDL/OpenGL attribute</DT 430 ><DT 431 ><A 432 HREF="sdlglsetattribute.html" 433 >SDL_GL_SetAttribute</A 434 > -- Set a special SDL/OpenGL attribute</DT 435 ><DT 436 ><A 437 HREF="sdlglswapbuffers.html" 438 >SDL_GL_SwapBuffers</A 439 > -- Swap OpenGL framebuffers/Update Display</DT 440 ><DT 441 ><A 442 HREF="sdlcreateyuvoverlay.html" 443 >SDL_CreateYUVOverlay</A 444 > -- Create a YUV video overlay</DT 445 ><DT 446 ><A 447 HREF="sdllockyuvoverlay.html" 448 >SDL_LockYUVOverlay</A 449 > -- Lock an overlay</DT 450 ><DT 451 ><A 452 HREF="sdlunlockyuvoverlay.html" 453 >SDL_UnlockYUVOverlay</A 454 > -- Unlock an overlay</DT 455 ><DT 456 ><A 457 HREF="sdldisplayyuvoverlay.html" 458 >SDL_DisplayYUVOverlay</A 459 > -- Blit the overlay to the display</DT 460 ><DT 461 ><A 462 HREF="sdlfreeyuvoverlay.html" 463 >SDL_FreeYUVOverlay</A 464 > -- Free a YUV video overlay</DT 465 ><DT 466 ><A 467 HREF="sdlglattr.html" 468 >SDL_GLattr</A 469 > -- SDL GL Attributes</DT 470 ><DT 471 ><A 472 HREF="sdlrect.html" 473 >SDL_Rect</A 474 > -- Defines a rectangular area</DT 475 ><DT 476 ><A 477 HREF="sdlcolor.html" 478 >SDL_Color</A 479 > -- Format independent color description</DT 480 ><DT 481 ><A 482 HREF="sdlpalette.html" 483 >SDL_Palette</A 484 > -- Color palette for 8-bit pixel formats</DT 485 ><DT 486 ><A 487 HREF="sdlpixelformat.html" 488 >SDL_PixelFormat</A 489 > -- Stores surface format information</DT 490 ><DT 491 ><A 492 HREF="sdlsurface.html" 493 >SDL_Surface</A 494 > -- Graphical Surface Structure</DT 495 ><DT 496 ><A 497 HREF="sdlvideoinfo.html" 498 >SDL_VideoInfo</A 499 > -- Video Target information</DT 500 ><DT 501 ><A 502 HREF="sdloverlay.html" 503 >SDL_Overlay</A 504 > -- YUV video overlay</DT 505 ></DL 506 ></DD 507 ><DT 508 >7. <A 509 HREF="wm.html" 510 >Window Management</A 511 ></DT 512 ><DD 513 ><DL 514 ><DT 515 ><A 516 HREF="sdlwmsetcaption.html" 517 >SDL_WM_SetCaption</A 518 > -- Sets the window tile and icon name.</DT 519 ><DT 520 ><A 521 HREF="sdlwmgetcaption.html" 522 >SDL_WM_GetCaption</A 523 > -- Gets the window title and icon name.</DT 524 ><DT 525 ><A 526 HREF="sdlwmseticon.html" 527 >SDL_WM_SetIcon</A 528 > -- Sets the icon for the display window.</DT 529 ><DT 530 ><A 531 HREF="sdlwmiconifywindow.html" 532 >SDL_WM_IconifyWindow</A 533 > -- Iconify/Minimise the window</DT 534 ><DT 535 ><A 536 HREF="sdlwmtogglefullscreen.html" 537 >SDL_WM_ToggleFullScreen</A 538 > -- Toggles fullscreen mode</DT 539 ><DT 540 ><A 541 HREF="sdlwmgrabinput.html" 542 >SDL_WM_GrabInput</A 543 > -- Grabs mouse and keyboard input.</DT 544 ></DL 545 ></DD 546 ><DT 547 >8. <A 548 HREF="event.html" 549 >Events</A 550 ></DT 551 ><DD 552 ><DL 553 ><DT 554 ><A 555 HREF="event.html#AEN3691" 556 >Introduction</A 557 ></DT 558 ><DT 559 ><A 560 HREF="eventstructures.html" 561 >SDL Event Structures.</A 562 ></DT 563 ><DT 564 ><A 565 HREF="eventfunctions.html" 566 >Event Functions.</A 567 ></DT 568 ></DL 569 ></DD 570 ><DT 571 >9. <A 572 HREF="joystick.html" 573 >Joystick</A 574 ></DT 575 ><DD 576 ><DL 577 ><DT 578 ><A 579 HREF="sdlnumjoysticks.html" 580 >SDL_NumJoysticks</A 581 > -- Count available joysticks.</DT 582 ><DT 583 ><A 584 HREF="sdljoystickname.html" 585 >SDL_JoystickName</A 586 > -- Get joystick name.</DT 587 ><DT 588 ><A 589 HREF="sdljoystickopen.html" 590 >SDL_JoystickOpen</A 591 > -- Opens a joystick for use.</DT 592 ><DT 593 ><A 594 HREF="sdljoystickopened.html" 595 >SDL_JoystickOpened</A 596 > -- Determine if a joystick has been opened</DT 597 ><DT 598 ><A 599 HREF="sdljoystickindex.html" 600 >SDL_JoystickIndex</A 601 > -- Get the index of an SDL_Joystick.</DT 602 ><DT 603 ><A 604 HREF="sdljoysticknumaxes.html" 605 >SDL_JoystickNumAxes</A 606 > -- Get the number of joystick axes</DT 607 ><DT 608 ><A 609 HREF="sdljoysticknumballs.html" 610 >SDL_JoystickNumBalls</A 611 > -- Get the number of joystick trackballs</DT 612 ><DT 613 ><A 614 HREF="sdljoysticknumhats.html" 615 >SDL_JoystickNumHats</A 616 > -- Get the number of joystick hats</DT 617 ><DT 618 ><A 619 HREF="sdljoysticknumbuttons.html" 620 >SDL_JoystickNumButtons</A 621 > -- Get the number of joysitck buttons</DT 622 ><DT 623 ><A 624 HREF="sdljoystickupdate.html" 625 >SDL_JoystickUpdate</A 626 > -- Updates the state of all joysticks</DT 627 ><DT 628 ><A 629 HREF="sdljoystickgetaxis.html" 630 >SDL_JoystickGetAxis</A 631 > -- Get the current state of an axis</DT 632 ><DT 633 ><A 634 HREF="sdljoystickgethat.html" 635 >SDL_JoystickGetHat</A 636 > -- Get the current state of a joystick hat</DT 637 ><DT 638 ><A 639 HREF="sdljoystickgetbutton.html" 640 >SDL_JoystickGetButton</A 641 > -- Get the current state of a given button on a given joystick</DT 642 ><DT 643 ><A 644 HREF="sdljoystickgetball.html" 645 >SDL_JoystickGetBall</A 646 > -- Get relative trackball motion</DT 647 ><DT 648 ><A 649 HREF="sdljoystickclose.html" 650 >SDL_JoystickClose</A 651 > -- Closes a previously opened joystick</DT 652 ></DL 653 ></DD 654 ><DT 655 >10. <A 656 HREF="audio.html" 657 >Audio</A 658 ></DT 659 ><DD 660 ><DL 661 ><DT 662 ><A 663 HREF="sdlaudiospec.html" 664 >SDL_AudioSpec</A 665 > -- Audio Specification Structure</DT 666 ><DT 667 ><A 668 HREF="sdlopenaudio.html" 669 >SDL_OpenAudio</A 670 > -- Opens the audio device with the desired parameters.</DT 671 ><DT 672 ><A 673 HREF="sdlpauseaudio.html" 674 >SDL_PauseAudio</A 675 > -- Pauses and unpauses the audio callback processing</DT 676 ><DT 677 ><A 678 HREF="sdlgetaudiostatus.html" 679 >SDL_GetAudioStatus</A 680 > -- Get the current audio state</DT 681 ><DT 682 ><A 683 HREF="sdlloadwav.html" 684 >SDL_LoadWAV</A 685 > -- Load a WAVE file</DT 686 ><DT 687 ><A 688 HREF="sdlfreewav.html" 689 >SDL_FreeWAV</A 690 > -- Frees previously opened WAV data</DT 691 ><DT 692 ><A 693 HREF="sdlaudiocvt.html" 694 >SDL_AudioCVT</A 695 > -- Audio Conversion Structure</DT 696 ><DT 697 ><A 698 HREF="sdlbuildaudiocvt.html" 699 >SDL_BuildAudioCVT</A 700 > -- Initializes a SDL_AudioCVT structure for conversion</DT 701 ><DT 702 ><A 703 HREF="sdlconvertaudio.html" 704 >SDL_ConvertAudio</A 705 > -- Convert audio data to a desired audio format.</DT 706 ><DT 707 ><A 708 HREF="sdlmixaudio.html" 709 >SDL_MixAudio</A 710 > -- Mix audio data</DT 711 ><DT 712 ><A 713 HREF="sdllockaudio.html" 714 >SDL_LockAudio</A 715 > -- Lock out the callback function</DT 716 ><DT 717 ><A 718 HREF="sdlunlockaudio.html" 719 >SDL_UnlockAudio</A 720 > -- Unlock the callback function</DT 721 ><DT 722 ><A 723 HREF="sdlcloseaudio.html" 724 >SDL_CloseAudio</A 725 > -- Shuts down audio processing and closes the audio device.</DT 726 ></DL 727 ></DD 728 ><DT 729 >11. <A 730 HREF="cdrom.html" 731 >CD-ROM</A 732 ></DT 733 ><DD 734 ><DL 735 ><DT 736 ><A 737 HREF="sdlcdnumdrives.html" 738 >SDL_CDNumDrives</A 739 > -- Returns the number of CD-ROM drives on the system.</DT 740 ><DT 741 ><A 742 HREF="sdlcdname.html" 743 >SDL_CDName</A 744 > -- Returns a human-readable, system-dependent identifier for the CD-ROM.</DT 745 ><DT 746 ><A 747 HREF="sdlcdopen.html" 748 >SDL_CDOpen</A 749 > -- Opens a CD-ROM drive for access.</DT 750 ><DT 751 ><A 752 HREF="sdlcdstatus.html" 753 >SDL_CDStatus</A 754 > -- Returns the current status of the given drive.</DT 755 ><DT 756 ><A 757 HREF="sdlcdplay.html" 758 >SDL_CDPlay</A 759 > -- Play a CD</DT 760 ><DT 761 ><A 762 HREF="sdlcdplaytracks.html" 763 >SDL_CDPlayTracks</A 764 > -- Play the given CD track(s)</DT 765 ><DT 766 ><A 767 HREF="sdlcdpause.html" 768 >SDL_CDPause</A 769 > -- Pauses a CDROM</DT 770 ><DT 771 ><A 772 HREF="sdlcdresume.html" 773 >SDL_CDResume</A 774 > -- Resumes a CDROM</DT 775 ><DT 776 ><A 777 HREF="sdlcdstop.html" 778 >SDL_CDStop</A 779 > -- Stops a CDROM</DT 780 ><DT 781 ><A 782 HREF="sdlcdeject.html" 783 >SDL_CDEject</A 784 > -- Ejects a CDROM</DT 785 ><DT 786 ><A 787 HREF="sdlcdclose.html" 788 >SDL_CDClose</A 789 > -- Closes a SDL_CD handle</DT 790 ><DT 791 ><A 792 HREF="sdlcd.html" 793 >SDL_CD</A 794 > -- CDROM Drive Information</DT 795 ><DT 796 ><A 797 HREF="sdlcdtrack.html" 798 >SDL_CDtrack</A 799 > -- CD Track Information Structure</DT 800 ></DL 801 ></DD 802 ><DT 803 >12. <A 804 HREF="thread.html" 805 >Multi-threaded Programming</A 806 ></DT 807 ><DD 808 ><DL 809 ><DT 810 ><A 811 HREF="sdlcreatethread.html" 812 >SDL_CreateThread</A 813 > -- Creates a new thread of execution that shares its parent's properties.</DT 814 ><DT 815 ><A 816 HREF="sdlthreadid.html" 817 >SDL_ThreadID</A 818 > -- Get the 32-bit thread identifier for the current thread.</DT 819 ><DT 820 ><A 821 HREF="sdlgetthreadid.html" 822 >SDL_GetThreadID</A 823 > -- Get the SDL thread ID of a SDL_Thread</DT 824 ><DT 825 ><A 826 HREF="sdlwaitthread.html" 827 >SDL_WaitThread</A 828 > -- Wait for a thread to finish.</DT 829 ><DT 830 ><A 831 HREF="sdlkillthread.html" 832 >SDL_KillThread</A 833 > -- Gracelessly terminates the thread.</DT 834 ><DT 835 ><A 836 HREF="sdlcreatemutex.html" 837 >SDL_CreateMutex</A 838 > -- Create a mutex</DT 839 ><DT 840 ><A 841 HREF="sdldestroymutex.html" 842 >SDL_DestroyMutex</A 843 > -- Destroy a mutex</DT 844 ><DT 845 ><A 846 HREF="sdlmutexp.html" 847 >SDL_mutexP</A 848 > -- Lock a mutex</DT 849 ><DT 850 ><A 851 HREF="sdlmutexv.html" 852 >SDL_mutexV</A 853 > -- Unlock a mutex</DT 854 ><DT 855 ><A 856 HREF="sdlcreatesemaphore.html" 857 >SDL_CreateSemaphore</A 858 > -- Creates a new semaphore and assigns an initial value to it.</DT 859 ><DT 860 ><A 861 HREF="sdldestroysemaphore.html" 862 >SDL_DestroySemaphore</A 863 > -- Destroys a semaphore that was created by <A 864 HREF="sdlcreatesemaphore.html" 865 >SDL_CreateSemaphore</A 866 >.</DT 867 ><DT 868 ><A 869 HREF="sdlsemwait.html" 870 >SDL_SemWait</A 871 > -- Lock a semaphore and suspend the thread if the semaphore value is zero.</DT 872 ><DT 873 ><A 874 HREF="sdlsemtrywait.html" 875 >SDL_SemTryWait</A 876 > -- Attempt to lock a semaphore but don't suspend the thread.</DT 877 ><DT 878 ><A 879 HREF="sdlsemwaittimeout.html" 880 >SDL_SemWaitTimeout</A 881 > -- Lock a semaphore, but only wait up to a specified maximum time.</DT 882 ><DT 883 ><A 884 HREF="sdlsempost.html" 885 >SDL_SemPost</A 886 > -- Unlock a semaphore.</DT 887 ><DT 888 ><A 889 HREF="sdlsemvalue.html" 890 >SDL_SemValue</A 891 > -- Return the current value of a semaphore.</DT 892 ><DT 893 ><A 894 HREF="sdlcreatecond.html" 895 >SDL_CreateCond</A 896 > -- Create a condition variable</DT 897 ><DT 898 ><A 899 HREF="sdldestroycond.html" 900 >SDL_DestroyCond</A 901 > -- Destroy a condition variable</DT 902 ><DT 903 ><A 904 HREF="sdlcondsignal.html" 905 >SDL_CondSignal</A 906 > -- Restart a thread wait on a condition variable</DT 907 ><DT 908 ><A 909 HREF="sdlcondbroadcast.html" 910 >SDL_CondBroadcast</A 911 > -- Restart all threads waiting on a condition variable</DT 912 ><DT 913 ><A 914 HREF="sdlcondwait.html" 915 >SDL_CondWait</A 916 > -- Wait on a condition variable</DT 917 ><DT 918 ><A 919 HREF="sdlcondwaittimeout.html" 920 >SDL_CondWaitTimeout</A 921 > -- Wait on a condition variable, with timeout</DT 922 ></DL 923 ></DD 924 ><DT 925 >13. <A 926 HREF="time.html" 927 >Time</A 928 ></DT 929 ><DD 930 ><DL 931 ><DT 932 ><A 933 HREF="sdlgetticks.html" 934 >SDL_GetTicks</A 935 > -- Get the number of milliseconds since the SDL library initialization.</DT 936 ><DT 937 ><A 938 HREF="sdldelay.html" 939 >SDL_Delay</A 940 > -- Wait a specified number of milliseconds before returning.</DT 941 ><DT 942 ><A 943 HREF="sdladdtimer.html" 944 >SDL_AddTimer</A 945 > -- Add a timer which will call a callback after the specified number of milliseconds has 946 elapsed.</DT 947 ><DT 948 ><A 949 HREF="sdlremovetimer.html" 950 >SDL_RemoveTimer</A 951 > -- Remove a timer which was added with 952 <A 953 HREF="sdladdtimer.html" 954 >SDL_AddTimer</A 955 >.</DT 956 ><DT 957 ><A 958 HREF="sdlsettimer.html" 959 >SDL_SetTimer</A 960 > -- Set a callback to run after the specified number of milliseconds has 961 elapsed.</DT 962 ></DL 963 ></DD 964 ></DL 965 ></DD 966 ></DL 967 ></DIV 968 ><DIV 969 CLASS="LOT" 970 ><DL 971 CLASS="LOT" 972 ><DT 973 ><B 974 >List of Tables</B 975 ></DT 976 ><DT 977 >8-1. <A 978 HREF="sdlkey.html#AEN4720" 979 >SDL Keysym definitions</A 980 ></DT 981 ><DT 982 >8-2. <A 983 HREF="sdlkey.html#SDLMOD" 984 >SDL modifier definitions</A 985 ></DT 986 ></DL 987 ></DIV 988 ><DIV 989 CLASS="LOT" 990 ><DL 991 CLASS="LOT" 992 ><DT 993 ><B 994 >List of Examples</B 995 ></DT 996 ><DT 997 >1-1. <A 998 HREF="guidebasicsinit.html#AEN60" 999 >Initializing SDL</A 1000 ></DT 1001 ><DT 1002 >2-1. <A 1003 HREF="guidevideo.html#AEN71" 1004 >Initializing the Video Display</A 1005 ></DT 1006 ><DT 1007 >2-2. <A 1008 HREF="guidevideo.html#AEN77" 1009 >Initializing the Best Video Mode</A 1010 ></DT 1011 ><DT 1012 >2-3. <A 1013 HREF="guidevideo.html#AEN83" 1014 >Loading and Displaying a BMP File</A 1015 ></DT 1016 ><DT 1017 >2-4. <A 1018 HREF="guidevideo.html#AEN90" 1019 >getpixel()</A 1020 ></DT 1021 ><DT 1022 >2-5. <A 1023 HREF="guidevideo.html#AEN93" 1024 >putpixel()</A 1025 ></DT 1026 ><DT 1027 >2-6. <A 1028 HREF="guidevideo.html#AEN97" 1029 >Using putpixel()</A 1030 ></DT 1031 ><DT 1032 >2-7. <A 1033 HREF="guidevideoopengl.html#AEN114" 1034 >Initializing SDL with OpenGL</A 1035 ></DT 1036 ><DT 1037 >2-8. <A 1038 HREF="guidevideoopengl.html#AEN128" 1039 >SDL and OpenGL</A 1040 ></DT 1041 ><DT 1042 >3-1. <A 1043 HREF="guideinput.html#AEN141" 1044 >Initializing SDL with Joystick Support</A 1045 ></DT 1046 ><DT 1047 >3-2. <A 1048 HREF="guideinput.html#AEN154" 1049 >Querying the Number of Available Joysticks</A 1050 ></DT 1051 ><DT 1052 >3-3. <A 1053 HREF="guideinput.html#AEN183" 1054 >Opening a Joystick</A 1055 ></DT 1056 ><DT 1057 >3-4. <A 1058 HREF="guideinput.html#AEN191" 1059 >Joystick Axis Events</A 1060 ></DT 1061 ><DT 1062 >3-5. <A 1063 HREF="guideinput.html#AEN195" 1064 >More Joystick Axis Events</A 1065 ></DT 1066 ><DT 1067 >3-6. <A 1068 HREF="guideinput.html#AEN203" 1069 >Joystick Button Events</A 1070 ></DT 1071 ><DT 1072 >3-7. <A 1073 HREF="guideinput.html#AEN217" 1074 >Joystick Ball Events</A 1075 ></DT 1076 ><DT 1077 >3-8. <A 1078 HREF="guideinput.html#AEN244" 1079 >Joystick Hat Events</A 1080 ></DT 1081 ><DT 1082 >3-9. <A 1083 HREF="guideinput.html#AEN265" 1084 >Querying Joystick Characteristics</A 1085 ></DT 1086 ><DT 1087 >3-10. <A 1088 HREF="guideinputkeyboard.html#AEN334" 1089 >Reading Keyboard Events</A 1090 ></DT 1091 ><DT 1092 >3-11. <A 1093 HREF="guideinputkeyboard.html#AEN351" 1094 >Interpreting Key Event Information</A 1095 ></DT 1096 ><DT 1097 >3-12. <A 1098 HREF="guideinputkeyboard.html#AEN363" 1099 >Proper Game Movement</A 1100 ></DT 1101 ></DL 1102 ></DIV 1103 ></DIV 1104 ><DIV 1105 CLASS="NAVFOOTER" 1106 ><HR 1107 ALIGN="LEFT" 1108 WIDTH="100%"><TABLE 1109 SUMMARY="Footer navigation table" 1110 WIDTH="100%" 1111 BORDER="0" 1112 CELLPADDING="0" 1113 CELLSPACING="0" 1114 ><TR 1115 ><TD 1116 WIDTH="33%" 1117 ALIGN="left" 1118 VALIGN="top" 1119 > </TD 1120 ><TD 1121 WIDTH="34%" 1122 ALIGN="center" 1123 VALIGN="top" 1124 > </TD 1125 ><TD 1126 WIDTH="33%" 1127 ALIGN="right" 1128 VALIGN="top" 1129 ><A 1130 HREF="guide.html" 1131 ACCESSKEY="N" 1132 >Next</A 1133 ></TD 1134 ></TR 1135 ><TR 1136 ><TD 1137 WIDTH="33%" 1138 ALIGN="left" 1139 VALIGN="top" 1140 > </TD 1141 ><TD 1142 WIDTH="34%" 1143 ALIGN="center" 1144 VALIGN="top" 1145 > </TD 1146 ><TD 1147 WIDTH="33%" 1148 ALIGN="right" 1149 VALIGN="top" 1150 >SDL Guide</TD 1151 ></TR 1152 ></TABLE 1153 ></DIV 1154 ></BODY 1155 ></HTML 1156 >