version 1.1, 2006/02/15 16:35:05
|
version 1.3, 2006/07/17 18:26:27
|
Line 1
|
Line 1
|
/********************************************************************/ |
/********************************************************************/ |
/* GUI.c */ |
/* GUI.c */ |
/* */ |
/* */ |
|
/* */ |
/* Copyright (c) 1997-2006 Rafael Rico (rafael.rico@uah.es) */ |
/* Copyright (c) 1997-2006 Rafael Rico (rafael.rico@uah.es) */ |
/* */ |
/* */ |
/* This file is part of ADD version 5.10. */ |
/* Este fichero forma parte de ADD */ |
|
/* (Analizador de Dependencias de Datos) */ |
|
/* Version 5.10. */ |
|
/* */ |
/* */ |
/* */ |
/* ADD is free software; you can redistribute it and/or modify */ |
/* ADD es software libre. Puede redistribuirlo y/o modificarlo */ |
/* it under the terms of the GNU General Public License as */ |
/* bajo los términos de la Licencia Pública General de GNU */ |
/* published by the Free Software Foundation; either version 2 of */ |
/* según es publicada por la Free Software Foundation, bien bajo */ |
/* the License, or (at your option) any later version. */ |
/* la versión 2 de dicha Licencia o bien (según su elección) */ |
|
/* bajo cualquier versión posterior. */ |
/* */ |
/* */ |
/* ADD is distributed in the hope that it will be useful, */ |
/* ADD se distribuye con la esperanza de que sea útil, */ |
/* but WITHOUT ANY WARRANTY; without even the implied warranty of */ |
/* pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL */ |
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ |
/* implícita y sin garantizar la CONVENIENCIA PARA UN PROPÓSITO */ |
/* GNU General Public License for more details. */ |
/* PARTICULAR. Véase la Licencia Pública General de GNU para */ |
|
/* más detalles. */ |
/* */ |
/* */ |
/* You should have received a copy of the GNU General Public */ |
/* Debería haber recibido una copia de la Licencia Pública General */ |
/* License along with ADD; if not, write to the Free Software */ |
/* junto con ADD. Si no ha sido así, escriba a la Free Software */ |
/* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA */ |
/* Foundation, Inc., 51 Franklin St, Fifth Floor, */ |
/* 02111-1307 USA */ |
/* Boston, MA 02110-1301 EEUU. */ |
/* */ |
/* */ |
/* --------------------------- History --------------------------- */ |
/* -------------------------- Historia --------------------------- */ |
/* */ |
/* */ |
/* Revision 1.3. 02/2006 */ |
/* $Id$ */ |
/* Improve interactive presentation in screen */ |
|
/* */ |
/* */ |
/* Revision 1.2. 01/2006 */ |
/* Revisión 1.2. 01/2006 */ |
/* Added GPL License and JavaDoc style documentation */ |
/* Se añade la licencia GPL y documentación en estilo Javadoc */ |
/* */ |
/* */ |
/* Revision 1.1. 09/2005 */ |
/* Revisión 1.1. 09/2005 */ |
/* Initial Revision */ |
/* Versión inicial */ |
/* */ |
/* */ |
/********************************************************************/ |
/********************************************************************/ |
|
|
Line 56 extern struct argumentos configuracion;
|
Line 61 extern struct argumentos configuracion;
|
/* contadores de instrucciones y ventanas */ |
/* contadores de instrucciones y ventanas */ |
extern unsigned long instruccion, ventana; |
extern unsigned long instruccion, ventana; |
|
|
|
/* esta función presenta en la pantalla el anuncio de software libre GPL en castellano */ |
|
void PresentarAnuncioGPL_Castellano() |
|
{ |
|
printf(" O DDD DDD \n"); |
|
printf(" / \\ D D D D \n"); |
|
printf(" O---O D D D D \n"); |
|
printf(" | | DDD DDD \n"); |
|
printf(" ___________________________________\n"); |
|
printf(" Analizador de Dependencias de Datos\n"); |
|
printf(" Versión 5.10\n\n"); |
|
printf(" Copyright (C) 1997-2006 Rafael Rico\n\n"); |
|
printf(" ADD es software libre, publicado bajo\n"); |
|
printf(" la Licencia Pública General GNU\n\n\n"); |
|
} |
|
|
|
/* esta función presenta en la pantalla el anuncio de software libre GPL en inglés */ |
|
void PresentarAnuncioGPL_Ingles() |
|
{ |
|
printf(" O DDD DDD \n"); |
|
printf(" / \\ D D D D \n"); |
|
printf(" O---O D D D D \n"); |
|
printf(" | | DDD DDD \n"); |
|
printf(" _________________________\n"); |
|
printf(" Data Dependences Analyzer\n"); |
|
printf(" Version 5.10\n\n"); |
|
printf(" Copyright (C) 1997-2006 Rafael Rico\n\n"); |
|
printf(" ADD is free software, realesed under\n"); |
|
printf(" the GNU General Public License\n\n\n"); |
|
} |
|
|
/* esta función presenta en la pantalla información acerca del análisis en curso */ |
/* esta función presenta en la pantalla información acerca del análisis en curso */ |
void PresentarConfiguracionPantalla() |
void PresentarConfiguracionPantalla() |
{ |
{ |
/* información sobre origen de datos y rango a procesar */ |
/* información sobre origen de datos */ |
printf("Procesando %s en '%s' (rango %2.2f%% desde %2.2f%%)\n\n", |
printf(" Procesando %s en '%s'\n\n", |
configuracion.origen==TRAZA ? "traza":"secuencia", |
configuracion.origen==TRAZA ? "traza":"secuencia", |
configuracion.ficherodatos, |
configuracion.ficherodatos); |
|
|
|
/* información sobre rango a procesar */ |
|
printf(" Rango %2.2f%% desde %2.2f%%\n\n", |
configuracion.rango, |
configuracion.rango, |
configuracion.comienzo); |
configuracion.comienzo); |
|
|
/* información sobre el tamaño de la ventana de instrucciones */ |
/* información sobre el tamaño de la ventana de instrucciones */ |
printf("Tamaño de la ventana = %d instrucciones\n\n", configuracion.ventana); |
printf(" Tamaño de ventana = %d instrucciones\n\n", configuracion.ventana); |
|
|
/* información sobre las contribuciones a tener en cuenta en */ |
/* información sobre las contribuciones a tener en cuenta en */ |
/* la composición de dependencias de datos */ |
/* la composición de dependencias de datos */ |
printf("Mapa de composción de dependencias:\n"); |
printf(" Mapa de composición de dependencias:\n"); |
printf("(T A O) (E I) (D A S C)\n"); |
printf(" (T A O) (E I) (D A S C)\n"); |
|
|
printf("(%c %c %c) (%c %c) (%c %c %c %c)", |
printf(" (%c %c %c) (%c %c) (%c %c %c %c)", |
configuracion.verdaderas==SI ? 'x':'o', |
configuracion.verdaderas==SI ? 'x':'o', |
configuracion.antidependencias==SI ? 'x':'o', |
configuracion.antidependencias==SI ? 'x':'o', |
configuracion.salida==SI ? 'x':'o', |
configuracion.salida==SI ? 'x':'o', |
Line 96 void MostrarCabecera()
|
Line 133 void MostrarCabecera()
|
{ |
{ |
if(configuracion.origen != CADENAHEX) |
if(configuracion.origen != CADENAHEX) |
{ |
{ |
|
/* |
printf("ADD 5.10 --Analizador de Dependencias de Datos--\n\n"); |
printf("ADD 5.10 --Analizador de Dependencias de Datos--\n\n"); |
|
*/ |
|
|
|
PresentarAnuncioGPL_Castellano(); |
|
|
|
/* |
|
PresentarAnuncioGPL_Ingles(); |
|
*/ |
|
|
/* |
/* |
printf("Procesando %s en '%s' (rango %2.2f%%)\n\n", |
printf("Procesando %s en '%s' (rango %2.2f%%)\n\n", |
Line 122 void PresentarEstadoProcesamiento(unsign
|
Line 167 void PresentarEstadoProcesamiento(unsign
|
static char paso50; |
static char paso50; |
static char paso75; |
static char paso75; |
|
|
/* inicializo los flags la primera vez */ |
/* inicializo los flags la primera vez y escribo la hora de comienzo */ |
if(encurso == 1) {paso25=SI; paso50=SI; paso75=SI;} |
if(encurso == 1) |
|
{ |
|
paso25=SI; paso50=SI; paso75=SI; |
|
/* fecha y hora */ |
|
tiempo = time(NULL); |
|
ptr_tm = localtime(&tiempo); |
|
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
|
printf(" Hora de comienzo [%s]\n", fechahora); |
|
} |
|
|
if(paso75==SI) |
if(paso75==SI) |
{ |
{ |
Line 137 void PresentarEstadoProcesamiento(unsign
|
Line 190 void PresentarEstadoProcesamiento(unsign
|
tiempo = time(NULL); |
tiempo = time(NULL); |
ptr_tm = localtime(&tiempo); |
ptr_tm = localtime(&tiempo); |
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
printf("Completado el 25%% [%s]\n", fechahora); |
printf(" Completado el 25%% [%s]\n", fechahora); |
paso25=NO; |
paso25=NO; |
} |
} |
} |
} |
Line 149 void PresentarEstadoProcesamiento(unsign
|
Line 202 void PresentarEstadoProcesamiento(unsign
|
tiempo = time(NULL); |
tiempo = time(NULL); |
ptr_tm = localtime(&tiempo); |
ptr_tm = localtime(&tiempo); |
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
printf("Completado el 50%% [%s]\n", fechahora); |
printf(" Completado el 50%% [%s]\n", fechahora); |
paso50=NO; |
paso50=NO; |
} |
} |
} |
} |
Line 162 void PresentarEstadoProcesamiento(unsign
|
Line 215 void PresentarEstadoProcesamiento(unsign
|
tiempo = time(NULL); |
tiempo = time(NULL); |
ptr_tm = localtime(&tiempo); |
ptr_tm = localtime(&tiempo); |
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
strftime(fechahora, MAX_LINE, "%d/%m/%y %H:%M", ptr_tm); |
printf("Completado el 75%% [%s]\n", fechahora); |
printf(" Completado el 75%% [%s]\n", fechahora); |
paso75=NO; |
paso75=NO; |
} |
} |
} |
} |