Ejemplo n.º 1
0
        /// <summary>
        /// Constructo. Este metodo se llama cuando se lanza la apliación.
        /// </summary>
        public Form1()
        {
            InitializeComponent();

            //Contador usado para el envio y recepción de tramas.
            count = 0;

            //Crea el modelo de datos.
            CreateDataModel();


            //------------------------------------
            //Carga de los conectores y protocolos
            //------------------------------------

            //Se cargan los conectores (Se usa el primero de la lista)
            listaConectores = ConectionConfig.LoadConfig("config.xml", "conector");
            //Se cargan los protocolos
            listaProtocolos = ConectionConfig.LoadConfig("config.xml", "protocol");


            //CONEXION
            try
            {
                //Se cargan los conectores
                conexionEstablecida = (IConector)listaConectores[0].getInstance();
                //Se establece la conexión.

                //Inicialización de la lista de peticiones
                listaPeticiones = new ListaPeticiones(conexionEstablecida);


                //Se cargan los protocolos (Se usa el primero de la lista)
                protocoloEnUso = (IIOProtocolInterface)listaProtocolos[0].getInstance();

                //Se prepara la lista de peticiones
                RellenarPeticiones(listaPeticiones);
                //Se enciende el timer.

                conexionEstablecida.Connect(listaConectores[0].Config);
                listaPeticiones.Start();


                tm          = new Timer();
                tm.Interval = 50;
                tm.Tick    += new EventHandler(ActualizaInterfaz);
                tm.Start();
            }
            catch (Exception ex)
            {
                //Si ha habido algún error en la conexión se cierra y se muestra el mensaje.
                if (conexionEstablecida != null)
                {
                    conexionEstablecida.Close();
                    conexionEstablecida = null;
                }
                MessageBox.Show("Error..... " + ex.Message);
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Constructor. Construye un modelo con i entrdas digitales y j entradas analógicas.
 /// </summary>
 /// <param name="i">Cantidad de entradas digitales de nuestro modelo.</param>
 /// <param name="j">Cantidad de entradas analogicas de nuestro modelo.</param>
 /// <param name="k">Cantidad de entradas analogicas reales de nuestro modelo.</param>
 public Modelo(int i)
 {
     DigitalInput = new bool[i];
     ///TODO: Instanciar las variables analogicas (valor codificado y valor real)
     funcionesActualizarInterfaz = new List <CustomUpdateHandler>();
     bdconfig = ConectionConfig.LoadConfig("config.xml", "database")[0];
     bd       = (DB_Interface)bdconfig.getInstance();
 }