[3/5] include: Add declarations for metadata handler info interfaces.

Vincent Povirk madewokherd at gmail.com
Thu Jul 26 09:40:15 CDT 2012


-------------- next part --------------
From ec0528471f657026efd8a9bc0b1b7db929dae8af Mon Sep 17 00:00:00 2001
From: Vincent Povirk <vincent at codeweavers.com>
Date: Thu, 31 May 2012 10:56:46 -0500
Subject: [PATCH 3/5] include: Add declarations for metadata handler info
 interfaces.

---
 include/wincodecsdk.idl |   55 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/include/wincodecsdk.idl b/include/wincodecsdk.idl
index 3089ebc..e39b99b 100644
--- a/include/wincodecsdk.idl
+++ b/include/wincodecsdk.idl
@@ -48,6 +48,21 @@ cpp_quote("DEFINE_GUID(CLSID_WICPngTextMetadataWriter, 0xb5ebafb9,0x253e,0x4a72,
 cpp_quote("DEFINE_GUID(CLSID_WICIfdMetadataReader, 0x8f914656,0x9d0a,0x4eb2,0x90,0x19,0x0b,0xf9,0x6d,0x8a,0x9e,0xe6);")
 cpp_quote("DEFINE_GUID(CLSID_WICExifMetadataReader, 0xd9403860,0x297f,0x4a49,0xbf,0x9b,0x77,0x89,0x81,0x50,0xa4,0x42);")
 
+typedef struct WICMetadataPattern {
+    ULARGE_INTEGER Position;
+    ULONG Length;
+    BYTE *Pattern;
+    BYTE *Mask;
+    ULARGE_INTEGER DataOffset;
+} WICMetadataPattern;
+
+typedef struct WICMetadataHeader {
+    ULARGE_INTEGER Position;
+    ULONG Length;
+    BYTE *Header;
+    ULARGE_INTEGER DataOffset;
+} WICMetadataHeader;
+
 [
     object,
     uuid(aba958bf-c672-44d1-8d61-ce6df2e682c2)
@@ -114,6 +129,29 @@ interface IWICMetadataReader : IUnknown
 
 [
     object,
+    uuid(eebf1f5b-07c1-4447-a3ab-22acaf78a804)
+]
+interface IWICMetadataReaderInfo : IWICMetadataHandlerInfo
+{
+    [local]
+    HRESULT GetPatterns(
+        [in] REFGUID guidContainerFormat,
+        [in] UINT cbSize,
+        [out, unique] WICMetadataPattern *pPattern,
+        [out, unique] UINT *pcCount,
+        [out, unique] UINT *pcbActual);
+
+    HRESULT MatchesPattern(
+        [in] REFGUID guidContainerFormat,
+        [in] IStream *pIStream,
+        [out] BOOL *pfMatches);
+
+    HRESULT CreateInstance(
+        [out] IWICMetadataReader **ppIReader);
+}
+
+[
+    object,
     uuid(f7836e16-3be0-470b-86bb-160d0aecd7de)
 ]
 interface IWICMetadataWriter : IWICMetadataReader
@@ -139,6 +177,23 @@ interface IWICMetadataWriter : IWICMetadataReader
 
 [
     object,
+    uuid(b22e3fba-3925-4323-b5c1-9ebfc430f236)
+]
+interface IWICMetadataWriterInfo : IWICMetadataHandlerInfo
+{
+    [local]
+    HRESULT GetHeader(
+        [in] REFGUID guidContainerFormat,
+        [in] UINT cbSize,
+        [out, unique] WICMetadataHeader *pHeader,
+        [out, unique] UINT *pcbActual);
+
+    HRESULT CreateInstance(
+        [out] IWICMetadataWriter **ppIWriter);
+}
+
+[
+    object,
     uuid(feaa2a8d-b3f3-43e4-b25c-d1de990a1ae1)
 ]
 interface IWICMetadataBlockReader : IUnknown
-- 
1.7.9.5


More information about the wine-patches mailing list