Ignore:
Timestamp:
Jun 26, 1999, 1:36:08 PM (26 years ago)
Author:
hugh
Message:

Include for DX6 verion of ddraw

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/ddraw/OS2SURFACE.H

    r97 r211  
    1 /* $Id: OS2SURFACE.H,v 1.3 1999-06-10 17:10:56 phaller Exp $ */
    2 
    3 /*
    4  * DirectDraw Surface class
    5  *
    6  * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
    7  *
    8  * Project Odin Software License can be found in LICENSE.TXT
    9  *
    10  */
    111#ifndef __OS2SURFACE_H__
    122#define __OS2SURFACE_H__
    13 
     3#define FAR
     4#define INITGUID
    145#include "os2ddraw.h"
    156#include "os2clipper.h"
    167#include "os2palette.h"
    17 
    18 
    19  typedef struct _OS2RECTL {
     8#include <dive.h>
     9#include <iseq.h>
     10#include <irect.hpp>
     11
     12#define FAR
     13#undef THIS
     14#define THIS VOID*
     15
     16typedef struct _OS2RECTL {
    2017   LONG     xLeft;    /*  X-coordinate of left-hand edge of rectangle. */
    2118   LONG     yBottom;  /*  Y-coordinate of bottom edge of rectangle. */
     
    2421 } OS2RECTL;
    2522
    26 #define MAX_COLORKEYTYPE    4
    27 #define COLORKEY_DEST       0
    28 #define COLORKEY_DESTOVERLAY    1
    29 #define COLORKEY_SRC        2
    30 #define COLORKEY_SRCOVERLAY 3
    31 
    32 
    33 
    34  /* KSO Apr 19 1999: Set correct interface.           *
    35  * (INTERFACE is used in the THIS and THIS_ macros)  */
    36 #undef  INTERFACE
    37 #define INTERFACE   IDirectDrawSurface2
    38 
     23typedef struct _SURFPRIVATEDATA
     24{
     25  GUID    guidTag;
     26  void    *pData;
     27  DWORD   dwFlags;
     28  DWORD   dwSize;
     29  BOOL    isValid;
     30}SURFPRIVATEDATA , *PSURFPRIVATEDATA;
    3931
    4032class OS2IDirectDrawSurface
    4133{
    4234 public:
    43     //this one has to go first!
    44     IDirectDrawSurface2Vtbl *lpVtbl;
    45     IDirectDrawSurface2Vtbl  Vtbl;
    46 
    47     OS2IDirectDrawSurface(OS2IDirectDraw *lpDirectDraw, LPDDSURFACEDESC lpDDSurfaceDesc);
    48     ~OS2IDirectDrawSurface();
    49 
    50             int           Referenced;
    51     inline  HRESULT       GetLastError() { return lastError; };
    52     inline  int           GetDiveBufNr() { return diveBufNr; };
     35  //this one has to go first!
     36  IDirectDrawSurface4Vtbl *lpVtbl;
     37  IDirectDrawSurface2Vtbl  Vtbl2;
     38  IDirectDrawSurface3Vtbl  Vtbl3;
     39  IDirectDrawSurface4Vtbl  Vtbl; // With Dx6 CreateSurface creates per default one with Interface 4 !
     40
     41  OS2IDirectDrawSurface( OS2IDirectDraw *lpDirectDraw,
     42                         LPDDSURFACEDESC2 lpDDSurfaceDesc,
     43                         BOOL Implicit = FALSE,    // Indicates that this surface was created  as result of a complex surface
     44                         BOOL Mainchain = FALSE);  // Indicates if an implicit surface belongs to the primary surface
     45  ~OS2IDirectDrawSurface();
     46          int           Referenced;
     47  inline  HRESULT       GetLastError() { return lastError; };
     48  inline  int           GetDiveBufNr() { return diveBufNr; };
     49  inline  BOOL          IsImplicitSurface() {return ImplicitSurface; };
     50  inline  OS2IDirectDrawSurface* GetFrontBuffer(){ return FrontBuffer;};
     51  inline  void          SetFrontBuffer( OS2IDirectDrawSurface* NewFBuffer);
     52          void          ColorConversion(LPRECT lpRect);
     53
    5354 private:
    54 
     55        HRESULT         ColorFill(LPRECT, DWORD);
    5556 protected:
    56           HRESULT                lastError;
    57           HDIVE                  hDive;
    58           ULONG                  height, width;
    59           ULONG                  surfaceType;
    60           ULONG                  diveBufNr;
    61           double                 screenXFact, screenYFact;
    62           ULONG                  fccColorFormat, bpp;
    63           OS2IDirectDraw        *lpDraw;
    64           OS2IDirectDrawClipper *lpClipper;
    65           OS2IDirectDrawPalette *lpPalette;
    66           DDSURFACEDESC          DDSurfaceDesc;
    67           DDCAPS                 SurfaceCaps;
    68           BOOL                   fLocked;
    69           HDC                    hdcImage;
    70           HBITMAP                hbmImage;
    71           HGDIOBJ                hgdiOld;
    72           char                  *bitmapData;
    73           char                  *pFrameBuffer;
    74           PBYTE                  lpBuffer;  //non-primary buffers
    75 
    76           ULONG                  ColorKeyFlags;
    77           ULONG                  ColorSpaceLowValue[MAX_COLORKEYTYPE];
    78           ULONG                  ColorSpaceHighValue[MAX_COLORKEYTYPE];
    79 
    80           OS2IDirectDrawSurface* attached;           // attached surfaces
    81           OS2IDirectDrawSurface* flip;           // surface used for next flip
    82 
    83               // Linked list management
    84               OS2IDirectDrawSurface* next;                   // Next OS2IDirectDraw
    85     static    OS2IDirectDrawSurface* ddraw;                  // List of OS2IDirectDraw
    86 
    87     friend    HRESULT __stdcall SurfQueryInterface(THIS_ REFIID riid, LPVOID FAR * ppvObj);
     57        HRESULT                lastError;
     58        HDIVE                  hDive;
     59        HDIVE                  hDiveCC; // Color conversion DIVE Handle
     60        ULONG                  height, width;
     61        ULONG                  screenHeight, screenWidth;
     62        ULONG                  surfaceType;
     63        ULONG                  diveBufNr;
     64        OS2IDirectDraw        *lpDraw;
     65        OS2IDirectDrawClipper *lpClipper;
     66        OS2IDirectDrawPalette *lpPalette;
     67        DDSURFACEDESC2         DDSurfaceDesc;
     68        BOOL                   fLocked;
     69        HDC                    hdcImage;
     70        HBITMAP                hbmImage;
     71        HGDIOBJ                hgdiOld;
     72        DWORD                  dwLastDCUnique;
     73        // The real pointers hold the allocated memory (for the free)
     74        // The other an pointer addjusted to QWORDs which we use and report
     75        char                  *pFrameBuffer, *pFBreal;
     76        char                  *pDiveBuffer, *pDBreal;
     77        DWORD                 *pTransBufferSrc;
     78        DWORD                 *pTransBufferDest;
     79        DWORD                  dwPitchFB;
     80        DWORD                  dwPitchDB;
     81        DWORD                  dwBytesPPDive;
     82        BOOL                   Updated;
     83        BOOL                   ImplicitSurface;
     84
     85             // DDraw internal vars
     86
     87        DWORD                  dwUniqueValue;
     88        ISequence<PSURFPRIVATEDATA> SurfaceSequencePrivateData;
     89        BOOL                   fOverlayValid;
     90        LONG                   lOverlayX;
     91        LONG                   lOverlayY;
     92
     93        // surface management
     94
     95        OS2IDirectDrawSurface*  BackBuffer;  // Backbuffer goes in here
     96        OS2IDirectDrawSurface*  FrontBuffer; // NULL if the real frontbuffer of a Flipchain otherwise  the prev. Backbuffer
     97        OS2IDirectDrawSurface*  NextFlip;    // Only valid in a frontbuffer
     98        ISequence <OS2IDirectDrawSurface*> SurfaceSequenceMipMap;    // MipMaps go in this one
     99        ISequence <OS2IDirectDrawSurface*> SurfaceSequenceAttached;  // Other attached go in this one
     100        ISequence <OS2IDirectDrawSurface*>::Cursor *SurfaceCursorMipMap;    // Iterator for MipMaps
     101        ISequence <OS2IDirectDrawSurface*>::Cursor *SurfaceCursorAttached;  // Iterator for other attached surfaces
     102
     103        ISequence <IRectangle*> LockedRectSequence;            // List for locked rectangles
     104
     105    friend    HRESULT __stdcall SurfQueryInterface(THIS, REFIID riid, LPVOID FAR * ppvObj);
    88106    friend    ULONG   __stdcall SurfAddRef(THIS);
    89107    friend    ULONG   __stdcall SurfRelease(THIS);
    90     friend    HRESULT __stdcall SurfAddAttachedSurface(THIS_ LPDIRECTDRAWSURFACE2);
    91     friend    HRESULT __stdcall SurfAddOverlayDirtyRect(THIS_ W32_LPRECT);
    92     friend    HRESULT __stdcall SurfBlt(THIS_ W32_LPRECT,LPDIRECTDRAWSURFACE2,W32_LPRECT,DWORD, LPDDBLTFX);
    93     friend    HRESULT __stdcall SurfBltBatch(THIS_ LPDDBLTBATCH, DWORD, DWORD );
    94     friend    HRESULT __stdcall SurfBltFast(THIS_ DWORD,DWORD,LPDIRECTDRAWSURFACE2, W32_LPRECT,DWORD);
    95     friend    HRESULT __stdcall SurfDeleteAttachedSurface(THIS_ DWORD,LPDIRECTDRAWSURFACE2);
    96     friend    HRESULT __stdcall SurfEnumAttachedSurfaces(THIS_ LPVOID,LPDDENUMSURFACESCALLBACK);
    97     friend    HRESULT __stdcall SurfEnumOverlayZOrders(THIS_ DWORD,LPVOID,LPDDENUMSURFACESCALLBACK);
    98     friend    HRESULT __stdcall SurfFlip(THIS_ LPDIRECTDRAWSURFACE2, DWORD);
    99     friend    HRESULT __stdcall SurfGetAttachedSurface(THIS_ LPDDSCAPS, LPDIRECTDRAWSURFACE2 FAR *);
    100     friend    HRESULT __stdcall SurfGetBltStatus(THIS_ DWORD);
    101     friend    HRESULT __stdcall SurfGetCaps(THIS_ LPDDSCAPS);
    102     friend    HRESULT __stdcall SurfGetClipper(THIS_ LPDIRECTDRAWCLIPPER FAR*);
    103     friend    HRESULT __stdcall SurfGetColorKey(THIS_ DWORD, LPDDCOLORKEY);
    104     friend    HRESULT __stdcall SurfGetDC(THIS_ W32_HDC FAR *);
    105     friend    HRESULT __stdcall SurfGetFlipStatus(THIS_ DWORD);
    106     friend    HRESULT __stdcall SurfGetOverlayPosition(THIS_ LPLONG, LPLONG );
    107     friend    HRESULT __stdcall SurfGetPalette(THIS_ LPDIRECTDRAWPALETTE FAR*);
    108     friend    HRESULT __stdcall SurfGetPixelFormat(THIS_ LPDDPIXELFORMAT);
    109     friend    HRESULT __stdcall SurfGetSurfaceDesc(THIS_ LPDDSURFACEDESC);
    110     friend    HRESULT __stdcall SurfInitialize(THIS_ LPDIRECTDRAW, LPDDSURFACEDESC);
     108    friend    HRESULT __stdcall SurfAddAttachedSurface(THIS, LPDIRECTDRAWSURFACE2);
     109    friend    HRESULT __stdcall SurfAddAttachedSurface4(THIS, LPDIRECTDRAWSURFACE4);
     110    friend    HRESULT __stdcall SurfAddOverlayDirtyRect(THIS, LPRECT);
     111    friend    HRESULT __stdcall SurfBlt(THIS, LPRECT,LPDIRECTDRAWSURFACE2, LPRECT,DWORD, LPDDBLTFX);
     112    friend    HRESULT __stdcall SurfBlt4(THIS, LPRECT,LPDIRECTDRAWSURFACE4, LPRECT,DWORD, LPDDBLTFX);
     113    friend    HRESULT __stdcall SurfBltBatch(THIS, LPDDBLTBATCH, DWORD, DWORD );
     114    friend    HRESULT __stdcall SurfBltFast(THIS, DWORD,DWORD,LPDIRECTDRAWSURFACE2, LPRECT,DWORD);
     115    friend    HRESULT __stdcall SurfBltFast4(THIS, DWORD,DWORD,LPDIRECTDRAWSURFACE4, LPRECT,DWORD);
     116    friend    HRESULT __stdcall SurfDeleteAttachedSurface(THIS, DWORD,LPDIRECTDRAWSURFACE2);
     117    friend    HRESULT __stdcall SurfDeleteAttachedSurface4(THIS, DWORD,LPDIRECTDRAWSURFACE4);
     118    friend    HRESULT __stdcall SurfEnumAttachedSurfaces(THIS, LPVOID,LPDDENUMSURFACESCALLBACK);
     119    friend    HRESULT __stdcall SurfEnumAttachedSurfaces4(THIS, LPVOID,LPDDENUMSURFACESCALLBACK2);
     120    friend    HRESULT __stdcall SurfEnumOverlayZOrders(THIS, DWORD,LPVOID,LPDDENUMSURFACESCALLBACK);
     121    friend    HRESULT __stdcall SurfEnumOverlayZOrders4(THIS, DWORD,LPVOID,LPDDENUMSURFACESCALLBACK2);
     122    friend    HRESULT __stdcall SurfFlip(THIS, LPDIRECTDRAWSURFACE2 , DWORD);
     123    friend    HRESULT __stdcall SurfFlip4(THIS, LPDIRECTDRAWSURFACE4 , DWORD);
     124    friend    HRESULT __stdcall SurfGetAttachedSurface(THIS, LPDDSCAPS, LPDIRECTDRAWSURFACE2 FAR *);
     125    friend    HRESULT __stdcall SurfGetAttachedSurface4(THIS, LPDDSCAPS2, LPDIRECTDRAWSURFACE4 FAR *);
     126    friend    HRESULT __stdcall SurfGetBltStatus(THIS, DWORD);
     127    friend    HRESULT __stdcall SurfGetCaps(THIS, LPDDSCAPS);
     128    friend    HRESULT __stdcall SurfGetCaps4(THIS, LPDDSCAPS2);
     129    friend    HRESULT __stdcall SurfGetClipper(THIS, LPDIRECTDRAWCLIPPER FAR*);
     130    friend    HRESULT __stdcall SurfGetColorKey(THIS, DWORD, LPDDCOLORKEY);
     131    friend    HRESULT __stdcall SurfGetDC(THIS, HDC FAR *);
     132    friend    HRESULT __stdcall SurfGetFlipStatus(THIS, DWORD);
     133    friend    HRESULT __stdcall SurfGetOverlayPosition(THIS, LPLONG, LPLONG );
     134    friend    HRESULT __stdcall SurfGetPalette(THIS, LPDIRECTDRAWPALETTE FAR*);
     135    friend    HRESULT __stdcall SurfGetPixelFormat(THIS, LPDDPIXELFORMAT);
     136    friend    HRESULT __stdcall SurfGetSurfaceDesc(THIS, LPDDSURFACEDESC);
     137    friend    HRESULT __stdcall SurfGetSurfaceDesc4(THIS, LPDDSURFACEDESC2);
     138    friend    HRESULT __stdcall SurfInitialize(THIS, LPDIRECTDRAW, LPDDSURFACEDESC);
     139    friend    HRESULT __stdcall SurfInitialize4(THIS, LPDIRECTDRAW, LPDDSURFACEDESC2);
    111140    friend    HRESULT __stdcall SurfIsLost(THIS);
    112     friend    HRESULT __stdcall SurfLock(THIS_ W32_LPRECT,LPDDSURFACEDESC,DWORD,W32_HANDLE);
    113     friend    HRESULT __stdcall SurfReleaseDC(THIS_ W32_HDC);
     141    friend    HRESULT __stdcall SurfLock(THIS, LPRECT,LPDDSURFACEDESC,DWORD,HANDLE);
     142    friend    HRESULT __stdcall SurfLock4(THIS, LPRECT,LPDDSURFACEDESC2,DWORD,HANDLE);
     143    friend    HRESULT __stdcall SurfReleaseDC(THIS, HDC);
    114144    friend    HRESULT __stdcall SurfRestore(THIS);
    115     friend    HRESULT __stdcall SurfSetClipper(THIS_ LPDIRECTDRAWCLIPPER);
    116     friend    HRESULT __stdcall SurfSetColorKey(THIS_ DWORD, LPDDCOLORKEY);
    117     friend    HRESULT __stdcall SurfSetOverlayPosition(THIS_ LONG, LONG );
    118     friend    HRESULT __stdcall SurfSetPalette(THIS_ LPDIRECTDRAWPALETTE);
    119     friend    HRESULT __stdcall SurfUnlock(THIS_ LPVOID);
    120     friend    HRESULT __stdcall SurfUpdateOverlay(THIS_ W32_LPRECT, LPDIRECTDRAWSURFACE2,W32_LPRECT,DWORD, LPDDOVERLAYFX);
    121     friend    HRESULT __stdcall SurfUpdateOverlayDisplay(THIS_ DWORD);
    122     friend    HRESULT __stdcall SurfUpdateOverlayZOrder(THIS_ DWORD, LPDIRECTDRAWSURFACE2);
    123     friend    HRESULT __stdcall SurfGetDDInterface(THIS_ LPVOID FAR *);
    124     friend    HRESULT __stdcall SurfPageLock(THIS_ DWORD);
    125     friend    HRESULT __stdcall SurfPageUnlock(THIS_ DWORD);
     145    friend    HRESULT __stdcall SurfSetClipper(THIS, LPDIRECTDRAWCLIPPER);
     146    friend    HRESULT __stdcall SurfSetColorKey(THIS, DWORD, LPDDCOLORKEY);
     147    friend    HRESULT __stdcall SurfSetOverlayPosition(THIS, LONG, LONG );
     148    friend    HRESULT __stdcall SurfSetPalette(THIS, LPDIRECTDRAWPALETTE);
     149    friend    HRESULT __stdcall SurfUnlock(THIS, LPRECT);
     150    friend    HRESULT __stdcall SurfUpdateOverlay(THIS, LPRECT, LPDIRECTDRAWSURFACE2,LPRECT,DWORD, LPDDOVERLAYFX);
     151    friend    HRESULT __stdcall SurfUpdateOverlay4(THIS, LPRECT, LPDIRECTDRAWSURFACE4,LPRECT,DWORD, LPDDOVERLAYFX);
     152    friend    HRESULT __stdcall SurfUpdateOverlayDisplay(THIS, DWORD);
     153    friend    HRESULT __stdcall SurfUpdateOverlayZOrder(THIS, DWORD, LPDIRECTDRAWSURFACE2);
     154    friend    HRESULT __stdcall SurfUpdateOverlayZOrder4(THIS, DWORD, LPDIRECTDRAWSURFACE4);
     155    // Added in V2 interface
     156    friend    HRESULT __stdcall SurfGetDDInterface(THIS, LPVOID FAR *);
     157    friend    HRESULT __stdcall SurfPageLock(THIS, DWORD);
     158    friend    HRESULT __stdcall SurfPageUnlock(THIS, DWORD);
     159    // Added in V3 interface
     160    friend    HRESULT __stdcall SurfSetSurfaceDesc(THIS, LPDDSURFACEDESC, DWORD);
     161    friend    HRESULT __stdcall SurfSetSurfaceDesc4(THIS, LPDDSURFACEDESC2, DWORD);
     162    // Added in V4 interface
     163    friend    HRESULT __stdcall SurfSetPrivateData(THIS, REFGUID, LPVOID, DWORD, DWORD);
     164    friend    HRESULT __stdcall SurfGetPrivateData(THIS, REFGUID, LPVOID, LPDWORD);
     165    friend    HRESULT __stdcall SurfFreePrivateData(THIS, REFGUID);
     166    friend    HRESULT __stdcall SurfGetUniquenessValue(THIS, LPDWORD);
     167    friend    HRESULT __stdcall SurfChangeUniquenessValue(THIS);
    126168};
    127169
    128170
    129 HRESULT __stdcall SurfQueryInterface(THIS_ REFIID riid, LPVOID FAR * ppvObj);
     171HRESULT __stdcall SurfQueryInterface(THIS, REFIID riid, LPVOID FAR * ppvObj);
    130172ULONG   __stdcall SurfAddRef(THIS);
    131173ULONG   __stdcall SurfRelease(THIS);
    132 HRESULT __stdcall SurfAddAttachedSurface(THIS_ LPDIRECTDRAWSURFACE2);
    133 HRESULT __stdcall SurfAddOverlayDirtyRect(THIS_ W32_LPRECT);
    134 HRESULT __stdcall SurfBlt(THIS_ W32_LPRECT,LPDIRECTDRAWSURFACE2, W32_LPRECT,DWORD, LPDDBLTFX);
    135 HRESULT __stdcall SurfBltBatch(THIS_ LPDDBLTBATCH, DWORD, DWORD );
    136 HRESULT __stdcall SurfBltFast(THIS_ DWORD,DWORD,LPDIRECTDRAWSURFACE2, W32_LPRECT,DWORD);
    137 HRESULT __stdcall SurfDeleteAttachedSurface(THIS_ DWORD,LPDIRECTDRAWSURFACE2);
    138 HRESULT __stdcall SurfEnumAttachedSurfaces(THIS_ LPVOID,LPDDENUMSURFACESCALLBACK);
    139 HRESULT __stdcall SurfEnumOverlayZOrders(THIS_ DWORD,LPVOID,LPDDENUMSURFACESCALLBACK);
    140 HRESULT __stdcall SurfFlip(THIS_ LPDIRECTDRAWSURFACE2, DWORD);
    141 HRESULT __stdcall SurfGetAttachedSurface(THIS_ LPDDSCAPS, LPDIRECTDRAWSURFACE2 FAR *);
    142 HRESULT __stdcall SurfGetBltStatus(THIS_ DWORD);
    143 HRESULT __stdcall SurfGetCaps(THIS_ LPDDSCAPS);
    144 HRESULT __stdcall SurfGetClipper(THIS_ LPDIRECTDRAWCLIPPER FAR*);
    145 HRESULT __stdcall SurfGetColorKey(THIS_ DWORD, LPDDCOLORKEY);
    146 HRESULT __stdcall SurfGetDC(THIS_ W32_HDC FAR *);
    147 HRESULT __stdcall SurfGetFlipStatus(THIS_ DWORD);
    148 HRESULT __stdcall SurfGetOverlayPosition(THIS_ LPLONG, LPLONG );
    149 HRESULT __stdcall SurfGetPalette(THIS_ LPDIRECTDRAWPALETTE FAR*);
    150 HRESULT __stdcall SurfGetPixelFormat(THIS_ LPDDPIXELFORMAT);
    151 HRESULT __stdcall SurfGetSurfaceDesc(THIS_ LPDDSURFACEDESC);
    152 HRESULT __stdcall SurfInitialize(THIS_ LPDIRECTDRAW, LPDDSURFACEDESC);
     174HRESULT __stdcall SurfAddAttachedSurface(THIS, LPDIRECTDRAWSURFACE2);
     175HRESULT __stdcall SurfAddAttachedSurface4(THIS, LPDIRECTDRAWSURFACE4);
     176HRESULT __stdcall SurfAddOverlayDirtyRect(THIS, LPRECT);
     177HRESULT __stdcall SurfBlt(THIS, LPRECT,LPDIRECTDRAWSURFACE2, LPRECT,DWORD, LPDDBLTFX);
     178HRESULT __stdcall SurfBlt4(THIS, LPRECT,LPDIRECTDRAWSURFACE4, LPRECT,DWORD, LPDDBLTFX);
     179HRESULT __stdcall SurfBltBatch(THIS, LPDDBLTBATCH, DWORD, DWORD );
     180HRESULT __stdcall SurfBltFast(THIS, DWORD,DWORD,LPDIRECTDRAWSURFACE2, LPRECT,DWORD);
     181HRESULT __stdcall SurfBltFast4(THIS, DWORD,DWORD,LPDIRECTDRAWSURFACE4, LPRECT,DWORD);
     182HRESULT __stdcall SurfDeleteAttachedSurface(THIS, DWORD,LPDIRECTDRAWSURFACE2);
     183HRESULT __stdcall SurfDeleteAttachedSurface4(THIS, DWORD,LPDIRECTDRAWSURFACE4);
     184HRESULT __stdcall SurfEnumAttachedSurfaces(THIS, LPVOID,LPDDENUMSURFACESCALLBACK);
     185HRESULT __stdcall SurfEnumAttachedSurfaces4(THIS, LPVOID,LPDDENUMSURFACESCALLBACK2);
     186HRESULT __stdcall SurfEnumOverlayZOrders(THIS, DWORD,LPVOID,LPDDENUMSURFACESCALLBACK);
     187HRESULT __stdcall SurfEnumOverlayZOrders4(THIS, DWORD,LPVOID,LPDDENUMSURFACESCALLBACK2);
     188HRESULT __stdcall SurfFlip(THIS, LPDIRECTDRAWSURFACE2 , DWORD);
     189HRESULT __stdcall SurfFlip4(THIS, LPDIRECTDRAWSURFACE4 , DWORD);
     190HRESULT __stdcall SurfGetAttachedSurface(THIS, LPDDSCAPS, LPDIRECTDRAWSURFACE2 FAR *);
     191HRESULT __stdcall SurfGetAttachedSurface4(THIS, LPDDSCAPS2, LPDIRECTDRAWSURFACE4 FAR *);
     192HRESULT __stdcall SurfGetBltStatus(THIS, DWORD);
     193HRESULT __stdcall SurfGetCaps4(THIS, LPDDSCAPS2);
     194HRESULT __stdcall SurfGetCaps(THIS, LPDDSCAPS);
     195HRESULT __stdcall SurfGetClipper(THIS, LPDIRECTDRAWCLIPPER FAR*);
     196HRESULT __stdcall SurfGetColorKey(THIS, DWORD, LPDDCOLORKEY);
     197HRESULT __stdcall SurfGetDC(THIS, HDC FAR *);
     198HRESULT __stdcall SurfGetFlipStatus(THIS, DWORD);
     199HRESULT __stdcall SurfGetOverlayPosition(THIS, LPLONG, LPLONG );
     200HRESULT __stdcall SurfGetPalette(THIS, LPDIRECTDRAWPALETTE FAR*);
     201HRESULT __stdcall SurfGetPixelFormat(THIS, LPDDPIXELFORMAT);
     202HRESULT __stdcall SurfGetSurfaceDesc(THIS, LPDDSURFACEDESC);
     203HRESULT __stdcall SurfGetSurfaceDesc4(THIS, LPDDSURFACEDESC2);
     204HRESULT __stdcall SurfInitialize(THIS, LPDIRECTDRAW, LPDDSURFACEDESC);
     205HRESULT __stdcall SurfInitialize4(THIS, LPDIRECTDRAW, LPDDSURFACEDESC2);
    153206HRESULT __stdcall SurfIsLost(THIS);
    154 HRESULT __stdcall SurfLock(THIS_ W32_LPRECT,LPDDSURFACEDESC,DWORD,W32_HANDLE);
    155 HRESULT __stdcall SurfReleaseDC(THIS_ W32_HDC);
     207HRESULT __stdcall SurfLock(THIS, LPRECT,LPDDSURFACEDESC,DWORD,HANDLE);
     208HRESULT __stdcall SurfLock4(THIS, LPRECT,LPDDSURFACEDESC2,DWORD,HANDLE);
     209HRESULT __stdcall SurfReleaseDC(THIS, HDC);
    156210HRESULT __stdcall SurfRestore(THIS);
    157 HRESULT __stdcall SurfSetClipper(THIS_ LPDIRECTDRAWCLIPPER);
    158 HRESULT __stdcall SurfSetColorKey(THIS_ DWORD, LPDDCOLORKEY);
    159 HRESULT __stdcall SurfSetOverlayPosition(THIS_ LONG, LONG );
    160 HRESULT __stdcall SurfSetPalette(THIS_ LPDIRECTDRAWPALETTE);
    161 HRESULT __stdcall SurfUnlock(THIS_ LPVOID);
    162 HRESULT __stdcall SurfUpdateOverlay(THIS_ W32_LPRECT, LPDIRECTDRAWSURFACE2,W32_LPRECT,DWORD, LPDDOVERLAYFX);
    163 HRESULT __stdcall SurfUpdateOverlayDisplay(THIS_ DWORD);
    164 HRESULT __stdcall SurfUpdateOverlayZOrder(THIS_ DWORD, LPDIRECTDRAWSURFACE2);
    165 HRESULT __stdcall SurfGetDDInterface(THIS_ LPVOID FAR *);
    166 HRESULT __stdcall SurfPageLock(THIS_ DWORD);
    167 HRESULT __stdcall SurfPageUnlock(THIS_ DWORD);
     211HRESULT __stdcall SurfSetClipper(THIS, LPDIRECTDRAWCLIPPER);
     212HRESULT __stdcall SurfSetColorKey(THIS, DWORD, LPDDCOLORKEY);
     213HRESULT __stdcall SurfSetOverlayPosition(THIS, LONG, LONG );
     214HRESULT __stdcall SurfSetPalette(THIS, LPDIRECTDRAWPALETTE);
     215HRESULT __stdcall SurfUnlock(THIS, LPRECT);
     216HRESULT __stdcall SurfUpdateOverlay(THIS, LPRECT, LPDIRECTDRAWSURFACE2,LPRECT,DWORD, LPDDOVERLAYFX);
     217HRESULT __stdcall SurfUpdateOverlay4(THIS, LPRECT, LPDIRECTDRAWSURFACE4,LPRECT,DWORD, LPDDOVERLAYFX);
     218HRESULT __stdcall SurfUpdateOverlayDisplay(THIS, DWORD);
     219HRESULT __stdcall SurfUpdateOverlayZOrder(THIS, DWORD, LPDIRECTDRAWSURFACE2);
     220HRESULT __stdcall SurfUpdateOverlayZOrder4(THIS, DWORD, LPDIRECTDRAWSURFACE4);
     221HRESULT __stdcall SurfGetDDInterface(THIS, LPVOID FAR *);
     222HRESULT __stdcall SurfPageLock(THIS, DWORD);
     223HRESULT __stdcall SurfPageUnlock(THIS, DWORD);
     224HRESULT __stdcall SurfSetSurfaceDesc(THIS, LPDDSURFACEDESC, DWORD);
     225HRESULT __stdcall SurfSetSurfaceDesc4(THIS, LPDDSURFACEDESC2, DWORD);
     226HRESULT __stdcall SurfSetPrivateData(THIS, REFGUID, LPVOID, DWORD, DWORD);
     227HRESULT __stdcall SurfGetPrivateData(THIS, REFGUID, LPVOID, LPDWORD);
     228HRESULT __stdcall SurfFreePrivateData(THIS, REFGUID);
     229HRESULT __stdcall SurfGetUniquenessValue(THIS, LPDWORD);
     230HRESULT __stdcall SurfChangeUniquenessValue(THIS);
     231
     232void __cdecl MoveRects(char* pBuffer, LPRECT lpDestRect, LPRECT lpSrcRect, int bbp, LONG lPitch);
     233void __cdecl TransSRCBlit8(LPDDSURFACEDESC2 pDestDesc, LPDDSURFACEDESC2 pSrcDesc,  char *pAlpha, LPRECT lpSrcRect);
     234void __cdecl TransSRCBlit16(LPDDSURFACEDESC2 pDestDesc, LPDDSURFACEDESC2 pSrcDesc,  char *pAlpha, LPRECT lpSrcRect);
     235void __cdecl TransSRCBlit24(LPDDSURFACEDESC2 pDestDesc, LPDDSURFACEDESC2 pSrcDesc,  char *pAlpha, LPRECT lpSrcRect);
     236void __cdecl TransSRCBlit32(LPDDSURFACEDESC2 pDestDesc, LPDDSURFACEDESC2 pSrcDesc,  char *pAlpha, LPRECT lpSrcRect);
     237
    168238
    169239#endif
Note: See TracChangeset for help on using the changeset viewer.