// // 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.idl"; // Forward Declare namespace Windows { namespace Foundation { typedef struct DateTime DateTime; typedef struct TimeSpan TimeSpan; } } namespace Windows { namespace Storage { runtimeclass StorageFile; runtimeclass StorageFolder; } } namespace Windows { namespace Media { namespace AppRecording { apicontract AppRecordingContract; typedef enum AppRecordingSaveScreenshotOption AppRecordingSaveScreenshotOption; interface IAppRecordingManager; interface IAppRecordingManagerStatics; interface IAppRecordingResult; interface IAppRecordingSaveScreenshotResult; interface IAppRecordingSavedScreenshotInfo; interface IAppRecordingStatus; interface IAppRecordingStatusDetails; runtimeclass AppRecordingManager; runtimeclass AppRecordingResult; runtimeclass AppRecordingSaveScreenshotResult; runtimeclass AppRecordingSavedScreenshotInfo; runtimeclass AppRecordingStatus; runtimeclass AppRecordingStatusDetails; } } } // Generic instantiations namespace Windows { namespace Media { namespace AppRecording { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; } } } } // Type definition namespace Windows { namespace Media { namespace AppRecording { [contractversion(1.0)] apicontract AppRecordingContract { } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] enum AppRecordingSaveScreenshotOption { None = 0, HdrContentVisible = 1 }; [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingManager)] [uuid(E7E26076-A044-48E2-A512-3094D574C7CC)] interface IAppRecordingManager : IInspectable { HRESULT GetStatus([out] [retval] Windows.Media.AppRecording.AppRecordingStatus** result); HRESULT StartRecordingToFileAsync([in] Windows.Storage.StorageFile* file, [out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT RecordTimeSpanToFileAsync([in] Windows.Foundation.DateTime startTime, [in] Windows.Foundation.TimeSpan duration, [in] Windows.Storage.StorageFile* file, [out] [retval] Windows.Foundation.IAsyncOperation** operation); [propget] HRESULT SupportedScreenshotMediaEncodingSubtypes([out] [retval] Windows.Foundation.Collections.IVectorView** value); HRESULT SaveScreenshotToFilesAsync([in] Windows.Storage.StorageFolder* folder, [in] HSTRING filenamePrefix, [in] Windows.Media.AppRecording.AppRecordingSaveScreenshotOption option, [in] Windows.Foundation.Collections.IIterable* requestedFormats, [out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingManager)] [uuid(50E709F7-38CE-4BD3-9DB2-E72BBE9DE11D)] interface IAppRecordingManagerStatics : IInspectable { HRESULT GetDefault([out] [retval] Windows.Media.AppRecording.AppRecordingManager** result); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingResult)] [uuid(3A900864-C66D-46F9-B2D9-5BC2DAD070D7)] interface IAppRecordingResult : IInspectable { [propget] HRESULT Succeeded([out] [retval] boolean* value); [propget] HRESULT ExtendedError([out] [retval] HRESULT* value); [propget] HRESULT Duration([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT IsFileTruncated([out] [retval] boolean* value); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingSaveScreenshotResult)] [uuid(9C5B8D0A-0ABB-4457-AAEE-24F9C12EC778)] interface IAppRecordingSaveScreenshotResult : IInspectable { [propget] HRESULT Succeeded([out] [retval] boolean* value); [propget] HRESULT ExtendedError([out] [retval] HRESULT* value); [propget] HRESULT SavedScreenshotInfos([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingSavedScreenshotInfo)] [uuid(9B642D0A-189A-4D00-BF25-E1BB1249D594)] interface IAppRecordingSavedScreenshotInfo : IInspectable { [propget] HRESULT File([out] [retval] Windows.Storage.StorageFile** value); [propget] HRESULT MediaEncodingSubtype([out] [retval] HSTRING* value); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingStatus)] [uuid(1D0CC82C-BC18-4B8A-A6EF-127EFAB3B5D9)] interface IAppRecordingStatus : IInspectable { [propget] HRESULT CanRecord([out] [retval] boolean* value); [propget] HRESULT CanRecordTimeSpan([out] [retval] boolean* value); [propget] HRESULT HistoricalBufferDuration([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT Details([out] [retval] Windows.Media.AppRecording.AppRecordingStatusDetails** value); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [exclusiveto(Windows.Media.AppRecording.AppRecordingStatusDetails)] [uuid(B538A9B0-14ED-4412-AC45-6D672C9C9949)] interface IAppRecordingStatusDetails : IInspectable { [propget] HRESULT IsAnyAppBroadcasting([out] [retval] boolean* value); [propget] HRESULT IsCaptureResourceUnavailable([out] [retval] boolean* value); [propget] HRESULT IsGameStreamInProgress([out] [retval] boolean* value); [propget] HRESULT IsTimeSpanRecordingDisabled([out] [retval] boolean* value); [propget] HRESULT IsGpuConstrained([out] [retval] boolean* value); [propget] HRESULT IsAppInactive([out] [retval] boolean* value); [propget] HRESULT IsBlockedForApp([out] [retval] boolean* value); [propget] HRESULT IsDisabledByUser([out] [retval] boolean* value); [propget] HRESULT IsDisabledBySystem([out] [retval] boolean* value); } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Media.AppRecording.IAppRecordingManagerStatics, Windows.Media.AppRecording.AppRecordingContract, 1.0)] [threading(both)] runtimeclass AppRecordingManager { [default] interface Windows.Media.AppRecording.IAppRecordingManager; } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass AppRecordingResult { [default] interface Windows.Media.AppRecording.IAppRecordingResult; } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass AppRecordingSaveScreenshotResult { [default] interface Windows.Media.AppRecording.IAppRecordingSaveScreenshotResult; } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass AppRecordingSavedScreenshotInfo { [default] interface Windows.Media.AppRecording.IAppRecordingSavedScreenshotInfo; } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass AppRecordingStatus { [default] interface Windows.Media.AppRecording.IAppRecordingStatus; } [contract(Windows.Media.AppRecording.AppRecordingContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass AppRecordingStatusDetails { [default] interface Windows.Media.AppRecording.IAppRecordingStatusDetails; } } } }