tape.analysis.structure_function.calculator_registrar
=====================================================

.. py:module:: tape.analysis.structure_function.calculator_registrar


Attributes
----------

.. autoapisummary::

   tape.analysis.structure_function.calculator_registrar.SF_METHODS


Functions
---------

.. autoapisummary::

   tape.analysis.structure_function.calculator_registrar.register_sf_subclasses
   tape.analysis.structure_function.calculator_registrar.update_sf_subclasses


Module Contents
---------------

.. py:function:: register_sf_subclasses()

   This method will identify all of the subclasses of `StructureFunctionCalculator`
   and build a dictionary that maps `name : subclass`.

   :returns: A dictionary of all of subclasses of `StructureFunctionCalculator`. Where
             the str returned from `subclass.name_id()` is the key, and the class is
             the value.
   :rtype: dict

   :raises ValueError: If a duplicate key is found, a ValueError will be raised. This would
       likely occur if a user copy/pasted an existing subclass but failed to
       update the unique name_id string.


.. py:function:: update_sf_subclasses()

   This function is used to register newly created subclasses of the
   `StructureFunctionCalculator`.


.. py:data:: SF_METHODS

