<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Icarus.Utilities</name>
    </assembly>
    <members>
        <member name="T:Icarus.Utilities.Data.Cache">
            <summary>
            This is a caching class, which removes the least recently used items when there is no more need for them.
            </summary>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.#ctor(System.Int32)">
            <summary>
            Creates a new cache class.
            </summary>
            <param name="maxElements">The maximum number of elements the cache can have.</param>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.Add(System.String,System.Object)">
            <summary>
            Adds a new element to the cache. Note that if the cache is already filled up, some element will be removed.
            </summary>
            <param name="key"></param>
            <param name="val"></param>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.Clear">
            <summary>
            Removes all elements from the cache.
            </summary>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.Contains(System.String)">
            <summary>
            Determines whether the cache has an element with the specified key.
            </summary>
            <param name="key"></param>
            <returns></returns>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.Remove(System.String)">
            <summary>
            Removes the object with the specified key from the cache.
            </summary>
            <param name="key"></param>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.GetEnumerator">
            <summary>
            Returns an enumerator over the elements in the cache.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Icarus.Utilities.Data.Cache.FindElementToRemove">
            <summary>
            This function will be called whenever we hit the maximum number of elements allowed and will return the id of the element which we would like to remove. In the current implementation, it uses the LRU algorithm to determine which element to remove.
            </summary>
            <returns></returns>
        </member>
        <member name="P:Icarus.Utilities.Data.Cache.Item(System.String)">
            <summary>
            Returns the element with the specified key from the cache.
            </summary>
        </member>
        <member name="P:Icarus.Utilities.Data.Cache.CanAddElement">
            <summary>
            Gets whether or not we can add another element without removing an existing one.
            </summary>
        </member>
        <member name="T:Icarus.Utilities.Data.Cache.CacheElement">
            <summary>
            We want to keep track of access times to the elements of the cache, hence the need for a private class to encapsulate that data.
            </summary>
        </member>
        <member name="T:Icarus.Utilities.Data.Cache.CacheEnumerator">
            <summary>
            The enumerator for the cache class.
            </summary>
        </member>
        <member name="T:Icarus.Utilities.Graphics.DirectXUtilities">
            <summary>
            Summary description for DirectXUtilities.
            </summary>
        </member>
        <member name="F:Icarus.Utilities.Graphics.DirectXUtilities.mg_Instance">
            <summary>
            Singleton Implementation.
            </summary>
        </member>
        <member name="M:Icarus.Utilities.Graphics.DirectXUtilities.#ctor">
            <summary>
            Singleton Implementation.
            </summary>
        </member>
        <member name="M:Icarus.Utilities.Graphics.DirectXUtilities.Find16BitMode">
            <summary>
            Find16BitMode - Tests for 16-bit buffer formats for compatibility with
            the current display adapter in full-screen.
            </summary>
            <returns>The chosen format, or D3D.Format.Unknown if one isn't found</returns>
        </member>
        <member name="M:Icarus.Utilities.Graphics.DirectXUtilities.FindCurrentDisplayMode">
            <summary>
            Returns the current display mode.
            </summary>
        </member>
        <member name="P:Icarus.Utilities.Graphics.DirectXUtilities.Instance">
            <summary>
            Singleton Implementation.
            </summary>
        </member>
        <member name="T:Icarus.Utilities.Graphics.ExtendedGraphics">
            <summary>
            This class provides additional functionality for drawing such things as rounded rectangles through a Graphics object.
            </summary>
            The code is mostly adapted from this CodeProject article:
            http://www.codeproject.com/cs/media/ExtendedGraphics.asp
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.#ctor(System.Drawing.Graphics)">
            <summary>
            Creates a new extended graphics object.
            </summary>
            <param name="g">The graphics object used for drawing.</param>
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.FillRoundedRectangle(System.Drawing.Brush,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Fills a rounded rectangle.
            </summary>
            <param name="brush"></param>
            <param name="x"></param>
            <param name="y"></param>
            <param name="width"></param>
            <param name="height"></param>
            <param name="radius"></param>
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.FillRoundedRectangle(System.Drawing.Brush,System.Single,System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Fills a rounded rectangle.
            </summary>
            <param name="brush"></param>
            <param name="x"></param>
            <param name="y"></param>
            <param name="width"></param>
            <param name="height"></param>
            <param name="radius"></param>
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.DrawRoundedRectangle(System.Drawing.Pen,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Draws a Rounded Rectangle.
            </summary>
            <param name="pen"></param>
            <param name="x"></param>
            <param name="y"></param>
            <param name="width"></param>
            <param name="height"></param>
            <param name="radius"></param>
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.DrawRoundedRectangle(System.Drawing.Pen,System.Single,System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Draws a Rounded Rectangle.
            </summary>
            <param name="pen"></param>
            <param name="x"></param>
            <param name="y"></param>
            <param name="width"></param>
            <param name="height"></param>
            <param name="radius"></param>
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.GetRoundedRect(System.Drawing.RectangleF,System.Single)">
            <summary>
            Returns a graphics path for a rounded rectangle.
            </summary>
            <param name="baseRect"></param>
            <param name="radius"></param>
            <returns></returns>
        </member>
        <member name="M:Icarus.Utilities.Graphics.ExtendedGraphics.GetCapsule(System.Drawing.RectangleF)">
            <summary>
            Returns a capsular path for the base rectangle.
            </summary>
            <param name="baseRect"></param>
            <returns></returns>
        </member>
        <member name="P:Icarus.Utilities.Graphics.ExtendedGraphics.Graphics">
            <summary>
            The graphics object used for drawing.
            </summary>
        </member>
        <member name="T:Icarus.Utilities.UI.TextBoxWriter">
            <summary>
            TextBoxWriter translates a series of writes to a TextBox display.
            Note that no locking is performed because this class is only written 
            to by BufferedStringTextWriter which does locking. However the 
            class does do an extra level of buffering in the case where the 
            control has not yet been created at the time of the Write().
            </summary>
        </member>
        <member name="F:Icarus.Utilities.UI.TextBoxWriter.textBox">
            <summary>
            The TextBoxBase-derived control we write to
            </summary>
        </member>
        <member name="F:Icarus.Utilities.UI.TextBoxWriter.sb">
            <summary>
            StringBuilder to hold text until the control is actually  created
            </summary>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.#ctor(System.Windows.Forms.TextBox)">
            <summary>
            Create a new TextBoxWriter
            </summary>
            <param name="box">The TextBox to write to</param>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.#ctor(System.Windows.Forms.RichTextBox)">
            <summary>
            Create a new TextBoxWriter
            </summary>
            <param name="box">The RichTextBox to write to</param>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.Clear">
            <summary>
            Clear the TextBox
            </summary>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.Flush">
            <summary>
            Flush the text to the Box
            </summary>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.Write(System.Char)">
            <summary>
            Write Character to the Box
            </summary>
            <param name="c">Character to write</param>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.Write(System.String)">
            <summary>
            Write String to the Box
            </summary>
            <param name="s">string to write</param>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.WriteLine(System.String)">
            <summary>
            Write a String to the Box followed by a newline
            </summary>
            <param name="s">String to write</param>
        </member>
        <member name="M:Icarus.Utilities.UI.TextBoxWriter.InitializeLifetimeService">
            <summary>
            Doesn't do anything
            </summary>
            <returns>null</returns>
        </member>
        <member name="P:Icarus.Utilities.UI.TextBoxWriter.Encoding">
            <summary>
            Retrive the Character Encoding
            </summary>
        </member>
    </members>
</doc>
