File:  [Repository ATC2] / ADD_ver_10 / Source Code / Header Files / main.h
Revision 1.2: download - view: text, annotated - select for diffs
Tue Feb 28 15:04:13 2006 UTC (18 years, 6 months ago) by rico
Branches: MAIN
CVS tags: HEAD
*** empty log message ***

/********************************************************************/
/*  main.h                                                          */
/*                                                                  */
/*                                                                  */
/*  Copyright (c) 1997-2006 Rafael Rico      (rafael.rico@uah.es)   */
/*                                                                  */
/*  Este fichero forma parte de ADD                                 */
/*  (Analizador de Dependencias de Datos)                           */
/*  Version 5.10.                                                   */
/*                                                                  */
/*                                                                  */
/*  ADD es software libre. Puede redistribuirlo y/o modificarlo     */
/*  bajo los términos de la Licencia Pública General de GNU         */
/*  según es publicada por la Free Software Foundation, bien bajo   */
/*  la versión 2 de dicha Licencia o bien (según su elección)       */
/*  bajo cualquier versión posterior.                               */
/*                                                                  */
/*  ADD se distribuye con la esperanza de que sea útil,             */
/*  pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL    */
/*  implícita y sin garantizar la CONVENIENCIA PARA UN PROPÓSITO    */
/*  PARTICULAR. Véase la Licencia Pública General de GNU para       */
/*  más detalles.                                                   */
/*                                                                  */
/*  Debería haber recibido una copia de la Licencia Pública General */
/*  junto con ADD. Si no ha sido así, escriba a la Free Software    */
/*  Foundation, Inc., 51 Franklin St, Fifth Floor,                  */
/*  Boston, MA  02110-1301  EEUU.                                   */
/*                                                                  */
/*  -------------------------- Historia --------------------------- */
/*                                                                  */
/*  $Id: main.h,v 1.2 2006/02/28 15:04:13 rico Exp $                                                            */
/*                                                                  */
/*  Revisión 1.2. 01/2006                                           */
/*  Se añade la licencia GPL y documentación en estilo Javadoc      */
/*                                                                  */
/*  Revisión 1.1. 09/2005                                           */
/*  Versión inicial                                                 */
/*                                                                  */
/********************************************************************/

/******************************************************************************/
/* 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>