~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Wine Cross Reference
wine/dlls/dxdiagn/dxdiag_private.h

Version: ~ [ wine-1.1.33 ] ~ [ wine-1.1.32 ] ~ [ wine-1.1.31 ] ~ [ wine-1.1.30 ] ~ [ wine-1.1.29 ] ~ [ wine-1.1.28 ] ~ [ wine-1.1.27 ] ~ [ wine-1.1.26 ] ~ [ wine-1.1.25 ] ~ [ wine-1.1.24 ] ~ [ wine-1.1.23 ] ~ [ wine-1.1.22 ] ~ [ wine-1.1.21 ] ~ [ wine-1.1.20 ] ~ [ wine-1.1.19 ] ~ [ wine-1.1.18 ] ~ [ wine-1.1.17 ] ~ [ wine-1.1.16 ] ~ [ wine-1.1.15 ] ~ [ wine-1.1.14 ] ~ [ wine-1.1.13 ] ~ [ wine-1.1.12 ] ~ [ wine-1.1.11 ] ~ [ wine-1.1.10 ] ~ [ wine-1.1.9 ] ~ [ wine-1.1.8 ] ~ [ wine-1.1.7 ] ~ [ wine-1.0.1 ] ~ [ wine-1.1.6 ] ~ [ wine-1.1.5 ] ~ [ wine-1.1.4 ] ~ [ wine-1.1.3 ] ~ [ wine-1.1.2 ] ~ [ wine-1.1.1 ] ~ [ wine-1.1.0 ] ~ [ wine-1.0 ] ~

  1 /*
  2  * DXDiag private include file
  3  *
  4  * Copyright 2004 Raphael Junqueira
  5  *
  6  * This library is free software; you can redistribute it and/or
  7  * modify it under the terms of the GNU Lesser General Public
  8  * License as published by the Free Software Foundation; either
  9  * version 2.1 of the License, or (at your option) any later version.
 10  *
 11  * This library is distributed in the hope that it will be useful,
 12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 14  * Lesser General Public License for more details.
 15  *
 16  * You should have received a copy of the GNU Lesser General Public
 17  * License along with this library; if not, write to the Free Software
 18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 19  */
 20 
 21 #ifndef __WINE_DXDIAG_PRIVATE_H
 22 #define __WINE_DXDIAG_PRIVATE_H
 23 
 24 #include <stdarg.h>
 25 
 26 #include "windef.h"
 27 #include "winbase.h"
 28 #include "wingdi.h"
 29 #include "winuser.h"
 30 #include "objbase.h"
 31 #include "oleauto.h"
 32 
 33 #include "dxdiag.h"
 34 
 35 /* DXDiag Interfaces: */
 36 typedef struct IDxDiagProviderImpl  IDxDiagProviderImpl;
 37 typedef struct IDxDiagContainerImpl IDxDiagContainerImpl;
 38 
 39 /* ---------------- */
 40 /* IDxDiagProvider  */
 41 /* ---------------- */
 42 
 43 /*****************************************************************************
 44  * IDxDiagProvider implementation structure
 45  */
 46 struct IDxDiagProviderImpl {
 47   /* IUnknown fields */
 48   const IDxDiagProviderVtbl *lpVtbl;
 49   LONG        ref;
 50   /* IDxDiagProvider fields */
 51   BOOL        init;
 52   DXDIAG_INIT_PARAMS params;
 53   IDxDiagContainer* pRootContainer;
 54 };
 55 
 56 /* ---------------- */
 57 /* IDxDiagContainer  */
 58 /* ---------------- */
 59 
 60 typedef struct IDxDiagContainerImpl_SubContainer {
 61   IDxDiagContainer* pCont;
 62   WCHAR* contName;
 63   struct IDxDiagContainerImpl_SubContainer* next;
 64 } IDxDiagContainerImpl_SubContainer;
 65 
 66 typedef struct IDxDiagContainerImpl_Property {
 67   LPWSTR vName;
 68   VARIANT v;
 69   struct IDxDiagContainerImpl_Property* next;
 70 } IDxDiagContainerImpl_Property;
 71 
 72 
 73 /*****************************************************************************
 74  * IDxDiagContainer implementation structure
 75  */
 76 struct IDxDiagContainerImpl {
 77   /* IUnknown fields */
 78   const IDxDiagContainerVtbl *lpVtbl;
 79   LONG        ref;
 80   /* IDxDiagContainer fields */
 81   IDxDiagContainerImpl_Property* properties;  
 82   IDxDiagContainerImpl_SubContainer* subContainers;
 83   DWORD nProperties;
 84   DWORD nSubContainers;
 85 };
 86 
 87 /* IUnknown: */
 88 extern HRESULT WINAPI IDxDiagContainerImpl_QueryInterface(PDXDIAGCONTAINER iface, REFIID riid, LPVOID *ppobj);
 89 /** Internal */
 90 extern HRESULT WINAPI IDxDiagContainerImpl_AddProp(PDXDIAGCONTAINER iface, LPCWSTR pwszPropName, VARIANT* pVarProp);
 91 extern HRESULT WINAPI IDxDiagContainerImpl_AddChildContainer(PDXDIAGCONTAINER iface, LPCWSTR pszContName, PDXDIAGCONTAINER pSubCont);
 92 
 93 /**
 94  * factories
 95  */
 96 extern HRESULT DXDiag_CreateDXDiagProvider(LPCLASSFACTORY iface, LPUNKNOWN punkOuter, REFIID riid, LPVOID *ppobj);
 97 
 98 /** internal factory */
 99 extern HRESULT DXDiag_CreateDXDiagContainer(REFIID riid, LPVOID *ppobj);
100 extern HRESULT DXDiag_InitRootDXDiagContainer(IDxDiagContainer* pRootCont);
101 
102 /**********************************************************************
103  * Dll lifetime tracking declaration for dxdiagn.dll
104  */
105 extern LONG DXDIAGN_refCount;
106 static inline void DXDIAGN_LockModule(void) { InterlockedIncrement( &DXDIAGN_refCount ); }
107 static inline void DXDIAGN_UnlockModule(void) { InterlockedDecrement( &DXDIAGN_refCount ); }
108 
109 #endif
110 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.