Tao.Sdl SDK Documentation

Sdl.SDL_CDOpen Method 

Opens a CD-ROM drive for access.

[Visual Basic]
Public Shared Function SDL_CDOpen( _
   ByVal drive As Integer _
) As IntPtr
[C#]
public static IntPtr SDL_CDOpen(
   int drive
);

Parameters

drive

Return Value

It returns a SDL_CD structure on success, or NULL if the drive was invalid or busy.

Remarks

Opens a CD-ROM drive for access. It returns a Sdl.SDL_CD structure on success, or NULL if the drive was invalid or busy. This newly opened CD-ROM becomes the default CD used when other CD functions are passed a NULL CD-ROM handle.

Drives are numbered starting with 0. Drive 0 is the system default CD-ROM.

Binds to C-function in SDL_cdrom.h

SDL_CD *SDL_CDOpen(int drive)
              

Example

 SDL_CD *cdrom;
        int cur_track;
        int min, sec, frame;
        SDL_Init(SDL_INIT_CDROM);
        atexit(SDL_Quit);

        /* Check for CD drives */
        if(!SDL_CDNumDrives())
            {
        /* None found */
        fprintf(stderr, "No CDROM devices available\n");
        exit(-1);
    }

    /* Open the default drive */
    cdrom=SDL_CDOpen(0);

    /* Did if open? Check if cdrom is NULL */
    if(!cdrom)
{
    fprintf(stderr, "Couldn't open drive: %s\n", SDL_GetError());
    exit(-1);
}

    /* Print Volume info */
    printf("Name: %s\n", SDL_CDName(0));
    printf("Tracks: %d\n", cdrom->numtracks);
    for(cur_track=0;cur_track < cdrom->numtracks; cur_track++)
{
    FRAMES_TO_MSF(cdrom->track[cur_track].length, &min, &sec, &frame);
    printf("\tTrack %d: Length %d:%d\n", cur_track, min, sec);
}

SDL_CDClose(cdrom);

See Also

Sdl Class | Tao.Sdl Namespace | Sdl.SDL_CD | Sdl.SDL_CDtrack | SDL_CDClose