Changeset 88462 in vbox
- Timestamp:
- Apr 12, 2021 10:59:57 AM (4 years ago)
- Location:
- trunk/src/VBox/Devices/Audio
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Audio/DrvHostAudioDebug.cpp
r88457 r88462 183 183 184 184 /** 185 * @ interface_method_impl{PDMIHOSTAUDIO,pfnStreamEnable} 186 */ 187 static DECLCALLBACK(int) drvHostDebugAudioHA_StreamControlStub(PPDMIHOSTAUDIO pInterface, PPDMAUDIOBACKENDSTREAM pStream) 188 { 189 RT_NOREF(pInterface, pStream); 190 return VINF_SUCCESS; 191 } 192 193 194 /** 185 195 * @interface_method_impl{PDMIHOSTAUDIO,pfnStreamControl} 186 196 */ … … 188 198 PPDMAUDIOBACKENDSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 189 199 { 190 RT_NOREF(pInterface, pStream, enmStreamCmd); 191 return VINF_SUCCESS; 200 /** @todo r=bird: I'd like to get rid of this pfnStreamControl method, 201 * replacing it with individual StreamXxxx methods. That would save us 202 * potentally huge switches and more easily see which drivers implement 203 * which operations (grep for pfnStreamXxxx). */ 204 switch (enmStreamCmd) 205 { 206 case PDMAUDIOSTREAMCMD_ENABLE: 207 return drvHostDebugAudioHA_StreamControlStub(pInterface, pStream); 208 case PDMAUDIOSTREAMCMD_DISABLE: 209 return drvHostDebugAudioHA_StreamControlStub(pInterface, pStream); 210 case PDMAUDIOSTREAMCMD_PAUSE: 211 return drvHostDebugAudioHA_StreamControlStub(pInterface, pStream); 212 case PDMAUDIOSTREAMCMD_RESUME: 213 return drvHostDebugAudioHA_StreamControlStub(pInterface, pStream); 214 case PDMAUDIOSTREAMCMD_DRAIN: 215 return drvHostDebugAudioHA_StreamControlStub(pInterface, pStream); 216 217 case PDMAUDIOSTREAMCMD_END: 218 case PDMAUDIOSTREAMCMD_32BIT_HACK: 219 case PDMAUDIOSTREAMCMD_INVALID: 220 /* no default*/ 221 break; 222 } 223 return VERR_NOT_SUPPORTED; 192 224 } 193 225 -
trunk/src/VBox/Devices/Audio/DrvHostAudioNull.cpp
r88456 r88462 119 119 120 120 /** 121 * @ interface_method_impl{PDMIHOSTAUDIO,pfnStreamEnable} 122 */ 123 static DECLCALLBACK(int) drvHostNullAudioHA_StreamControlStub(PPDMIHOSTAUDIO pInterface, PPDMAUDIOBACKENDSTREAM pStream) 124 { 125 RT_NOREF(pInterface, pStream); 126 return VINF_SUCCESS; 127 } 128 129 130 /** 121 131 * @interface_method_impl{PDMIHOSTAUDIO,pfnStreamControl} 122 132 */ 123 133 static DECLCALLBACK(int) drvHostNullAudioHA_StreamControl(PPDMIHOSTAUDIO pInterface, 124 PPDMAUDIOBACKENDSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 125 { 126 RT_NOREF(pInterface, pStream, enmStreamCmd); 127 return VINF_SUCCESS; 134 PPDMAUDIOBACKENDSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 135 { 136 /** @todo r=bird: I'd like to get rid of this pfnStreamControl method, 137 * replacing it with individual StreamXxxx methods. That would save us 138 * potentally huge switches and more easily see which drivers implement 139 * which operations (grep for pfnStreamXxxx). */ 140 switch (enmStreamCmd) 141 { 142 case PDMAUDIOSTREAMCMD_ENABLE: 143 return drvHostNullAudioHA_StreamControlStub(pInterface, pStream); 144 case PDMAUDIOSTREAMCMD_DISABLE: 145 return drvHostNullAudioHA_StreamControlStub(pInterface, pStream); 146 case PDMAUDIOSTREAMCMD_PAUSE: 147 return drvHostNullAudioHA_StreamControlStub(pInterface, pStream); 148 case PDMAUDIOSTREAMCMD_RESUME: 149 return drvHostNullAudioHA_StreamControlStub(pInterface, pStream); 150 case PDMAUDIOSTREAMCMD_DRAIN: 151 return drvHostNullAudioHA_StreamControlStub(pInterface, pStream); 152 153 case PDMAUDIOSTREAMCMD_END: 154 case PDMAUDIOSTREAMCMD_32BIT_HACK: 155 case PDMAUDIOSTREAMCMD_INVALID: 156 /* no default*/ 157 break; 158 } 159 return VERR_NOT_SUPPORTED; 128 160 } 129 161 -
trunk/src/VBox/Devices/Audio/DrvHostAudioValidationKit.cpp
r88458 r88462 249 249 250 250 /** 251 * @interface_method_impl{PDMIHOSTAUDIO,pfnStreamControl} 252 */ 253 static DECLCALLBACK(int) drvHostValKitAudioHA_StreamControl(PPDMIHOSTAUDIO pInterface, 254 PPDMAUDIOBACKENDSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 255 { 256 RT_NOREF(pInterface, enmStreamCmd); 257 PVAKITAUDIOSTREAM pStreamDbg = (PVAKITAUDIOSTREAM)pStream; 251 * @ interface_method_impl{PDMIHOSTAUDIO,pfnStreamEnable} 252 */ 253 static DECLCALLBACK(int) drvHostValKitAudioHA_StreamControlStub(PPDMIHOSTAUDIO pInterface, PPDMAUDIOBACKENDSTREAM pStream) 254 { 255 RT_NOREF(pInterface, pStream); 256 return VINF_SUCCESS; 257 } 258 259 260 /** 261 * @ interface_method_impl{PDMIHOSTAUDIO,pfnStreamDisable} 262 */ 263 static DECLCALLBACK(int) drvHostValKitAudioHA_StreamDisableOrPauseOrDrain(PPDMIHOSTAUDIO pInterface, 264 PPDMAUDIOBACKENDSTREAM pStream) 265 { 266 RT_NOREF(pInterface); 267 PVAKITAUDIOSTREAM pStreamDbg = (PVAKITAUDIOSTREAM)pStream; 258 268 AssertPtrReturn(pStreamDbg, VERR_INVALID_POINTER); 259 269 … … 262 272 263 273 return VINF_SUCCESS; 274 } 275 276 277 /** 278 * @interface_method_impl{PDMIHOSTAUDIO,pfnStreamControl} 279 */ 280 static DECLCALLBACK(int) drvHostValKitAudioHA_StreamControl(PPDMIHOSTAUDIO pInterface, 281 PPDMAUDIOBACKENDSTREAM pStream, PDMAUDIOSTREAMCMD enmStreamCmd) 282 { 283 /** @todo r=bird: I'd like to get rid of this pfnStreamControl method, 284 * replacing it with individual StreamXxxx methods. That would save us 285 * potentally huge switches and more easily see which drivers implement 286 * which operations (grep for pfnStreamXxxx). */ 287 switch (enmStreamCmd) 288 { 289 case PDMAUDIOSTREAMCMD_ENABLE: 290 return drvHostValKitAudioHA_StreamControlStub(pInterface, pStream); 291 case PDMAUDIOSTREAMCMD_DISABLE: 292 return drvHostValKitAudioHA_StreamControlStub(pInterface, pStream); 293 case PDMAUDIOSTREAMCMD_PAUSE: 294 return drvHostValKitAudioHA_StreamDisableOrPauseOrDrain(pInterface, pStream); 295 case PDMAUDIOSTREAMCMD_RESUME: 296 return drvHostValKitAudioHA_StreamDisableOrPauseOrDrain(pInterface, pStream); 297 case PDMAUDIOSTREAMCMD_DRAIN: 298 return drvHostValKitAudioHA_StreamDisableOrPauseOrDrain(pInterface, pStream); 299 300 case PDMAUDIOSTREAMCMD_END: 301 case PDMAUDIOSTREAMCMD_32BIT_HACK: 302 case PDMAUDIOSTREAMCMD_INVALID: 303 /* no default*/ 304 break; 305 } 306 return VERR_NOT_SUPPORTED; 264 307 } 265 308
Note:
See TracChangeset
for help on using the changeset viewer.