Added mappings for a few messages.
[wine] / dlls / ddraw / dsurface / gamma.c
1 /*              DirectDrawGammaControl implementation
2  *
3  * Copyright 2001 TransGaming Technologies Inc.
4  */
5
6 #include "config.h"
7 #include "winerror.h"
8
9 #include <assert.h>
10 #include <stdlib.h>
11
12 #include "debugtools.h"
13 #include "ddraw_private.h"
14 #include "dsurface/main.h"
15
16 DEFAULT_DEBUG_CHANNEL(ddraw);
17
18 #define CONVERT(pddgc) COM_INTERFACE_CAST(IDirectDrawSurfaceImpl,       \
19                                           IDirectDrawGammaControl,      \
20                                           IDirectDrawSurface7,          \
21                                           (pddgc))
22
23 static HRESULT WINAPI
24 DirectDrawGammaControl_QueryInterface(LPDIRECTDRAWGAMMACONTROL iface, REFIID riid,
25                                       LPVOID *ppObj)                        
26 {
27     TRACE("(%p)->(%s,%p)\n", iface, debugstr_guid(riid), ppObj);
28     return E_NOINTERFACE;
29 }
30
31 static ULONG WINAPI
32 DirectDrawGammaControl_AddRef(LPDIRECTDRAWGAMMACONTROL iface)
33 {
34     return IDirectDrawSurface7_AddRef(CONVERT(iface));
35 }
36  
37 static ULONG WINAPI
38 DirectDrawGammaControl_Release(LPDIRECTDRAWGAMMACONTROL iface)
39 {
40     return IDirectDrawSurface7_Release(CONVERT(iface));
41 }
42  
43 static HRESULT WINAPI
44 DirectDrawGammaControl_GetGammaRamp(LPDIRECTDRAWGAMMACONTROL iface, DWORD dwFlags, LPDDGAMMARAMP lpGammaRamp)
45 {
46     ICOM_THIS_FROM(IDirectDrawSurfaceImpl, IDirectDrawGammaControl, iface);
47     TRACE("(%p)->(%08lx,%p)\n", iface,dwFlags,lpGammaRamp);
48     return This->get_gamma_ramp(This, dwFlags, lpGammaRamp);
49 }
50
51 static HRESULT WINAPI
52 DirectDrawGammaControl_SetGammaRamp(LPDIRECTDRAWGAMMACONTROL iface, DWORD dwFlags, LPDDGAMMARAMP lpGammaRamp)
53 {
54     ICOM_THIS_FROM(IDirectDrawSurfaceImpl, IDirectDrawGammaControl, iface);
55     TRACE("(%p)->(%08lx,%p)\n", iface,dwFlags,lpGammaRamp);
56     return This->set_gamma_ramp(This, dwFlags, lpGammaRamp);
57 }
58
59 ICOM_VTABLE(IDirectDrawGammaControl) DDRAW_IDDGC_VTable =
60 {
61     DirectDrawGammaControl_QueryInterface,
62     DirectDrawGammaControl_AddRef,
63     DirectDrawGammaControl_Release,
64     DirectDrawGammaControl_GetGammaRamp,
65     DirectDrawGammaControl_SetGammaRamp
66 };