36DEFINE_GUID(FMTID_NamedProperties, 0xd5cdd505, 0x2e9c, 0x101b, 0x93, 0x97, 0x08, 0x00, 0x2b, 0x2c, 0xf9, 0xae);
77 *
ppv = &
This->IPropertyStoreCache_iface;
95 TRACE(
"(%p) refcount=%u\n", iface,
ref);
116 TRACE(
"(%p) refcount=%u\n", iface,
ref);
121 This->lock.DebugInfo->Spare[0] = 0;
137 TRACE(
"%p,%p\n", iface, cProps);
155 DWORD iProp, PROPERTYKEY *pkey)
162 TRACE(
"%p,%d,%p\n", iface, iProp, pkey);
171 if (format_candidate->count > iProp)
173 format = format_candidate;
174 pkey->fmtid =
format->fmtid;
178 iProp -= format_candidate->count;
187 pkey->pid =
value->pid;
214 ERR(
"don't know how to handle FMTID_NamedProperties\n");
222 format = format_candidate;
243 if (value_candidate->pid ==
key->pid)
245 value = value_candidate;
276 TRACE(
"%p,%p,%p\n", iface,
key, pv);
306 TRACE(
"%p,%p,%p\n", iface,
key, propvar);
328 FIXME(
"%p: stub\n", iface);
339 TRACE(
"%p,%p,%p\n", iface,
key, pstate);
346 *pstate =
value->state;
351 *pstate = PSC_NORMAL;
363 TRACE(
"%p,%p,%p,%p\n", iface,
key, ppropvar, pstate);
373 *pstate =
value->state;
379 PropVariantInit(ppropvar);
380 *pstate = PSC_NORMAL;
393 TRACE(
"%p,%p,%d\n", iface,
key, pstate);
400 value->state = pstate;
468 This->lock.DebugInfo->Spare[0] = (
DWORD_PTR)(__FILE__
": PropertyStore.lock");
471 ret = IPropertyStoreCache_QueryInterface(&
This->IPropertyStoreCache_iface, iid,
ppv);
472 IPropertyStoreCache_Release(&
This->IPropertyStoreCache_iface);
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
static const struct pixel_format_desc formats[]
#define HeapFree(x, y, z)
HRESULT WINAPI PropVariantClear(PROPVARIANT *pvar)
HRESULT WINAPI PropVariantCopy(PROPVARIANT *pvarDest, const PROPVARIANT *pvarSrc)
static HRESULT WINAPI PropertyStore_GetState(IPropertyStoreCache *iface, REFPROPERTYKEY key, PSC_STATE *pstate)
HRESULT PropertyStore_CreateInstance(IUnknown *pUnkOuter, REFIID iid, void **ppv)
static void destroy_format(propstore_format *format)
static HRESULT WINAPI PropertyStore_SetState(IPropertyStoreCache *iface, REFPROPERTYKEY key, PSC_STATE pstate)
static ULONG WINAPI PropertyStore_Release(IPropertyStoreCache *iface)
static HRESULT WINAPI PropertyStore_GetValueAndState(IPropertyStoreCache *iface, REFPROPERTYKEY key, PROPVARIANT *ppropvar, PSC_STATE *pstate)
static HRESULT WINAPI PropertyStore_Commit(IPropertyStoreCache *iface)
static PropertyStore * impl_from_IPropertyStoreCache(IPropertyStoreCache *iface)
static HRESULT WINAPI PropertyStore_QueryInterface(IPropertyStoreCache *iface, REFIID iid, void **ppv)
static HRESULT WINAPI PropertyStore_GetCount(IPropertyStoreCache *iface, DWORD *cProps)
static const IPropertyStoreCacheVtbl PropertyStore_Vtbl
static HRESULT PropertyStore_LookupValue(PropertyStore *This, REFPROPERTYKEY key, BOOL insert, propstore_value **result)
static HRESULT WINAPI PropertyStore_GetAt(IPropertyStoreCache *iface, DWORD iProp, PROPERTYKEY *pkey)
static HRESULT WINAPI PropertyStore_GetValue(IPropertyStoreCache *iface, REFPROPERTYKEY key, PROPVARIANT *pv)
static ULONG WINAPI PropertyStore_AddRef(IPropertyStoreCache *iface)
static HRESULT WINAPI PropertyStore_SetValueAndState(IPropertyStoreCache *iface, REFPROPERTYKEY key, const PROPVARIANT *ppropvar, PSC_STATE state)
static HRESULT WINAPI PropertyStore_SetValue(IPropertyStoreCache *iface, REFPROPERTYKEY key, REFPROPVARIANT propvar)
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
GLboolean GLenum GLenum GLvoid * values
PROPERTYKEY * REFPROPERTYKEY
static IPropertySystem propsys
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
IPropertyStoreCache IPropertyStoreCache_iface
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
#define CONTAINING_RECORD(address, type, field)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
#define TYPE_E_ELEMENTNOTFOUND
#define CLASS_E_NOAGGREGATION