1 | #ifndef WINE_DSHOW_DEVMON_H
|
---|
2 | #define WINE_DSHOW_DEVMON_H
|
---|
3 |
|
---|
4 | /*
|
---|
5 | implements CLSID_CDeviceMoniker.
|
---|
6 |
|
---|
7 | - At least, the following interfaces should be implemented:
|
---|
8 |
|
---|
9 | IUnknown
|
---|
10 | + IPersist - IPersistStream - IMoniker
|
---|
11 | */
|
---|
12 |
|
---|
13 | #include "iunk.h"
|
---|
14 |
|
---|
15 | typedef struct DMON_IMonikerImpl
|
---|
16 | {
|
---|
17 | ICOM_VFIELD(IMoniker);
|
---|
18 | } DMON_IMonikerImpl;
|
---|
19 |
|
---|
20 | typedef struct CDeviceMoniker
|
---|
21 | {
|
---|
22 | QUARTZ_IUnkImpl unk;
|
---|
23 | DMON_IMonikerImpl moniker;
|
---|
24 | /* IMoniker fields */
|
---|
25 | HKEY m_hkRoot;
|
---|
26 | WCHAR* m_pwszPath;
|
---|
27 | } CDeviceMoniker;
|
---|
28 |
|
---|
29 | #define CDeviceMoniker_THIS(iface,member) CDeviceMoniker* This = (CDeviceMoniker*)(((char*)iface)-offsetof(CDeviceMoniker,member))
|
---|
30 |
|
---|
31 | HRESULT QUARTZ_CreateDeviceMoniker(
|
---|
32 | HKEY hkRoot, LPCWSTR lpKeyPath,
|
---|
33 | IMoniker** ppMoniker );
|
---|
34 |
|
---|
35 |
|
---|
36 | /*
|
---|
37 | implements IPropertyBag for accessing registry.
|
---|
38 |
|
---|
39 | - At least, the following interfaces should be implemented:
|
---|
40 |
|
---|
41 | IUnknown
|
---|
42 | + IPropertyBag
|
---|
43 | */
|
---|
44 |
|
---|
45 | #include "iunk.h"
|
---|
46 |
|
---|
47 | typedef struct DMON_IPropertyBagImpl
|
---|
48 | {
|
---|
49 | ICOM_VFIELD(IPropertyBag);
|
---|
50 | } DMON_IPropertyBagImpl;
|
---|
51 |
|
---|
52 | typedef struct CRegPropertyBag
|
---|
53 | {
|
---|
54 | QUARTZ_IUnkImpl unk;
|
---|
55 | DMON_IPropertyBagImpl propbag;
|
---|
56 | /* IPropertyBag fields */
|
---|
57 | HKEY m_hKey;
|
---|
58 | } CRegPropertyBag;
|
---|
59 |
|
---|
60 | #define CRegPropertyBag_THIS(iface,member) CRegPropertyBag* This = (CRegPropertyBag*)(((char*)iface)-offsetof(CRegPropertyBag,member))
|
---|
61 |
|
---|
62 | HRESULT QUARTZ_CreateRegPropertyBag(
|
---|
63 | HKEY hkRoot, LPCWSTR lpKeyPath,
|
---|
64 | IPropertyBag** ppPropBag );
|
---|
65 |
|
---|
66 | #endif /* WINE_DSHOW_DEVMON_H */
|
---|