blob: 3cda4da0784bdf1cc432d4aa45d5590dcb77865c [file] [log] [blame]
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
import "oaidl.idl";
import "ocidl.idl";
import "propsys.idl";
interface IPortableDeviceKeyCollection;
interface IPortableDevicePropVariantCollection;
interface IPortableDeviceValuesCollection;
[
uuid(6848f6f2-3155-4f86-b6f5-263eeeab3143),
object
]
interface IPortableDeviceValues : IUnknown {
HRESULT GetCount([in] DWORD *pcelt);
HRESULT GetAt(
[in] const DWORD index,
[unique, out, in] PROPERTYKEY *pKey,
[unique, out, in] PROPVARIANT *pValue);
HRESULT SetValue(
[in] REFPROPERTYKEY key,
[in] const PROPVARIANT *pValue);
HRESULT GetValue(
[in] REFPROPERTYKEY key,
[out] PROPVARIANT *pValue);
HRESULT SetStringValue(
[in] REFPROPERTYKEY key,
[in] LPCWSTR Value);
HRESULT GetStringValue(
[in] REFPROPERTYKEY key,
[out] LPWSTR *pValue);
HRESULT SetUnsignedIntegerValue(
[in] REFPROPERTYKEY key,
[in] const ULONG Value);
HRESULT GetUnsignedIntegerValue(
[in] REFPROPERTYKEY key,
[out] ULONG *pValue);
HRESULT SetSignedIntegerValue(
[in] REFPROPERTYKEY key,
[in] const LONG Value);
HRESULT GetSignedIntegerValue(
[in] REFPROPERTYKEY key,
[out] LONG *pValue);
HRESULT SetUnsignedLargeIntegerValue(
[in] REFPROPERTYKEY key,
[in] const ULONGLONG Value);
HRESULT GetUnsignedLargeIntegerValue(
[in] REFPROPERTYKEY key,
[out] ULONGLONG *pValue);
HRESULT SetSignedLargeIntegerValue(
[in] REFPROPERTYKEY key,
[in] const LONGLONG Value) = 0;
HRESULT GetSignedLargeIntegerValue(
[in] REFPROPERTYKEY key,
[out] LONGLONG *pValue);
HRESULT SetFloatValue(
[in] REFPROPERTYKEY key,
[in] const FLOAT Value);
HRESULT GetFloatValue(
[in] REFPROPERTYKEY key,
[out] FLOAT *pValue);
HRESULT SetErrorValue(
[in] REFPROPERTYKEY key,
[in] const HRESULT Value);
HRESULT GetErrorValue(
[in] REFPROPERTYKEY key,
[out] HRESULT *pValue);
HRESULT SetKeyValue(
[in] REFPROPERTYKEY key,
[in] REFPROPERTYKEY Value);
HRESULT GetKeyValue(
[in] REFPROPERTYKEY key,
[out] PROPERTYKEY *pValue);
HRESULT SetBoolValue(
[in] REFPROPERTYKEY key,
[in] const BOOL Value);
HRESULT GetBoolValue(
[in] REFPROPERTYKEY key,
[out] BOOL *pValue);
HRESULT SetIUnknownValue(
[in] REFPROPERTYKEY key,
[in] IUnknown *pValue);
HRESULT GetIUnknownValue(
[in] REFPROPERTYKEY key,
[out] IUnknown **ppValue);
HRESULT SetGuidValue(
[in] REFPROPERTYKEY key,
[in] REFGUID Value);
HRESULT GetGuidValue(
[in] REFPROPERTYKEY key,
[out] GUID *pValue);
HRESULT SetBufferValue(
[in] REFPROPERTYKEY key,
[size_is(cbValue), in] BYTE *pValue,
[in] DWORD cbValue);
HRESULT GetBufferValue(
[in] REFPROPERTYKEY key,
[size_is(*pcbValue), out] BYTE **ppValue,
[out] DWORD *pcbValue);
HRESULT SetIPortableDeviceValuesValue(
[in] REFPROPERTYKEY key,
[in] IPortableDeviceValues *pValue);
HRESULT GetIPortableDeviceValuesValue(
[in] REFPROPERTYKEY key,
[out] IPortableDeviceValues **ppValue);
HRESULT SetIPortableDevicePropVariantCollectionValue(
[in] REFPROPERTYKEY key,
[in] IPortableDevicePropVariantCollection *pValue);
HRESULT GetIPortableDevicePropVariantCollectionValue(
[in] REFPROPERTYKEY key,
[out] IPortableDevicePropVariantCollection **ppValue);
HRESULT SetIPortableDeviceKeyCollectionValue(
[in] REFPROPERTYKEY key,
[in] IPortableDeviceKeyCollection *pValue);
HRESULT GetIPortableDeviceKeyCollectionValue(
[in] REFPROPERTYKEY key,
[out] IPortableDeviceKeyCollection **ppValue);
HRESULT SetIPortableDeviceValuesCollectionValue(
[in] REFPROPERTYKEY key,
[in] IPortableDeviceValuesCollection *pValue);
HRESULT GetIPortableDeviceValuesCollectionValue(
[in] REFPROPERTYKEY key,
[out] IPortableDeviceValuesCollection **ppValue);
HRESULT RemoveValue([in] REFPROPERTYKEY key);
HRESULT CopyValuesFromPropertyStore([in] IPropertyStore *pStore);
HRESULT CopyValuesToPropertyStore([in] IPropertyStore *pStore);
HRESULT Clear();
}
[
uuid(dada2357-e0ad-492e-98db-dd61c53ba353),
object
]
interface IPortableDeviceKeyCollection : IUnknown
{
HRESULT GetCount([in] DWORD *pcElems);
HRESULT GetAt(
[in] const DWORD dwIndex,
[in] PROPERTYKEY *pKey);
HRESULT Add([in] REFPROPERTYKEY Key);
HRESULT Clear();
HRESULT RemoveAt([in] const DWORD dwIndex);
}
[
uuid(89b2e422-4f1b-4316-bcef-a44afea83eb3),
object
]
interface IPortableDevicePropVariantCollection : IUnknown
{
HRESULT GetCount([out] DWORD *pcElems);
HRESULT GetAt(
[in] const DWORD dwIndex,
[in] PROPVARIANT *pValue);
HRESULT Add([in] const PROPVARIANT *pValue);
HRESULT GetType([out] VARTYPE *pvt);
HRESULT ChangeType([in] const VARTYPE vt);
HRESULT Clear();
HRESULT RemoveAt([in] const DWORD dwIndex);
}
[
uuid(6e3f2d79-4e07-48c4-8208-d8c2e5af4a99),
object
]
interface IPortableDeviceValuesCollection : IUnknown
{
HRESULT GetCount([out] DWORD *pcElems);
HRESULT GetAt(
[in] DWORD dwIndex,
[out] IPortableDeviceValues **ppValues);
HRESULT Add([in] IPortableDeviceValues *pValues);
HRESULT Clear();
HRESULT RemoveAt([in] const DWORD dwIndex);
}
[
uuid(2b00ba2f-e750-4beb-9235-97142ede1d3e)
]
library PortableDeviceTypesLib
{
[
uuid(0c15d503-d017-47ce-9016-7b3f978721cc)
]
coclass PortableDeviceValues {
interface IPortableDeviceValues;
}
}