// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0021 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "windowscontracts.idl"; import "Windows.Foundation.idl"; import "Windows.Storage.Streams.idl"; // Forward Declare namespace Windows { namespace Foundation { interface IClosable; apicontract UniversalApiContract; } } namespace Windows { namespace Storage { namespace Streams { interface IInputStream; interface IOutputStream; } } } namespace Windows { namespace Storage { namespace Compression { typedef enum CompressAlgorithm CompressAlgorithm; interface ICompressor; interface ICompressorFactory; interface IDecompressor; interface IDecompressorFactory; runtimeclass Compressor; runtimeclass Decompressor; } } } // Generic instantiations // Type definition namespace Windows { namespace Storage { namespace Compression { [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum CompressAlgorithm { InvalidAlgorithm = 0, NullAlgorithm = 1, Mszip = 2, Xpress = 3, XpressHuff = 4, Lzms = 5 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Storage.Compression.Compressor)] [uuid(0AC3645A-57AC-4EE1-B702-84D39D5424E0)] interface ICompressor : IInspectable requires Windows.Storage.Streams.IOutputStream, Windows.Foundation.IClosable { HRESULT FinishAsync([out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT DetachStream([out] [retval] Windows.Storage.Streams.IOutputStream** stream); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Storage.Compression.Compressor)] [uuid(5F3D96A4-2CFB-442C-A8BA-D7D11B039DA0)] interface ICompressorFactory : IInspectable { HRESULT CreateCompressor([in] Windows.Storage.Streams.IOutputStream* underlyingStream, [out] [retval] Windows.Storage.Compression.Compressor** createdCompressor); HRESULT CreateCompressorEx([in] Windows.Storage.Streams.IOutputStream* underlyingStream, [in] Windows.Storage.Compression.CompressAlgorithm algorithm, [in] UINT32 blockSize, [out] [retval] Windows.Storage.Compression.Compressor** createdCompressor); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Storage.Compression.Decompressor)] [uuid(B883FE46-D68A-4C8B-ADA0-4EE813FC5283)] interface IDecompressor : IInspectable requires Windows.Storage.Streams.IInputStream, Windows.Foundation.IClosable { HRESULT DetachStream([out] [retval] Windows.Storage.Streams.IInputStream** stream); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Storage.Compression.Decompressor)] [uuid(5337E252-1DA2-42E1-8834-0379D28D742F)] interface IDecompressorFactory : IInspectable { HRESULT CreateDecompressor([in] Windows.Storage.Streams.IInputStream* underlyingStream, [out] [retval] Windows.Storage.Compression.Decompressor** createdDecompressor); } [activatable(Windows.Storage.Compression.ICompressorFactory, Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass Compressor { [default] interface Windows.Storage.Compression.ICompressor; interface Windows.Storage.Streams.IOutputStream; interface Windows.Foundation.IClosable; } [activatable(Windows.Storage.Compression.IDecompressorFactory, Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] runtimeclass Decompressor { [default] interface Windows.Storage.Compression.IDecompressor; interface Windows.Storage.Streams.IInputStream; interface Windows.Foundation.IClosable; } } } }