//-----------------------------------------------------------------------------
//
// This file generates the headers for primitive functions for RAMP/RGB/REF.
//
// Copyright (C) Microsoft Corporation, 1997.
//
// WARNING WARNING WARNING
// This h file generated from a mh file.
// EDIT THE MH FILE.
// I warned you.
// WARNING WARNING WARNING
//
//-----------------------------------------------------------------------------
include(`m4hdr.mh')dnl

void REF_StoreLastPixelState(LPVOID pCtx, BOOL bStore);
void RGBRAMP_StoreLastPixelState(LPVOID pCtx, BOOL bStore);
HRESULT RGBRAMP_Dp2SetRenderStates(LPVOID pCtx, DWORD dwFvf, LPD3DHAL_DP2COMMAND pCmd, LPDWORD lpdwRuntimeRStates);
HRESULT REF_Dp2SetRenderStates(LPVOID pCtx, DWORD dwFvf, LPD3DHAL_DP2COMMAND pCmd, LPDWORD lpdwRuntimeRStates);
HRESULT RGBRAMP_Dp2TextureStageState(LPVOID pCtx, DWORD dwFvf, LPD3DHAL_DP2COMMAND pCmd);
HRESULT REF_Dp2TextureStageState(LPVOID pCtx, DWORD dwFvf, LPD3DHAL_DP2COMMAND pCmd);
HRESULT REF_Dp2SetViewport(LPVOID pCtx, LPD3DHAL_DP2COMMAND pCmd);
HRESULT REF_Dp2SetWRange(LPVOID pCtx, LPD3DHAL_DP2COMMAND pCmd);
HRESULT RGBRAMP_Dp2SetViewport(LPVOID pCtx, LPD3DHAL_DP2COMMAND pCmd);
HRESULT RGBRAMP_Dp2SetWRange(LPVOID pCtx, LPD3DHAL_DP2COMMAND pCmd);

define(`d_PointFuncHdr', `
HRESULT $1_Point$2(LPVOID pCtx, PUINT8 pVtx);')dnl
define(`d_LineFuncHdr', `
HRESULT $1_Line$2(LPVOID pCtx, PUINT8 pVtx0, PUINT8 pVtx1);')dnl
define(`d_TriFuncHdr', `
HRESULT $1_Tri$2$3(LPVOID pCtx, PUINT8 pVtx0, PUINT8 pVtx1, PUINT8 pVtx2, WORD wFlags);')dnl

d_RepStr(`d_RepStr(`d_PointFuncHdr(AA, BB)',
        `AA', `REF', `RAMP')',
        `BB', `')dnl
d_RepStr(`d_RepStr(`d_PointFuncHdr(AA, BB)',
        `AA', `RGB')',
        `BB', `Pack', `NoPack')
d_RepStr(`d_RepStr(`d_LineFuncHdr(AA, BB)',
        `AA', `REF', `RAMP')',
        `BB', `')dnl
d_RepStr(`d_RepStr(`d_LineFuncHdr(AA, BB)',
        `AA', `RGB')',
        `BB', `Pack', `NoPack')
d_TriFuncHdr(`REF', `', `')dnl
d_RepStr(`d_RepStr(`d_TriFuncHdr(AA, BB)',
         `AA', `RAMP')',
         `BB', `Point', `Wireframe', `Solid')
d_RepStr(`d_RepStr(`d_RepStr(`d_TriFuncHdr(AA, BB, CC)',
         `AA', `RGB')',
         `BB', `Pack', `NoPack')',
         `CC', `Point', `Wireframe', `Solid')