1 /* -*- tab-width: 8; c-basic-offset: 4 -*- */
3 * Sample MCI CDAUDIO Wine Driver for Linux
5 * Copyright 1994 Martin Ayotte
6 * Copyright 1999 Eric Pouech
9 #ifndef __WINE_CDROM_H__
10 #define __WINE_CDROM_H__
16 #ifdef HAVE_LINUX_CDROM_H
17 # include <linux/cdrom.h>
19 #ifdef HAVE_LINUX_UCDROM_H
20 # include <linux/ucdrom.h>
22 #ifdef HAVE_SYS_CDIO_H
23 # include <sys/cdio.h>
29 struct cdrom_subchnl sc
;
30 #elif defined(__FreeBSD__) || defined(__NetBSD__)
31 struct cd_sub_channel_info sc
;
33 /* those data reflect the cdaudio structure and
34 * don't change while playing
44 /* those data change while playing */
50 #define WINE_CDA_DONTKNOW 0x00
51 #define WINE_CDA_NOTREADY 0x01
52 #define WINE_CDA_OPEN 0x02
53 #define WINE_CDA_PLAY 0x03
54 #define WINE_CDA_STOP 0x04
55 #define WINE_CDA_PAUSE 0x05
57 int CDAUDIO_Open(WINE_CDAUDIO
* wcda
);
58 int CDAUDIO_Close(WINE_CDAUDIO
* wcda
);
59 int CDAUDIO_Reset(WINE_CDAUDIO
* wcda
);
60 int CDAUDIO_Play(WINE_CDAUDIO
* wcda
, DWORD start
, DWORD stop
);
61 int CDAUDIO_Stop(WINE_CDAUDIO
* wcda
);
62 int CDAUDIO_Pause(WINE_CDAUDIO
* wcda
, int pauseOn
);
63 int CDAUDIO_Seek(WINE_CDAUDIO
* wcda
, DWORD at
);
64 int CDAUDIO_SetDoor(WINE_CDAUDIO
* wcda
, int open
);
65 UINT16
CDAUDIO_GetNumberOfTracks(WINE_CDAUDIO
* wcda
);
66 BOOL
CDAUDIO_GetTracksInfo(WINE_CDAUDIO
* wcda
);
67 BOOL
CDAUDIO_GetCDStatus(WINE_CDAUDIO
* wcda
);
69 #define CDFRAMES_PERSEC 75
70 #define SECONDS_PERMIN 60
71 #define CDFRAMES_PERMIN ((CDFRAMES_PERSEC) * (SECONDS_PERMIN))
73 #ifndef CDROM_DATA_TRACK
74 #define CDROM_DATA_TRACK 0x04