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

MPF's API reference is broken into several categories. All of it is presented in the way that the modules and classes
are actually used in MPF.

:doc:`Core Components <machine_overview>`

   MPF core components.

:doc:`Devices <devices_overview>`

   MPF devices, including physical devices like flippers, ball devices, switches, lights, etc. as well as logical
   devices like ball saves, extra balls, multiballs, etc.

:doc:`Modes <modes_overview>`

   Built-in modes, such as game, attract, tilt, credits, etc.

:doc:`Platforms <platforms_overview>`

   Hardware platforms interfacess for all supported hardware.

:doc:`Config Players <config_players_overview>`

   Modules responsible for all config players (show_player, light_player, score_player, etc.)

:doc:`Tests <tests_overview>`

   All unit test base classes for writing tests for MPF and your own game.

:doc:`Miscellaneous Components <misc_overview>`

   Things that don't fit into other categories, including utility functions, the
   base classes for modes, players, timers, and other utility functions.

.. toctree::
   :maxdepth: 1
   :hidden:

   machine_overview
   devices_overview
   modes_overview
   platforms_overview
   config_players_overview
   tests_overview
   misc_overview
