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
backendRasterizerBackend
Returns
Exceptions
- InvalidOperationException
Thrown when the backend is not registered.
GetAvailableBackends()
Returns all registered backends.
public static IReadOnlyList<RasterizerBackend> GetAvailableBackends()
Returns
IsRegistered(RasterizerBackend)
Returns true if the specified backend has been registered.
public static bool IsRegistered(RasterizerBackend backend)
Parameters
backendRasterizerBackend
Returns
Register(RasterizerBackend, Func<IRasterizer>)
Registers a factory function for the specified backend.
public static void Register(RasterizerBackend backend, Func<IRasterizer> factory)
Parameters
backendRasterizerBackendfactoryFunc<IRasterizer>