<?php

/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
 *
 * Autor: Carlos Garcia Gomez
*/
/// incluimos el codigo necesario para conectar a la base de datos
require "config.php";
require "clases/db/postgresql.php";
/// cargamos el codigo del automata
require "clases/automata.php";
$mi_automata = new automata($_SERVER["argv"][1]);
$mi_automata->run();
Пример #2
0
 /**
  * Metodo para tratar la informacion que se recibe del automata y enviarle al automata una respuesta.
  *
  * LUCES
  *
  * Si se pulsa el interruptor de la entrada, si la luz esta apagada y las luces no estan bloqueadas (interruptor=0),
  * las luces se encenderan, en caso contrario, si estan bloqueadas (interruptor=1), es q ya se a pulsado interruptor
  * antes para encender las luces
  *
  * Si se pulsa el interruptor de la entrada, si la luz esta encendida y las luces no estan bloqueadas (interruptro=0),
  * las luces se apagaran, en caso contrario, si estan bloqueadas (interruptor=1), es q ya se a pulsado el interruptor
  * antes y que en la sala hay un acto
  *
  * MICROFONOS
  *
  * Si al pulsar el interruptor de algun microfono este esta apagado, se encendera el led del interruptor, se activara
  * el microfono y se marcara el boton de la pantalla que indica que el microfono esta encendido. Si el microfono ya
  * estaba encendido, se apagara el led, se desactivara el microfono y se marcara en la pantalla que el microfono esta apagado
  *
  * PIZARRA
  *
  * Si al pulsar el interruptor de la pizarra, la pizarra esta encendida, se apagara. Y en caso contrario se encendera
  *
  * @access public
  */
 public function procesarComandoSala($comando)
 {
     //self::$automata->cargarEstado();
     /*
      * Pulsan el interruptor de la entrada de la sala
      */
     //Si la luz de la sala esta apagada y pulsan el interruptor
     if (strcmp($comando, self::$ARGIA) == 0 && self::$automata->isLuz() == 0) {
         //Si las luces no estan bloqueadas (interruptor=0)
         if ($this->isLucesBloqueadas() == 0) {
             //encender la luz del suelo
             $this->encender();
             //encender la luz del techo
             AccesoControladoresDispositivos::$ctrlLuzTecho->encenderLucesTecho();
             echo "\nSe a pulsado el interruptor de la sala, las luces estan encendidas\n";
         } else {
             //Si las luces estan bloqueadas (interruptor=1)
             echo "La luz de sala ya esta encendida";
         }
         //Si la luz de la sala esta encendida y pulsan el interruptor
     } else {
         if (strcmp($comando, self::$ARGIA) == 0 && self::$automata->isLuz() == 1) {
             //Si las luces no estan bloqueadas (interruptor=0)
             if ($this->isLucesBloqueadas() == 0) {
                 //apagar la luz del suelo
                 $this->apagarLuzSala();
                 //apagar la luz del techo
                 AccesoControladoresDispositivos::$ctrlLuzTecho->apagarLucesTecho();
                 echo "\nSe a pulsado el interruptor de la sala, las luces estan apagadas";
             } else {
                 //Si las luces estan bloqueadas (interruptor=1)
                 echo "No se puede apagar la luz: En la sala hay un acto";
             }
         } else {
             if (strcmp(self::$MICPRESI_1, $comando) == 0) {
                 if ($this->isMicrofonoOn("M1") == 0) {
                     AccesoControladoresDispositivos::$ctrlMesaMezclas->activarMicPresidencia("M1");
                     AccesoControladoresDispositivos::$ctrlAutomata->encenderLedMicrofono("M1");
                     AccesoGui::$guiSonido->activarMicroPresidencia("M1");
                 } else {
                     if ($this->isMicrofonoOn("M1") == 1) {
                         AccesoControladoresDispositivos::$ctrlMesaMezclas->desactivarMicPresidencia("M1");
                         AccesoControladoresDispositivos::$ctrlAutomata->apagarLedMicrofono("M1");
                         AccesoGui::$guiSonido->desactivarMicroPresidencia("M1");
                     }
                 }
             } else {
                 if (strcmp(self::$MICPRESI_2, $comando) == 0) {
                     if ($this->isMicrofonoOn("M2") == 0) {
                         AccesoControladoresDispositivos::$ctrlMesaMezclas->activarMicPresidencia("M2");
                         AccesoControladoresDispositivos::$ctrlAutomata->encenderLedMicrofono("M2");
                         AccesoGui::$guiSonido->activarMicroPresidencia("M2");
                     } else {
                         if ($this->isMicrofonoOn("M2") == 1) {
                             AccesoControladoresDispositivos::$ctrlMesaMezclas->desactivarMicPresidencia("M2");
                             AccesoControladoresDispositivos::$ctrlAutomata->apagarLedMicrofono("M2");
                             AccesoGui::$guiSonido->desactivarMicroPresidencia("M2");
                         }
                     }
                 } else {
                     if (strcmp(self::$MICPRESI_3, $comando) == 0) {
                         if ($this->isMicrofonoOn("M3") == 0) {
                             AccesoControladoresDispositivos::$ctrlMesaMezclas->activarMicPresidencia("M3");
                             AccesoControladoresDispositivos::$ctrlAutomata->encenderLedMicrofono("M3");
                             AccesoGui::$guiSonido->activarMicroPresidencia("M3");
                         } else {
                             if ($this->isMicrofonoOn("M3") == 1) {
                                 AccesoControladoresDispositivos::$ctrlMesaMezclas->desactivarMicPresidencia("M3");
                                 AccesoControladoresDispositivos::$ctrlAutomata->apagarLedMicrofono("M3");
                                 AccesoGui::$guiSonido->desactivarMicroPresidencia("M3");
                             }
                         }
                     } else {
                         if (strcmp(self::$MICPRESI_4, $comando) == 0) {
                             if ($this->isMicrofonoOn("M4") == 0) {
                                 AccesoControladoresDispositivos::$ctrlMesaMezclas->activarMicPresidencia("M4");
                                 AccesoControladoresDispositivos::$ctrlAutomata->encenderLedMicrofono("M4");
                                 AccesoGui::$guiSonido->activarMicroPresidencia("M4");
                             } else {
                                 if ($this->isMicrofonoOn("M4") == 1) {
                                     AccesoControladoresDispositivos::$ctrlMesaMezclas->desactivarMicPresidencia("M4");
                                     AccesoControladoresDispositivos::$ctrlAutomata->apagarLedMicrofono("M4");
                                     AccesoGui::$guiSonido->desactivarMicroPresidencia("M4");
                                 }
                             }
                         } else {
                             if (strcmp(self::$MICATRIL, $comando) == 0) {
                                 if ($this->isMicrofonoOn("M5") == 0) {
                                     AccesoControladoresDispositivos::$ctrlMesaMezclas->activarMicPresidencia("M5");
                                     AccesoControladoresDispositivos::$ctrlAutomata->encenderLedMicrofono("M5");
                                     AccesoGui::$guiSonido->activarMicroPresidencia("M5");
                                 } else {
                                     if ($this->isMicrofonoOn("M5") == 1) {
                                         AccesoControladoresDispositivos::$ctrlMesaMezclas->desactivarMicPresidencia("M5");
                                         AccesoControladoresDispositivos::$ctrlAutomata->apagarLedMicrofono("M5");
                                         AccesoGui::$guiSonido->desactivarMicroPresidencia("M5");
                                     }
                                 }
                             } else {
                                 if (strcmp(self::$MICATRIL2, $comando) == 0) {
                                     if ($this->isMicrofonoOn("M6") == 0) {
                                         AccesoControladoresDispositivos::$ctrlMesaMezclas->activarMicPresidencia("M6");
                                         AccesoControladoresDispositivos::$ctrlAutomata->encenderLedMicrofono("M6");
                                         AccesoGui::$guiSonido->activarMicroPresidencia("M6");
                                     } else {
                                         if ($this->isMicrofonoOn("M6") == 1) {
                                             AccesoControladoresDispositivos::$ctrlMesaMezclas->desactivarMicPresidencia("M6");
                                             AccesoControladoresDispositivos::$ctrlAutomata->apagarLedMicrofono("M6");
                                             AccesoGui::$guiSonido->desactivarMicroPresidencia("M6");
                                         }
                                     }
                                 } else {
                                     if (strcmp($comando, self::$SHOWMEPIZARRA) == 0) {
                                         if ($this->isPizarraShow() == 0) {
                                             echo "\npizarra show\n";
                                             $this->showPizarra();
                                         } else {
                                             if ($this->isPizarraShow() == 1) {
                                                 echo "\npizarra apagar\n";
                                                 $this->showPizarraApagar();
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
 }