You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
273 lines
3.7 KiB
273 lines
3.7 KiB
<HTML |
|
><HEAD |
|
><TITLE |
|
>SDL_CDStatus</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="CD-ROM" |
|
HREF="cdrom.html"><LINK |
|
REL="PREVIOUS" |
|
TITLE="SDL_CDOpen" |
|
HREF="sdlcdopen.html"><LINK |
|
REL="NEXT" |
|
TITLE="SDL_CDPlay" |
|
HREF="sdlcdplay.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="sdlcdopen.html" |
|
ACCESSKEY="P" |
|
>Prev</A |
|
></TD |
|
><TD |
|
WIDTH="80%" |
|
ALIGN="center" |
|
VALIGN="bottom" |
|
></TD |
|
><TD |
|
WIDTH="10%" |
|
ALIGN="right" |
|
VALIGN="bottom" |
|
><A |
|
HREF="sdlcdplay.html" |
|
ACCESSKEY="N" |
|
>Next</A |
|
></TD |
|
></TR |
|
></TABLE |
|
><HR |
|
ALIGN="LEFT" |
|
WIDTH="100%"></DIV |
|
><H1 |
|
><A |
|
NAME="SDLCDSTATUS" |
|
></A |
|
>SDL_CDStatus</H1 |
|
><DIV |
|
CLASS="REFNAMEDIV" |
|
><A |
|
NAME="AEN7308" |
|
></A |
|
><H2 |
|
>Name</H2 |
|
>SDL_CDStatus -- Returns the current status of the given drive.</DIV |
|
><DIV |
|
CLASS="REFSYNOPSISDIV" |
|
><A |
|
NAME="AEN7311" |
|
></A |
|
><H2 |
|
>Synopsis</H2 |
|
><DIV |
|
CLASS="FUNCSYNOPSIS" |
|
><A |
|
NAME="AEN7312" |
|
></A |
|
><P |
|
></P |
|
><PRE |
|
CLASS="FUNCSYNOPSISINFO" |
|
>#include "SDL.h"</PRE |
|
><P |
|
><CODE |
|
><CODE |
|
CLASS="FUNCDEF" |
|
>CDstatus <B |
|
CLASS="FSFUNC" |
|
>SDL_CDStatus</B |
|
></CODE |
|
>(SDL_CD *cdrom);</CODE |
|
></P |
|
><PRE |
|
CLASS="FUNCSYNOPSISINFO" |
|
>/* Given a status, returns true if there's a disk in the drive */ |
|
#define CD_INDRIVE(status) ((int)status > 0)</PRE |
|
><P |
|
></P |
|
></DIV |
|
></DIV |
|
><DIV |
|
CLASS="REFSECT1" |
|
><A |
|
NAME="AEN7319" |
|
></A |
|
><H2 |
|
>Description</H2 |
|
><P |
|
>This function returns the current status of the given drive. Status is described like so: |
|
<PRE |
|
CLASS="PROGRAMLISTING" |
|
>typedef enum { |
|
CD_TRAYEMPTY, |
|
CD_STOPPED, |
|
CD_PLAYING, |
|
CD_PAUSED, |
|
CD_ERROR = -1 |
|
} CDstatus;</PRE |
|
></P |
|
><P |
|
>If the drive has a CD in it, the table of contents of the CD and current |
|
play position of the CD will be stored in the SDL_CD structure.</P |
|
><P |
|
>The macro <TT |
|
CLASS="LITERAL" |
|
>CD_INDRIVE</TT |
|
> is provided for convenience, |
|
and given a status returns true if there's a disk in the drive.</P |
|
><DIV |
|
CLASS="NOTE" |
|
><BLOCKQUOTE |
|
CLASS="NOTE" |
|
><P |
|
><B |
|
>Note: </B |
|
><TT |
|
CLASS="FUNCTION" |
|
>SDL_CDStatus</TT |
|
> also updates the <A |
|
HREF="sdlcd.html" |
|
><SPAN |
|
CLASS="STRUCTNAME" |
|
>SDL_CD</SPAN |
|
></A |
|
> structure passed to it.</P |
|
></BLOCKQUOTE |
|
></DIV |
|
></DIV |
|
><DIV |
|
CLASS="REFSECT1" |
|
><A |
|
NAME="AEN7331" |
|
></A |
|
><H2 |
|
>Example</H2 |
|
><PRE |
|
CLASS="PROGRAMLISTING" |
|
>int playTrack(int track) |
|
{ |
|
int playing = 0; |
|
|
|
if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) { |
|
/* clamp to the actual number of tracks on the CD */ |
|
if (track >= cdrom->numtracks) { |
|
track = cdrom->numtracks-1; |
|
} |
|
|
|
if ( SDL_CDPlayTracks(cdrom, track, 0, 1, 0) == 0 ) { |
|
playing = 1; |
|
} |
|
} |
|
return playing; |
|
}</PRE |
|
></DIV |
|
><DIV |
|
CLASS="REFSECT1" |
|
><A |
|
NAME="AEN7334" |
|
></A |
|
><H2 |
|
>See Also</H2 |
|
><P |
|
><A |
|
HREF="sdlcd.html" |
|
><TT |
|
CLASS="FUNCTION" |
|
>SDL_CD</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="sdlcdopen.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="sdlcdplay.html" |
|
ACCESSKEY="N" |
|
>Next</A |
|
></TD |
|
></TR |
|
><TR |
|
><TD |
|
WIDTH="33%" |
|
ALIGN="left" |
|
VALIGN="top" |
|
>SDL_CDOpen</TD |
|
><TD |
|
WIDTH="34%" |
|
ALIGN="center" |
|
VALIGN="top" |
|
><A |
|
HREF="cdrom.html" |
|
ACCESSKEY="U" |
|
>Up</A |
|
></TD |
|
><TD |
|
WIDTH="33%" |
|
ALIGN="right" |
|
VALIGN="top" |
|
>SDL_CDPlay</TD |
|
></TR |
|
></TABLE |
|
></DIV |
|
></BODY |
|
></HTML |
|
> |