using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Media.Imaging;
namespace Tango.RemoteDesktop
{
///
/// Represents an image frame.
///
///
public interface IFrame : IDisposable
{
///
/// Gets the frame width.
///
int Width { get; }
///
/// Gets the frame height.
///
int Height { get; }
///
/// Returns a GDI bitmap representing the frame.
///
///
Bitmap ToBitmap();
///
/// Returns a WPF BitmapSource representing the frame.
///
///
BitmapSource ToBitmapSource();
///
/// Applies this frame onto an existing bitmap.
///
/// The bitmap.
void Apply(Bitmap bitmap);
///
/// Returns an instance of ready to encode this frame.
///
///
///
T ToEncoder() where T : IFrameEncoder;
}
}