File:  [Repository ATC2] / ADD_ver_10 / Source Code / Header Files / main.h
Revision 1.1: download - view: text, annotated - select for diffs
Wed Feb 15 16:35:18 2006 UTC (18 years, 9 months ago) by rico
Branches: MAIN
CVS tags: Version_10, HEAD
*** empty log message ***

/********************************************************************/
/*  Main.h                                                          */
/*                                                                  */
/*  Copyright (c) 1997-2006 Rafael Rico      (rafael.rico@uah.es)   */
/*                                                                  */
/*  This file is part of ADD version 5.10.                          */
/*                                                                  */
/*  ADD 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.             */
/*                                                                  */
/*  ADD 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 ADD; if not, write to the Free Software      */
/*  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA        */
/*  02111-1307  USA                                                 */
/*                                                                  */
/*  --------------------------- History --------------------------- */
/*                                                                  */
/*  Revision 1.2. 01/2006                                           */
/*  Added GPL License and JavaDoc style documentation               */
/*                                                                  */
/*  Revision 1.1. 09/2005                                           */
/*  Initial Revision                                                */
/*                                                                  */
/********************************************************************/

/******************************************************************************/
/* MÓDULO: main.h                                                             */
/*                                                                            */
/* Prototipos de funciones utilizadas en el módulo 'Main.c'                   */
/******************************************************************************/
/* Fecha: 9 de septiembre de 2005                                             */
/******************************************************************************/


/* MÓDULO 'Configuracion.c' */

void CargarConfiguracionInicial();
void CapturarArgumentos(int argc, char *argv[]);



/* MÓDULO 'Notificaciones.c' */

void IniciarNotificaciones();
void NotificarConfiguracion();
void Notificar(char *mensaje, unsigned char accion, unsigned char eco);



/* MÓDULO 'BasesDatos.c' */

void CargarBasesDatos();
void LiberarMemoriaBasesDatos();



/* MÓDULO 'Recuentos.c' */

void CrearContadores();
void ActualizarRecuentos(fichainstruccion *tarjetaoperandos);
void LiberarMemoriaContadores();



/* MÓDULO 'CalcularCiclos.c' */

void CalcularCiclosInstruccion(fichainstruccion *tarjetaoperandos);
void ActualizarCPImedio(unsigned short int ciclosALU, unsigned short int ciclosBIU);



/* MÓDULO 'Ficheros.c' */

void SalvarBasesDatos();
void CrearFicheroConfiguracion();

void IniciarFicheroVentana();
void Instruccion2FicheroVentana(fichainstruccion *tarjetaoperandos);
void Matrices2FicheroVentana();

void CrearFicheroResultados(char *fichero);



/* MÓDULO 'GUI.c' */

void MostrarCabecera();
void PresentarEstadoProcesamiento(unsigned long total, unsigned long encurso);
void MostrarTarjeta(fichainstruccion *tarjetaoperandos);
void MostrarVentana();



/* MÓDULO 'AnalizadorOperandos16bits.c' */

void AnalizarOperandosIA16(unsigned char secuencia[12], fichainstruccion *tarjetaoperandos);



/* MÓDULO 'Matrices.c' */

void IniciarPunterosMatrices();

void CrearMatricesDependencias();
void IniciarMatricesDependencias();
void LiberarMemoriaMatricesDependencias();



/* MÓDULO 'AnalizadorDependencias.c' */

void CrearPizarras();
void IniciarPizarras();
void LiberarMemoriaPizarras();

void CrearVectorDependencias();
void IniciarVectorDependencias();
void LiberarMemoriaVectorDependencias();

void AnalizarDependencias(fichainstruccion *tarjetaoperandos, int instruccion);
void GenerarMatrizD();

void AnotarEscrituras(fichainstruccion *tarjetaoperandos, int instruccion);
void AnotarLecturas(fichainstruccion *tarjetaoperandos, int instruccion);



/* MÓDULO 'CalculosMatrices.c' */

void CrearListaOrdenParcial();
void IniciarListaOrdenParcial();
void LiberarMemoriaListaOrdenParcial();

void CrearMatrizCaminos();
void IniciarMatrizCaminos();
void LiberarMemoriaMatrizCaminos();

parametromatriz * CrearVariableAgregada();
void IniciarVariableAgregada(parametromatriz *variable);

unsigned int ListaOrdenParcial(unsigned char **D, char **lista);
unsigned int CalcularMatrizCaminos(unsigned char **D, unsigned char **C);

void CalcularPasosComputacion(parametromatriz *pasos);
void CalcularGradoParalelismoNormalizado(parametromatriz *pasos, parametromatriz *grado);
void CalcularAcoplamiento(parametromatriz *acoplamiento);

void CalcularPromedioVariableAgregada(parametromatriz *media, parametromatriz *actual, unsigned long n);

void CrearHistogramaPasos();
void ActualizarHistogramaPasos();
void LiberarMemoriaHistogramaPasos();



/* MÓDULO 'Auxiliares.c' */

unsigned int BuscarElementoLista(char *lista, char *cadena);
void EliminarElementoLista(char *lista, char *cadena);

void DeterminarRango();

void ConvertirHex2Bin(char *cadenahex, unsigned char *secuencia, unsigned char maxformato);



/* MÓDULO 'Planificador.c' */    /* SIN HACER */

double CalcularTiempo();



FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>