API Reference
=============

This section documents the core API of SO Campaign Manager.

Core Modules
------------

Models
~~~~~~

.. automodule:: socm.core.models
   :members:
   :undoc-members:
   :show-inheritance:

Campaign Management
-------------------

Bookkeeper
~~~~~~~~~~

.. automodule:: socm.bookkeeper.bookkeeper
   :members:
   :undoc-members:
   :show-inheritance:

Planning
~~~~~~~~

.. automodule:: socm.planner.base
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.planner.heft_planner
   :members:
   :undoc-members:
   :show-inheritance:

Execution
---------

Enactors
~~~~~~~~

.. automodule:: socm.enactor.base
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.enactor.rp_enactor
   :members:
   :undoc-members:
   :show-inheritance:

Workflows
~~~~~~~~~

Base Workflow
^^^^^^^^^^^^^

.. automodule:: socm.workflows
   :members:
   :undoc-members:
   :show-inheritance:

ML Mapmaking
^^^^^^^^^^^^

.. automodule:: socm.workflows.ml_mapmaking
   :members:
   :undoc-members:
   :show-inheritance:

SAT Simulation
^^^^^^^^^^^^^^

.. automodule:: socm.workflows.sat_simulation
   :members:
   :undoc-members:
   :show-inheritance:

Null Tests
^^^^^^^^^^

.. automodule:: socm.workflows.ml_null_tests.base
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.workflows.ml_null_tests.time_null_test
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.workflows.ml_null_tests.wafer_null_test
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.workflows.ml_null_tests.pwv_null_test
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.workflows.ml_null_tests.direction_null_test
   :members:
   :undoc-members:
   :show-inheritance:

Utilities
---------

.. automodule:: socm.utils.misc
   :members:
   :undoc-members:
   :show-inheritance:

.. automodule:: socm.utils.states
   :members:
   :undoc-members:
   :show-inheritance:

Command Line Interface
----------------------

.. automodule:: socm.__main__
   :members:
   :undoc-members:
   :show-inheritance:
