|
|
@ -1,10 +1,13 @@ |
|
|
using System; |
|
|
using System; |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
|
|
|
using System.ComponentModel; |
|
|
using System.Threading.Tasks; |
|
|
using System.Threading.Tasks; |
|
|
using Avalonia.Metadata; |
|
|
using Avalonia.Metadata; |
|
|
using Avalonia.Platform; |
|
|
using Avalonia.Platform; |
|
|
|
|
|
|
|
|
namespace Avalonia.Rendering.Composition; |
|
|
namespace Avalonia.Rendering.Composition; |
|
|
|
|
|
|
|
|
|
|
|
[NotClientImplementable] |
|
|
public interface ICompositionGpuInterop |
|
|
public interface ICompositionGpuInterop |
|
|
{ |
|
|
{ |
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
@ -84,14 +87,22 @@ public enum CompositionGpuImportedImageSynchronizationCapabilities |
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
/// An imported GPU object that's usable by composition APIs
|
|
|
/// An imported GPU object that's usable by composition APIs
|
|
|
/// </summary>
|
|
|
/// </summary>
|
|
|
|
|
|
[NotClientImplementable] |
|
|
public interface ICompositionGpuImportedObject : IAsyncDisposable |
|
|
public interface ICompositionGpuImportedObject : IAsyncDisposable |
|
|
{ |
|
|
{ |
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
/// Tracks the import status of the object. Once the task is completed,
|
|
|
/// Tracks the import status of the object. Once the task is completed,
|
|
|
/// the user code is allowed to free the resource owner in case when a non-owning
|
|
|
/// the user code is allowed to free the resource owner in case when a non-owning
|
|
|
/// sharing handle was used
|
|
|
/// sharing handle was used.
|
|
|
/// </summary>
|
|
|
/// </summary>
|
|
|
|
|
|
Task ImportCompleted { get; } |
|
|
|
|
|
|
|
|
|
|
|
/// <inheritdoc cref="ImportCompleted"/>
|
|
|
|
|
|
/// <seealso cref="ImportCompleted">ImportCompleted (recommended replacement)</seealso>
|
|
|
|
|
|
[Obsolete("Please use ICompositionGpuImportedObject.ImportCompleted instead")] |
|
|
|
|
|
[EditorBrowsable(EditorBrowsableState.Never)] |
|
|
Task ImportCompeted { get; } |
|
|
Task ImportCompeted { get; } |
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
/// Indicates if the device context this instance is associated with is no longer available
|
|
|
/// Indicates if the device context this instance is associated with is no longer available
|
|
|
/// </summary>
|
|
|
/// </summary>
|
|
|
|