This documentation is for an unreleased version of MPF!
This is the developer documentation for MPF 0.54, which is the “dev” (next) release of MPF that is a work-in-progress. Use the “Read the Docs” link in the lower left corner to view the developer docs for the version of MPF you’re using.
Ball hold device which can be used to keep balls in ball devices and control their eject later on.
Accessing ball_holds in code
The device collection which contains the ball_holds in your machine is available via
self.machine.ball_holds. For example, to access one called “foo”, you would use
self.machine.ball_holds.foo. You can also access ball_holds in dictionary form, e.g.
You can also get devices by tag or hardware number. See the DeviceCollection documentation for details.
Methods & Attributes
Ball_holds have the following methods & attributes available. Note that methods & attributes inherited from base classes are not included here.
enable() → None¶
Return true if enabled.
Handle disable control event.
Handle enable control event.
Event handler for release_all event.
Event handler for release_one event.
Event handler for release_one_if_full event.
Event handler for reset event.
format_log_line(msg, context, error_no) → str¶
Return a formatted log line with log link and context.
Get the value of a placeholder.
Return true if hold is full.
Return if enabled is persisted.
raise_config_error(msg, error_no, *, context=None) → NoReturn¶
Raise a ConfigFileError exception.
Release all balls in hold.
Release all balls and return the actual amount of balls released.
Parameters: balls_to_release – number of ball to release from hold
Release one ball.
Release one ball if hold is full.
Return the remaining capacity of the hold.
Reset the hold.
Will release held balls. Device status will stay the same (enabled/disabled). It will wait for those balls to drain and block ball_ending until they do. Those balls are not included in ball_in_play.
Subscribe to an attribute.