0
|
1 .TH "SDL_CDStatus" "3" "Mon 12 Mar 2001, 01:03" "SDL" "SDL API Reference"
|
|
2 .SH "NAME"
|
|
3 SDL_CDStatus\- Returns the current status of the given drive\&.
|
|
4 .SH "SYNOPSIS"
|
|
5 .PP
|
|
6 \fB#include "SDL\&.h"
|
|
7 .sp
|
|
8 \fBCDstatus \fBSDL_CDStatus\fP\fR(\fBSDL_CD *cdrom\fR);
|
|
9 \fB/* Given a status, returns true if there\&'s a disk in the drive */
|
|
10 #define CD_INDRIVE(status) ((int)status > 0)
|
|
11 .SH "DESCRIPTION"
|
|
12 .PP
|
|
13 This function returns the current status of the given drive\&. Status is described like so:
|
|
14 .PP
|
|
15 .nf
|
|
16 \f(CWtypedef enum {
|
|
17 CD_TRAYEMPTY,
|
|
18 CD_STOPPED,
|
|
19 CD_PLAYING,
|
|
20 CD_PAUSED,
|
|
21 CD_ERROR = -1
|
|
22 } CDstatus;\fR
|
|
23 .fi
|
|
24 .PP
|
|
25 .PP
|
|
26 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\&.
|
|
27 .PP
|
|
28 The macro \fBCD_INDRIVE\fP is provided for convenience, and given a status returns true if there\&'s a disk in the drive\&.
|
|
29 .PP
|
|
30 .RS
|
|
31 \fBNote:
|
|
32 .PP
|
|
33 \fBSDL_CDStatus\fP also updates the \fI\fBSDL_CD\fR\fR structure passed to it\&.
|
|
34 .RE
|
|
35 .SH "EXAMPLE"
|
|
36 .PP
|
|
37 .nf
|
|
38 \f(CWint playTrack(int track)
|
|
39 {
|
|
40 int playing = 0;
|
|
41
|
|
42 if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) {
|
|
43 /* clamp to the actual number of tracks on the CD */
|
|
44 if (track >= cdrom->numtracks) {
|
|
45 track = cdrom->numtracks-1;
|
|
46 }
|
|
47
|
|
48 if ( SDL_CDPlayTracks(cdrom, track, 0, 1, 0) == 0 ) {
|
|
49 playing = 1;
|
|
50 }
|
|
51 }
|
|
52 return playing;
|
|
53 }\fR
|
|
54 .fi
|
|
55 .PP
|
|
56 .SH "SEE ALSO"
|
|
57 .PP
|
|
58 \fI\fBSDL_CD\fP\fR
|
|
59 ...\" created by instant / docbook-to-man, Mon 12 Mar 2001, 01:03
|