#region --- License ---
/* Copyright (c) 2006, 2007 Stefanos Apostolopoulos
* See license.txt for license info
*/
#endregion
using System;
using System.Collections.Generic;
using System.Text;
using OpenTK.Math;
namespace OpenTK.Graphics
{
///
/// Defines the interface for TextPrinter implementations.
///
public interface ITextPrinterImplementation
{
///
/// Caches a text fragment for future use.
///
/// The vertex array for the text fragment.
/// The index array for the text fragment. Please use the indexCount parameter
/// instead of indices.Count, as the indices array may be larger than necessary for performance reasons.
/// The actual number of indices in the text fragment.
/// A TextHandle that can be used to draw the text fragment.
TextHandle Load(Vector2[] vertices, ushort[] indices, int indexCount);
///
/// Draws the specified cached text fragment.
///
/// The TextHandle corresponding to the desired text fragment.
void Draw(TextHandle handle);
///
/// Draws a text fragment, without caching.
///
/// The vertex array for the text fragment.
/// The index array for the text fragment. Please use the indexCount parameter
/// instead of indices.Count, as the indices array may be larger than necessary for performance reasons.
/// The actual number of indices in the text fragment.
void Draw(Vector2[] vertices, ushort[] indices, int indexCount);
}
}