NAME

SDL::CD -- SDL Bindings for structure SDL_CD

CATEGORY

Core, CDROM, Structure

SYNOPSIS

 use SDL;
 use SDL::CDROM;
 use SDL::CD;

 SDL::init(SDL_INIT_CDROM);

 my $drives = SDL::CDROM::num_drives;
 
 if( $drives > 0 )
 {
  my $CD = SDL::CD->new( 0 );
 
   if($CD != NULL)
   {
	... 
   }
  
 }
 
 SDL::quit();

METHOD

new( $drive )

my $CD = SDL::CD->new( $drive )

Makes a new SDL::CD object. Returns NULL if the drive is busy or inaccessible.

status

my $status = $CD->status(); 

Returns the current status of the CD tray

returns

CD_TRAYEMPTY
CD_STOPPED
CD_PLAYING
CD_PAUSED
CD_ERROR = -1

play_tracks

$CD->play_tracks($start_track, $start_frame, $ntracks, $nframes)

Plays the given SDL::CD starting at track $start_track, for $ntracks tracks.

$start_frame is the frame offset, from the beginning of the $start_track, at which to start. $nframes is the frame offset, from the beginning of the last track ($start_track+$ntracks), at which to end playing.

play_tracks() should only be called after calling SDL_CDStatus to get track information about the CD use $CD->status().

Note: Data tracks are ignored.

Returns

0, or -1 if there was an error.

play

$CD->play($start, $length );

Plays the given SDL::CD , starting a frame $start for $length frames.

Returns

0 on success, -1 on error

pause

$CD->pause();

Pauses play on CD

Returns

Returns 0 on success, or -1 on an error.

resume

$CD->resume();

Returns

Returns 0 on success, or -1 on an error.

stop

$CD->stop();

Stops play on the CD.

Returns

Returns 0 on success, or -1 on an error.

eject

$CD->eject();

Ejects the CD.

Returns

Returns 0 on success, or -1 on an error.

id

$CD->id();

Private drive identifier

num_tracks

$CD->num_tracks();

Number of tracks on the CD

cur_track

$CD->cur_track();

Current track on the CD;

track

my $track =  $CD->track($number);

Retrives track description of track $number in CD. See SDL::CDTrack.

SEE ALSO

SDL::CDROM, SDL::CDTrack