Moved dll-specific make rules to a separate Makedll.rules file.
[wine] / dlls / msacm32 / format.c
1 /*
2  *      MSACM32 library
3  *
4  *      Copyright 1998  Patrik Stridvall
5  */
6
7 #include "winbase.h"
8 #include "winerror.h"
9 #include "windef.h"
10 #include "debugtools.h"
11 #include "mmsystem.h"
12 #include "msacm.h"
13 #include "msacmdrv.h"
14
15 DEFAULT_DEBUG_CHANNEL(msacm)
16
17 /***********************************************************************
18  *           acmFormatChooseA (MSACM32.23)
19  */
20 MMRESULT WINAPI acmFormatChooseA(
21   PACMFORMATCHOOSEA pafmtc)
22 {
23   FIXME("(%p): stub\n", pafmtc);
24   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
25   return MMSYSERR_ERROR;
26 }
27
28 /***********************************************************************
29  *           acmFormatChooseW (MSACM32.24)
30  */
31 MMRESULT WINAPI acmFormatChooseW(
32   PACMFORMATCHOOSEW pafmtc)
33 {
34   FIXME("(%p): stub\n", pafmtc);
35   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
36   return MMSYSERR_ERROR;
37 }
38
39 /***********************************************************************
40  *           acmFormatDetailsA (MSACM32.25)
41  */
42 MMRESULT WINAPI acmFormatDetailsA(
43   HACMDRIVER had, PACMFORMATDETAILSA pafd, DWORD fdwDetails)
44 {
45   if(fdwDetails & ~(ACM_FORMATDETAILSF_FORMAT))
46     return MMSYSERR_INVALFLAG;
47
48   /* FIXME
49    *   How does the driver know if the ANSI or
50    *   the UNICODE variant of PACMFORMATDETAILS is used?
51    *   It might check cbStruct or does it only accept ANSI.
52    */
53   return (MMRESULT) acmDriverMessage(
54     had, ACMDM_FORMAT_DETAILS,
55     (LPARAM) pafd,  (LPARAM) fdwDetails
56   );
57 }
58
59 /***********************************************************************
60  *           acmFormatDetailsW (MSACM32.26)
61  */
62 MMRESULT WINAPI acmFormatDetailsW(
63   HACMDRIVER had, PACMFORMATDETAILSW pafd, DWORD fdwDetails)
64 {
65   FIXME("(0x%08x, %p, %ld): stub\n", had, pafd, fdwDetails);
66   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
67   return MMSYSERR_ERROR;
68 }
69
70 /***********************************************************************
71  *           acmFormatEnumA (MSACM32.27)
72  */
73 MMRESULT WINAPI acmFormatEnumA(
74   HACMDRIVER had, PACMFORMATDETAILSA pafd,
75   ACMFORMATENUMCBA fnCallback, DWORD dwInstance, DWORD fdwEnum)
76 {
77   FIXME("(0x%08x, %p, %p, %ld, %ld): stub\n",
78     had, pafd, fnCallback, dwInstance, fdwEnum
79   );
80   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
81   return MMSYSERR_ERROR;
82 }
83
84 /***********************************************************************
85  *           acmFormatEnumW (MSACM32.28)
86  */
87 MMRESULT WINAPI acmFormatEnumW(
88   HACMDRIVER had, PACMFORMATDETAILSW pafd,
89   ACMFORMATENUMCBW fnCallback, DWORD dwInstance,  DWORD fdwEnum)
90 {
91   FIXME("(0x%08x, %p, %p, %ld, %ld): stub\n",
92     had, pafd, fnCallback, dwInstance, fdwEnum
93   );
94   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
95   return MMSYSERR_ERROR;
96 }
97
98 /***********************************************************************
99  *           acmFormatSuggest (MSACM32.29)
100  */
101 MMRESULT WINAPI acmFormatSuggest(
102   HACMDRIVER had, PWAVEFORMATEX pwfxSrc, PWAVEFORMATEX pwfxDst,
103   DWORD cbwfxDst, DWORD fdwSuggest)
104 {
105   FIXME("(0x%08x, %p, %p, %ld, %ld): stub\n",
106     had, pwfxSrc, pwfxDst, cbwfxDst, fdwSuggest
107   );
108   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
109   return MMSYSERR_ERROR;
110 }
111
112 /***********************************************************************
113  *           acmFormatTagDetailsA (MSACM32.30)
114  */
115 MMRESULT WINAPI acmFormatTagDetailsA(
116   HACMDRIVER had, PACMFORMATTAGDETAILSA paftd, DWORD fdwDetails)
117 {
118   if(fdwDetails & 
119      ~(ACM_FORMATTAGDETAILSF_FORMATTAG|ACM_FORMATTAGDETAILSF_LARGESTSIZE))
120     return MMSYSERR_INVALFLAG;
121
122   /* FIXME
123    *   How does the driver know if the ANSI or
124    *   the UNICODE variant of PACMFORMATTAGDETAILS is used?
125    *   It might check cbStruct or does it only accept ANSI.
126    */
127   return (MMRESULT) acmDriverMessage(
128     had, ACMDM_FORMATTAG_DETAILS,
129     (LPARAM) paftd,  (LPARAM) fdwDetails
130   );
131 }
132
133 /***********************************************************************
134  *           acmFormatTagDetailsW (MSACM32.31)
135  */
136 MMRESULT WINAPI acmFormatTagDetailsW(
137   HACMDRIVER had, PACMFORMATTAGDETAILSW paftd, DWORD fdwDetails)
138 {
139   FIXME("(0x%08x, %p, %ld): stub\n", had, paftd, fdwDetails);
140   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
141   return MMSYSERR_ERROR;
142 }
143
144 /***********************************************************************
145  *           acmFormatTagEnumA (MSACM32.32)
146  */
147 MMRESULT WINAPI acmFormatTagEnumA(
148   HACMDRIVER had, PACMFORMATTAGDETAILSA paftd,
149   ACMFORMATTAGENUMCBA fnCallback, DWORD dwInstance, DWORD fdwEnum)
150 {
151   FIXME("(0x%08x, %p, %p, %ld, %ld): stub\n",
152     had, paftd, fnCallback, dwInstance, fdwEnum
153   ); 
154   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
155   return MMSYSERR_ERROR;
156 }
157
158 /***********************************************************************
159  *           acmFormatTagEnumW (MSACM32.33)
160  */
161 MMRESULT WINAPI acmFormatTagEnumW(
162   HACMDRIVER had, PACMFORMATTAGDETAILSW paftd,
163   ACMFORMATTAGENUMCBW fnCallback, DWORD dwInstance, DWORD fdwEnum)
164 {
165   FIXME("(0x%08x, %p, %p, %ld, %ld): stub\n",
166     had, paftd, fnCallback, dwInstance, fdwEnum
167   ); 
168   SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
169   return MMSYSERR_ERROR;
170 }