// Copyright (c) 2010-2014 SharpDX - Alexandre Mutel // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. namespace SharpDX.MediaFoundation { [Shadow(typeof(AsyncCallbackShadow))] public partial interface IAsyncCallback { /// /// Gets a flag indicating the behavior of the callback object's method. Default behavior should be . /// /// The a flag indicating the behavior of the callback object's method. /// bb970381 /// HRESULT IMFAsyncCallback::GetParameters([Out] MFASYNC_CALLBACK_FLAGS* pdwFlags,[Out] unsigned int* pdwQueue) /// IMFAsyncCallback::GetParameters SharpDX.MediaFoundation.AsyncCallbackFlags Flags { get; } /// /// Gets the identifier of the work queue on which the callback is dispatched. See remarks. /// /// The work queue identifier. /// ///

This value can specify one of the standard Media Foundation work queues, or a work queue created by the application. For list of standard Media Foundation work queues, see Work Queue Identifiers. To create a new work queue, call . The default value is .

If the work queue is not compatible with the value returned in pdwFlags, the Media Foundation platform returns when it tries to dispatch the callback. (See .)

///
/// bb970381 /// HRESULT IMFAsyncCallback::GetParameters([Out] MFASYNC_CALLBACK_FLAGS* pdwFlags,[Out] unsigned int* pdwQueue) /// IMFAsyncCallback::GetParameters WorkQueueId WorkQueueId { get; } /// ///

Applies to: desktop apps | Metro style apps

Called when an asynchronous operation is completed.

///
///

Pointer to the interface. Pass this reference to the asynchronous End... method to complete the asynchronous call.

///

The method returns an . Possible values include, but are not limited to, those in the following table.

Return codeDescription

The method succeeded.

?

/// ///

Within your implementation of Invoke, call the corresponding End... method.

This interface is available on the following platforms if the Windows Media Format 11 SDK redistributable components are installed:

///
/// /// bb970360 /// HRESULT IMFAsyncCallback::Invoke([In, Optional] IMFAsyncResult* pAsyncResult) /// IMFAsyncCallback::Invoke void Invoke(SharpDX.MediaFoundation.AsyncResult asyncResultRef); } }