Exemple #1
0
        public MuteHandler(UDPDuplex behringer, GpioController controller, MuteSetting muteSetting)
        {
            this.muteSetting = muteSetting;
            this.behringer   = behringer;
            this.controller  = controller;

            var mutePathBuilder = new StringBuilder();

            mutePathBuilder.Append("/ch/");
            mutePathBuilder.Append(muteSetting.channel.ToString("D2"));
            mutePathBuilder.Append("/mix/on");
            mutePath = mutePathBuilder.ToString();

            try
            {
                controller.OpenPin(muteSetting.gpio, PinMode.InputPullUp);
                controller.RegisterCallbackForPinValueChangedEvent(muteSetting.gpio, PinEventTypes.Falling, MuteEnabled);
                controller.RegisterCallbackForPinValueChangedEvent(muteSetting.gpio, PinEventTypes.Rising, MuteDisabled);
            }
            catch (Exception e)
            {
                log.Info(e, $"Could not connect to pin {muteSetting.gpio}");
                throw;
            }
        }
Exemple #2
0
        private void Start()
        {
            Methods.PlayMainMenuMusic();

            _muteSetting = PlayerPrefs.GetInt("Muted", 0) == 0 ? MuteSetting.UnMuted : MuteSetting.Muted;

            switch (_muteSetting)
            {
            case MuteSetting.UnMuted:
                muteButton.SetActive(true);
                unMuteButton.SetActive(false);
                break;

            case MuteSetting.Muted:
                muteButton.SetActive(false);
                unMuteButton.SetActive(true);
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }