| OLD | NEW |
| (Empty) |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef CHROME_BROWSER_IMPORTER_PSTORE_DECLARATIONS_H_ | |
| 6 #define CHROME_BROWSER_IMPORTER_PSTORE_DECLARATIONS_H_ | |
| 7 | |
| 8 #ifdef __PSTORE_H__ | |
| 9 #error Should not include pstore.h and this file simultaneously. | |
| 10 #endif | |
| 11 | |
| 12 #include <ole2.h> | |
| 13 | |
| 14 // pstore.h is no longer shipped in the Windows 8 SDK. Define a minimal set | |
| 15 // here. | |
| 16 | |
| 17 // These types are referenced in interfaces we use, but our code does not use | |
| 18 // refer to these types, so simply make them opaque. | |
| 19 class IEnumPStoreTypes; | |
| 20 struct PST_ACCESSRULESET; | |
| 21 struct PST_PROMPTINFO; | |
| 22 struct PST_PROVIDERINFO; | |
| 23 struct PST_TYPEINFO; | |
| 24 | |
| 25 EXTERN_C const IID IID_IPStore; | |
| 26 EXTERN_C const IID IID_IEnumPStoreItems; | |
| 27 | |
| 28 typedef DWORD PST_KEY; | |
| 29 typedef DWORD PST_ACCESSMODE; | |
| 30 #define PST_E_OK _HRESULT_TYPEDEF_(0x00000000L) | |
| 31 | |
| 32 interface IEnumPStoreItems : public IUnknown | |
| 33 { | |
| 34 public: | |
| 35 virtual HRESULT STDMETHODCALLTYPE Next( | |
| 36 DWORD celt, | |
| 37 LPWSTR __RPC_FAR *rgelt, | |
| 38 DWORD __RPC_FAR *pceltFetched) = 0; | |
| 39 | |
| 40 virtual HRESULT STDMETHODCALLTYPE Skip(DWORD celt) = 0; | |
| 41 | |
| 42 virtual HRESULT STDMETHODCALLTYPE Reset(void) = 0; | |
| 43 | |
| 44 virtual HRESULT STDMETHODCALLTYPE Clone( | |
| 45 IEnumPStoreItems __RPC_FAR *__RPC_FAR *ppenum) = 0; | |
| 46 }; | |
| 47 | |
| 48 interface IPStore : public IUnknown | |
| 49 { | |
| 50 public: | |
| 51 virtual HRESULT STDMETHODCALLTYPE GetInfo( | |
| 52 PST_PROVIDERINFO* __RPC_FAR *ppProperties) = 0; | |
| 53 | |
| 54 virtual HRESULT STDMETHODCALLTYPE GetProvParam( | |
| 55 DWORD dwParam, | |
| 56 DWORD __RPC_FAR *pcbData, | |
| 57 BYTE __RPC_FAR *__RPC_FAR *ppbData, | |
| 58 DWORD dwFlags) = 0; | |
| 59 | |
| 60 virtual HRESULT STDMETHODCALLTYPE SetProvParam( | |
| 61 DWORD dwParam, | |
| 62 DWORD cbData, | |
| 63 BYTE __RPC_FAR *pbData, | |
| 64 DWORD dwFlags) = 0; | |
| 65 | |
| 66 virtual HRESULT STDMETHODCALLTYPE CreateType( | |
| 67 PST_KEY Key, | |
| 68 const GUID __RPC_FAR *pType, | |
| 69 PST_TYPEINFO* pInfo, | |
| 70 DWORD dwFlags) = 0; | |
| 71 | |
| 72 virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( | |
| 73 PST_KEY Key, | |
| 74 const GUID __RPC_FAR *pType, | |
| 75 PST_TYPEINFO* __RPC_FAR *ppInfo, | |
| 76 DWORD dwFlags) = 0; | |
| 77 | |
| 78 virtual HRESULT STDMETHODCALLTYPE DeleteType( | |
| 79 PST_KEY Key, | |
| 80 const GUID __RPC_FAR *pType, | |
| 81 DWORD dwFlags) = 0; | |
| 82 | |
| 83 virtual HRESULT STDMETHODCALLTYPE CreateSubtype( | |
| 84 PST_KEY Key, | |
| 85 const GUID __RPC_FAR *pType, | |
| 86 const GUID __RPC_FAR *pSubtype, | |
| 87 PST_TYPEINFO* pInfo, | |
| 88 PST_ACCESSRULESET* pRules, | |
| 89 DWORD dwFlags) = 0; | |
| 90 | |
| 91 virtual HRESULT STDMETHODCALLTYPE GetSubtypeInfo( | |
| 92 PST_KEY Key, | |
| 93 const GUID __RPC_FAR *pType, | |
| 94 const GUID __RPC_FAR *pSubtype, | |
| 95 PST_TYPEINFO* __RPC_FAR *ppInfo, | |
| 96 DWORD dwFlags) = 0; | |
| 97 | |
| 98 virtual HRESULT STDMETHODCALLTYPE DeleteSubtype( | |
| 99 PST_KEY Key, | |
| 100 const GUID __RPC_FAR *pType, | |
| 101 const GUID __RPC_FAR *pSubtype, | |
| 102 DWORD dwFlags) = 0; | |
| 103 | |
| 104 virtual HRESULT STDMETHODCALLTYPE ReadAccessRuleset( | |
| 105 PST_KEY Key, | |
| 106 const GUID __RPC_FAR *pType, | |
| 107 const GUID __RPC_FAR *pSubtype, | |
| 108 PST_ACCESSRULESET* __RPC_FAR *ppRules, | |
| 109 DWORD dwFlags) = 0; | |
| 110 | |
| 111 virtual HRESULT STDMETHODCALLTYPE WriteAccessRuleset( | |
| 112 PST_KEY Key, | |
| 113 const GUID __RPC_FAR *pType, | |
| 114 const GUID __RPC_FAR *pSubtype, | |
| 115 PST_ACCESSRULESET* pRules, | |
| 116 DWORD dwFlags) = 0; | |
| 117 | |
| 118 virtual HRESULT STDMETHODCALLTYPE EnumTypes( | |
| 119 PST_KEY Key, | |
| 120 DWORD dwFlags, | |
| 121 IEnumPStoreTypes __RPC_FAR *__RPC_FAR *ppenum) = 0; | |
| 122 | |
| 123 virtual HRESULT STDMETHODCALLTYPE EnumSubtypes( | |
| 124 PST_KEY Key, | |
| 125 const GUID __RPC_FAR *pType, | |
| 126 DWORD dwFlags, | |
| 127 IEnumPStoreTypes __RPC_FAR *__RPC_FAR *ppenum) = 0; | |
| 128 | |
| 129 virtual HRESULT STDMETHODCALLTYPE DeleteItem( | |
| 130 PST_KEY Key, | |
| 131 const GUID __RPC_FAR *pItemType, | |
| 132 const GUID __RPC_FAR *pItemSubtype, | |
| 133 LPCWSTR szItemName, | |
| 134 PST_PROMPTINFO* pPromptInfo, | |
| 135 DWORD dwFlags) = 0; | |
| 136 | |
| 137 virtual HRESULT STDMETHODCALLTYPE ReadItem( | |
| 138 PST_KEY Key, | |
| 139 const GUID __RPC_FAR *pItemType, | |
| 140 const GUID __RPC_FAR *pItemSubtype, | |
| 141 LPCWSTR szItemName, | |
| 142 DWORD __RPC_FAR *pcbData, | |
| 143 BYTE __RPC_FAR *__RPC_FAR *ppbData, | |
| 144 PST_PROMPTINFO* pPromptInfo, | |
| 145 DWORD dwFlags) = 0; | |
| 146 | |
| 147 virtual HRESULT STDMETHODCALLTYPE WriteItem( | |
| 148 PST_KEY Key, | |
| 149 const GUID __RPC_FAR *pItemType, | |
| 150 const GUID __RPC_FAR *pItemSubtype, | |
| 151 LPCWSTR szItemName, | |
| 152 DWORD cbData, | |
| 153 BYTE __RPC_FAR *pbData, | |
| 154 PST_PROMPTINFO* pPromptInfo, | |
| 155 DWORD dwDefaultConfirmationStyle, | |
| 156 DWORD dwFlags) = 0; | |
| 157 | |
| 158 virtual HRESULT STDMETHODCALLTYPE OpenItem( | |
| 159 PST_KEY Key, | |
| 160 const GUID __RPC_FAR *pItemType, | |
| 161 const GUID __RPC_FAR *pItemSubtype, | |
| 162 LPCWSTR szItemName, | |
| 163 PST_ACCESSMODE ModeFlags, | |
| 164 PST_PROMPTINFO* pPromptInfo, | |
| 165 DWORD dwFlags) = 0; | |
| 166 | |
| 167 virtual HRESULT STDMETHODCALLTYPE CloseItem( | |
| 168 PST_KEY Key, | |
| 169 const GUID __RPC_FAR *pItemType, | |
| 170 const GUID __RPC_FAR *pItemSubtype, | |
| 171 LPCWSTR szItemName, | |
| 172 DWORD dwFlags) = 0; | |
| 173 | |
| 174 virtual HRESULT STDMETHODCALLTYPE EnumItems( | |
| 175 PST_KEY Key, | |
| 176 const GUID __RPC_FAR *pItemType, | |
| 177 const GUID __RPC_FAR *pItemSubtype, | |
| 178 DWORD dwFlags, | |
| 179 IEnumPStoreItems __RPC_FAR *__RPC_FAR *ppenum) = 0; | |
| 180 }; | |
| 181 | |
| 182 #endif // CHROME_BROWSER_IMPORTER_PSTORE_DECLARATIONS_H_ | |
| OLD | NEW |