Table of Contents

Class RasterizerFactory

Namespace
KernSmith.Rasterizer
Assembly
KernSmith.dll

Thread-safe factory for creating rasterizer instances by backend type. Built-in backends are auto-discovered on first access via Create(RasterizerBackend), GetAvailableBackends(), or IsRegistered(RasterizerBackend). Custom backends can register manually via Register(RasterizerBackend, Func<IRasterizer>).

public static class RasterizerFactory
Inheritance
RasterizerFactory
Inherited Members

Methods

Create(RasterizerBackend)

Creates a rasterizer instance for the specified backend.

public static IRasterizer Create(RasterizerBackend backend)

Parameters

backend RasterizerBackend

Returns

IRasterizer

Exceptions

InvalidOperationException

Thrown when the backend is not registered.

GetAvailableBackends()

Returns all registered backends.

public static IReadOnlyList<RasterizerBackend> GetAvailableBackends()

Returns

IReadOnlyList<RasterizerBackend>

IsRegistered(RasterizerBackend)

Returns true if the specified backend has been registered.

public static bool IsRegistered(RasterizerBackend backend)

Parameters

backend RasterizerBackend

Returns

bool

Register(RasterizerBackend, Func<IRasterizer>)

Registers a factory function for the specified backend.

public static void Register(RasterizerBackend backend, Func<IRasterizer> factory)

Parameters

backend RasterizerBackend
factory Func<IRasterizer>