Exemplo n.º 1
0
        public void RegistrarAccionesEquipoSonido(int pos, string nombre, AccionesEquipoSonido accion,
                                                  params string[] args)
        {
            if (!_casa.EquiposSonido.ContainsKey(nombre))
            {
                Console.WriteLine("equipo de sonido " + nombre + " no encontrado");
                return;
            }
            var equipoSonido = _casa.EquiposSonido[nombre];
            var tupla        = TraerComandosEquipoSonido(accion, equipoSonido, args);

            if (tupla == null)
            {
                Console.WriteLine("accion no reconocida");
                return;
            }

            IComando comandoActivar   = tupla.Item1;
            IComando comandoInactivar = tupla.Item2;

            _panel.RegistrarAccion(pos, "Eq Sonido " + nombre + ": " + tupla.Item3, comandoActivar, comandoInactivar);
        }
Exemplo n.º 2
0
        private static Tuple <IComando, IComando, string> TraerComandosEquipoSonido(AccionesEquipoSonido accion,
                                                                                    EquipoSonido equipoSonido, params string[] args)
        {
            switch (accion)
            {
            case AccionesEquipoSonido.EncenderYApagar:
                return(new Tuple <IComando, IComando, string>(
                           new ComandoEncenderEquipo(equipoSonido),
                           new ComandoApagarEquipo(equipoSonido),
                           "prender-apagar"));

            case AccionesEquipoSonido.EmisoraYCD:
                if (args.Length < 2)
                {
                    Console.WriteLine("Faltan parametros para configurar equipo de sonido");
                    return(null);
                }
                return(new Tuple <IComando, IComando, string>(
                           new ComandoSintonizarEmisoraEquipo(equipoSonido, args[0]),
                           new ComandoEjecutarCDEquipo(equipoSonido, args[1]),
                           "emisora-cd"));
            }
            return(null);
        }