ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

dxg_int.h
Go to the documentation of this file.
00001 #include <ntifs.h>
00002 
00003 /* Win32 Headers */
00004 #define WINBASEAPI
00005 #define STARTF_USESIZE 2
00006 #define STARTF_USEPOSITION 4
00007 #define INTERNAL_CALL NTAPI
00008 #define NT_BUILD_ENVIRONMENT
00009 
00010 #include <windef.h>
00011 #include <winerror.h>
00012 #include <wingdi.h>
00013 #include <winddi.h>
00014 
00015 /* DXG treats this as opaque */
00016 typedef PVOID PDC;
00017 typedef PVOID PW32THREAD;
00018 
00019 typedef struct _DD_BASEOBJECT
00020 {
00021   HGDIOBJ     hHmgr;
00022   ULONG       ulShareCount;
00023   USHORT      cExclusiveLock;
00024   USHORT      BaseFlags;
00025   PW32THREAD  Tid;
00026 } DD_BASEOBJECT, *PDD_BASEOBJECT;
00027 
00028 #include <drivers/directx/directxint.h>
00029 #include <drivers/directx/dxg.h>
00030 #include <drivers/directx/dxeng.h>
00031 
00032 #include "tags.h"
00033 
00034 #define ObjType_DDSURFACE_TYPE    2
00035 #define ObjType_DDVIDEOPORT_TYPE  4
00036 #define ObjType_DDMOTIONCOMP_TYPE 5
00037 
00038  typedef struct _DD_ENTRY
00039 {
00040     union
00041     {
00042         PDD_BASEOBJECT pobj;
00043         HANDLE hFree;
00044     };
00045     union
00046     {
00047          ULONG ulObj;
00048          struct
00049          {
00050                 USHORT Count;
00051                 USHORT Lock;
00052                 HANDLE Pid;
00053          };
00054     } ObjectOwner;
00055     USHORT FullUnique;
00056     UCHAR Objt;
00057     UCHAR Flags;
00058     PVOID pUser;
00059 } DD_ENTRY, *PDD_ENTRY;
00060 
00061 typedef struct _EDD_SURFACE_LOCAL
00062 {
00063      DD_BASEOBJECT Object;
00064      DD_SURFACE_LOCAL Surfacelcl;
00065 } EDD_SURFACE_LOCAL, *PEDD_SURFACE_LOCAL;
00066 
00067 /* exported functions */
00068 NTSTATUS NTAPI DriverEntry(IN PVOID Context1, IN PVOID Context2);
00069 NTSTATUS NTAPI GsDriverEntry(IN PVOID Context1, IN PVOID Context2);
00070 NTSTATUS APIENTRY DxDdCleanupDxGraphics(VOID);
00071 
00072 /* Global pointers */
00073 extern ULONG gcSizeDdHmgr;
00074 extern PDD_ENTRY gpentDdHmgr;
00075 extern ULONG gcMaxDdHmgr;
00076 extern PDD_ENTRY gpentDdHmgrLast;
00077 extern HANDLE ghFreeDdHmgr;
00078 extern HSEMAPHORE ghsemHmgr;
00079 extern LONG gcDummyPageRefCnt;
00080 extern HSEMAPHORE ghsemDummyPage;
00081 extern VOID *gpDummyPage;
00082 extern PEPROCESS gpepSession;
00083 extern PLARGE_INTEGER gpLockShortDelay;
00084 
00085 /* Driver list export functions */
00086 DWORD NTAPI DxDxgGenericThunk(ULONG_PTR ulIndex, ULONG_PTR ulHandle, SIZE_T *pdwSizeOfPtr1, PVOID pvPtr1, SIZE_T *pdwSizeOfPtr2, PVOID pvPtr2);
00087 DWORD NTAPI DxDdIoctl(ULONG ulIoctl, PVOID pBuffer, ULONG ulBufferSize);
00088 PDD_SURFACE_LOCAL NTAPI DxDdLockDirectDrawSurface(HANDLE hDdSurface);
00089 BOOL NTAPI DxDdUnlockDirectDrawSurface(PDD_SURFACE_LOCAL pSurface);
00090 
00091 /* Internal functions */
00092 BOOL FASTCALL VerifyObjectOwner(PDD_ENTRY pEntry);
00093 BOOL FASTCALL DdHmgCreate(VOID);
00094 BOOL FASTCALL DdHmgDestroy(VOID);
00095 PVOID FASTCALL DdHmgLock(HANDLE DdHandle, UCHAR ObjectType, BOOLEAN LockOwned);
00096 
00097 /* define stuff */
00098 #define drvDxEngLockDC          gpEngFuncs[DXENG_INDEX_DxEngLockDC]
00099 #define drvDxEngGetDCState      gpEngFuncs[DXENG_INDEX_DxEngGetDCState]
00100 #define drvDxEngGetHdevData     gpEngFuncs[DXENG_INDEX_DxEngGetHdevData]
00101 #define drvDxEngUnlockDC        gpEngFuncs[DXENG_INDEX_DxEngUnlockDC]
00102 #define drvDxEngUnlockHdev      gpEngFuncs[DXENG_INDEX_DxEngUnlockHdev]
00103 #define drvDxEngLockHdev        gpEngFuncs[DXENG_INDEX_DxEngLockHdev]

Generated on Sat May 26 2012 04:37:17 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.