Show / Hide Table of Contents

Namespace SadRogue.Primitives.GridViews

Classes

ArrayView<T>

Implementation of ISettableGridView<T> that uses a 1D array to store data.

ArrayView2D<T>

Implementation of ISettableGridView<T> that uses a 2D array to store data.

BitArrayView

A grid view that wraps a C# BitArray into a settable grid view of boolean values.

Diff<T>

Represents a unique patch/diff of the state of a DiffAwareGridView<T>.

DiffAwareGridView<T>

A grid view wrapper useful for recording diffs (change-sets) of changes to a grid view, and applying/removing those change-sets of values from the grid view. Only works with grid views of value types.

GridView1DIndexBase<T>

Exactly like GridViewBase<T>, except for the one indexer left to the user to implement is the one which takes a 1D array, and the position-based indexers are implemented off that.

GridViewBase<T>

A convenient base class to inherit from when implementing IGridView<T> that minimizes the number of items you must implement by implementing indexers in terms of a single indexer taking a Point.

GridViewExtensions

Extensions for IGridView<T> implementations that provide basic utility functions for them.

LambdaGridView<T>

Class implementing IGridView<T>, by providing the "get" functionality via a function that is passed in at construction. For a version that implements ISettableGridView<T>, see LambdaSettableGridView<T>.

LambdaSettableGridView<T>

Class implementing ISettableGridView<T>, by providing the "get" and "set" functionality via functions that are passed in at construction. For a version that implements IGridView<T>, see LambdaGridView<T>.

LambdaSettableTranslationGridView<T1, T2>

A simple SettableTranslationGridView<T1, T2> implementation that allows you to provide functions/lambdas for the translation functions. For a version offering only "get" functionality, see LambdaTranslationGridView<T1, T2>.

LambdaTranslationGridView<T1, T2>

A simple TranslationGridView<T1, T2> implementation that allows you to provide a function/lambda at construction to use as the TranslateGet(Point, T1) implementation. For a version offering "set" functionality, see LambdaSettableTranslationGridView<T1, T2>.

SettableGridView1DIndexBase<T>

Exactly like SettableGridViewBase<T>, except for the one indexer left to the user to implement is the one which takes a 1D array, and the position-based indexers are implemented off that.

SettableGridViewBase<T>

A convenient base class to inherit from when implementing ISettableGridView<T> that minimizes the number of items you must implement by implementing indexers in terms of a single indexer taking a Point.

SettableTranslationGridView<T1, T2>

Class implementing ISettableGridView<T> by providing a functions that translate values from one grid view with complex data types, to a grid view with simple data types, and vice versa. For a version that provides only "get" functionality, see TranslationGridView<T1, T2>.

SettableViewport<T>

Similar to Viewport<T>, but implements ISettableGridView<T>and thus implements "set" functionality via relative coordinates.

TranslationGridView<T1, T2>

Class implementing IGridView<T> by providing a function that translates values from one grid view with complex data types, to a grid view with simple data types. For a version that provides "set" functionality, see SettableTranslationGridView<T1, T2>.

UnboundedViewport<T>

Similar to Viewport<T>, except that the view area is in no way bounded to the edges of the underlying grid view. Instead, if you access a position that cannot map to any valid position in the underlying grid view, a (specified) default value is returned.

ValueChange<T>

Records a value change in a diff as recorded by a DiffAwareGridView<T>.

Viewport<T>

Implements IGridView<T> to expose a "viewport", or sub-area, of another grid view. Its indexers perform relative to absolute coordinate translations based on the viewport size/location, and return the proper value of type T from the underlying view.

Interfaces

IGridView<T>

Interface designed to act as a standardized input/output format that defines minimal required data for algorithms that operate on a grid of some sort. For a concrete implementation to subclass for custom implementations, see GridViewBase<T>.

ISettableGridView<T>

Interface designed to act as a standardized input/output format that defines minimal required data for algorithms that operate and make changes to a grid of some sort. For a concrete implementation to subclass for custom implementations, see SettableGridViewBase<T>.

In This Article
Back to top Generated by DocFX