offsets array is the size of the wine data format so there is no need
[wine.git] / dlls / devenum / devenum_private.h
blob82a2cf099c8b418c67e99e0d738fb24ea7cf448b
1 /*
2 * includes for devenum.dll
4 * Copyright (C) 2002 John K. Hohm
5 * Copyright (C) 2002 Robert Shearman
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 * NOTES ON FILE:
22 * - Private file where devenum globals are declared
25 #include <stdarg.h>
27 #include "windef.h"
28 #include "winbase.h"
29 #include "winuser.h"
30 #include "winreg.h"
31 #include "winerror.h"
33 #define COM_NO_WINDOWS_H
34 #include "ole2.h"
35 #include "strmif.h"
36 #include "olectl.h"
37 #include "wine/unicode.h"
38 #include "uuids.h"
40 /**********************************************************************
41 * Dll lifetime tracking declaration for devenum.dll
43 extern DWORD dll_ref;
45 /**********************************************************************
46 * ClassFactory declaration for devenum.dll
48 typedef struct
50 /* IUnknown fields */
51 IClassFactoryVtbl *lpVtbl;
52 DWORD ref;
53 } ClassFactoryImpl;
55 typedef struct
57 ICreateDevEnumVtbl *lpVtbl;
58 DWORD ref;
59 } CreateDevEnumImpl;
61 typedef struct
63 IEnumMonikerVtbl *lpVtbl;
64 DWORD ref;
65 DWORD index;
66 HKEY hkey;
67 } EnumMonikerImpl;
69 typedef struct
71 IMonikerVtbl *lpVtbl;
73 DWORD ref;
74 HKEY hkey;
75 } MediaCatMoniker;
77 typedef struct
79 IPropertyBagVtbl *lpVtbl;
80 DWORD ref;
81 HKEY hkey;
82 } RegPropBagImpl;
84 typedef struct
86 IParseDisplayNameVtbl *lpVtbl;
87 DWORD ref;
88 } ParseDisplayNameImpl;
90 MediaCatMoniker * DEVENUM_IMediaCatMoniker_Construct();
91 HRESULT WINAPI DEVENUM_ICreateDevEnum_CreateClassEnumerator(
92 ICreateDevEnum * iface,
93 REFCLSID clsidDeviceClass,
94 IEnumMoniker **ppEnumMoniker,
95 DWORD dwFlags);
97 extern ClassFactoryImpl DEVENUM_ClassFactory;
98 extern CreateDevEnumImpl DEVENUM_CreateDevEnum;
99 extern ParseDisplayNameImpl DEVENUM_ParseDisplayName;
101 /**********************************************************************
102 * Global string constant declarations
104 extern const WCHAR clsid_keyname[6];
105 extern const WCHAR wszInstanceKeyName[];
106 #define CLSID_STR_LEN (sizeof(clsid_keyname) / sizeof(WCHAR))
108 /**********************************************************************
109 * Resource IDs
111 #define IDS_DEVENUM_DSDEFAULT 7
112 #define IDS_DEVENUM_DS 8
113 #define IDS_DEVENUM_WODEFAULT 9
114 #define IDS_DEVENUM_MIDEFAULT 10
115 #define IDS_DEVENUM_KSDEFAULT 11
116 #define IDS_DEVENUM_KS 12