X-Git-Url: http://nitlanguage.org diff --git a/contrib/physical_interface_for_mpd_on_rpi/physical_interface_for_mpd_on_rpi.nit b/contrib/physical_interface_for_mpd_on_rpi/physical_interface_for_mpd_on_rpi.nit index dba3ec8..1c73e64 100644 --- a/contrib/physical_interface_for_mpd_on_rpi/physical_interface_for_mpd_on_rpi.nit +++ b/contrib/physical_interface_for_mpd_on_rpi/physical_interface_for_mpd_on_rpi.nit @@ -14,10 +14,9 @@ # See the License for the specific language governing permissions and # limitations under the License. -# This programs interprets the input of a physical interface thought the -# GPIO pins of a Raspberry Pi to control an MPD server. +# Backend to a hardware interface to control an MPD server from a Raspberry Pi # -# It suppot two inputs: a play/pause button and a rotary encoder to adjust +# It supports two inputs: a play/pause button and a rotary encoder to adjust # the volume. # # The each data output of the volume control are connected to the board @@ -29,26 +28,29 @@ import mpd import privileges class PhysicalInterface - var mpd = new MPDConnection("localhost", 6600, "password") + var mpd = new MPDConnection(server, port, password) + protected fun password: String do return "password" + fun server: String do return "localhost" + fun port: Int do return 6600 - var but_play: Switch - var but_playlist_a: Switch + var but_play: Switch is noinit + var but_playlist_a: Switch is noinit - var vol: RotaryEncoder + var vol: RotaryEncoder is noinit var vol_step = 2 - var lcd: HD44780 + var lcd: HD44780 is noinit - var lcd_backlight: RPiPin + var lcd_backlight: RPiPin is noinit var lcd_backlight_delay = 1000 - var buzzer: Buzzer + var buzzer: Buzzer is noinit init do # commandline options for privileges drop var opts = new OptionContext - var opt_ug = new OptionDropPrivileges + var opt_ug = new OptionUserAndGroup.for_dropping_privileges #opt_ug.mandatory = true opts.add_option(opt_ug)