"""
A module defining an abstract base class for a render backend.
This module contains the `RenderBackend` class, which serves as a
base for implementing rendering operations including enabling and
disabling capabilities, setting blend functions, and managing depth
and material settings. It provides an interface for rendering tasks,
but requires a concrete implementation to define specific behavior.
"""
from abc import ABC
from typing import Any
[docs]
class RenderBackend(ABC):
"""Render Backend"""
[docs]
def enable(self, cap): ...
[docs]
def disable(self, cap): ...
[docs]
def is_enabled(self, cap): ...
[docs]
def set_blend_func(self, src, dst): ...
[docs]
def set_depth_mask(self, flag: bool): ...
[docs]
def get_depth_mask(self) -> bool: ...
[docs]
def set_material(self, face: Any, mat: Any): ...