3 * COPYRIGHT: See COPYING in the top level directory
5 * FILE: lib/ddraw/main/gamma.c
6 * PURPOSE: IDirectDrawGamma Implementation
7 * PROGRAMMER: Maarten Bosma
14 Main_DirectDrawGammaControl_AddRef(LPDIRECTDRAWGAMMACONTROL iface
)
16 IDirectDrawImpl
* This
= (IDirectDrawImpl
*)iface
;
17 ULONG ref
= InterlockedIncrement((PLONG
)&This
->DirectDrawGlobal
.dwRefCnt
);
23 Main_DirectDrawGammaControl_Release(LPDIRECTDRAWGAMMACONTROL iface
)
25 IDirectDrawImpl
* This
= (IDirectDrawImpl
*)iface
;
26 ULONG ref
= InterlockedDecrement((PLONG
)&This
->DirectDrawGlobal
.dwRefCnt
);
29 HeapFree(GetProcessHeap(), 0, This
);
35 Main_DirectDrawGammaControl_QueryInterface(LPDIRECTDRAWGAMMACONTROL iface
, REFIID riid
,
42 Main_DirectDrawGammaControl_GetGammaRamp(LPDIRECTDRAWGAMMACONTROL iface
, DWORD dwFlags
, LPDDGAMMARAMP lpGammaRamp
)
48 Main_DirectDrawGammaControl_SetGammaRamp(LPDIRECTDRAWGAMMACONTROL iface
, DWORD dwFlags
, LPDDGAMMARAMP lpGammaRamp
)
53 IDirectDrawGammaControlVtbl DirectDrawGammaControl_Vtable
=
55 Main_DirectDrawGammaControl_QueryInterface
,
56 Main_DirectDrawGammaControl_AddRef
,
57 Main_DirectDrawGammaControl_Release
,
58 Main_DirectDrawGammaControl_GetGammaRamp
,
59 Main_DirectDrawGammaControl_SetGammaRamp