| <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 |
| > |