Source code for plasmapy.plasma.plasma_factory

"""
Module for defining the framework around the plasma factory.

.. attention::

   |expect-api-changes|
"""

__all__ = ["PlasmaFactory", "Plasma"]

from plasmapy.plasma.plasma_base import GenericPlasma
from plasmapy.utils.datatype_factory_base import BasicRegistrationFactory


[docs] class PlasmaFactory(BasicRegistrationFactory): """ Plasma factory class. Used to create a variety of Plasma objects. Valid plasma structures are specified by registering them with the factory. .. attention:: |expect-api-changes| """
Plasma = PlasmaFactory( default_widget_type=GenericPlasma, registry=GenericPlasma._registry, # noqa: SLF001 additional_validation_functions=["is_datasource_for"], )