// -----------------------------------------------------------------------
//
// Copyright 2015 MIT Licence. See licence.md for more information.
//
// -----------------------------------------------------------------------
namespace Perspex.Platform
{
///
/// Defines a renderer.
///
///
/// The interface used to render s. You will usually want to inherit from
/// rather than implementing the whole interface
/// as RenderBase has a default implementation for the non-platform specific parts of a
/// renderer.
///
public interface IRenderer
{
///
/// Gets the number of times has been called.
///
int RenderCount { get; }
///
/// Renders the specified visual.
///
/// The visual to render.
/// An optional platform-specific handle.
void Render(IVisual visual, IPlatformHandle handle);
///
/// Resizes the rendered viewport.
///
/// The new width.
/// The new height.
void Resize(int width, int height);
}
}