Annotation of ADD_ver_10/Source Code/Header Files/main.h, revision 1.2
1.1 rico 1: /********************************************************************/
1.2 ! rico 2: /* main.h */
! 3: /* */
1.1 rico 4: /* */
5: /* Copyright (c) 1997-2006 Rafael Rico (rafael.rico@uah.es) */
6: /* */
1.2 ! rico 7: /* Este fichero forma parte de ADD */
! 8: /* (Analizador de Dependencias de Datos) */
! 9: /* Version 5.10. */
! 10: /* */
! 11: /* */
! 12: /* ADD es software libre. Puede redistribuirlo y/o modificarlo */
! 13: /* bajo los términos de la Licencia Pública General de GNU */
! 14: /* según es publicada por la Free Software Foundation, bien bajo */
! 15: /* la versión 2 de dicha Licencia o bien (según su elección) */
! 16: /* bajo cualquier versión posterior. */
! 17: /* */
! 18: /* ADD se distribuye con la esperanza de que sea útil, */
! 19: /* pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL */
! 20: /* implícita y sin garantizar la CONVENIENCIA PARA UN PROPÓSITO */
! 21: /* PARTICULAR. Véase la Licencia Pública General de GNU para */
! 22: /* más detalles. */
! 23: /* */
! 24: /* Debería haber recibido una copia de la Licencia Pública General */
! 25: /* junto con ADD. Si no ha sido así, escriba a la Free Software */
! 26: /* Foundation, Inc., 51 Franklin St, Fifth Floor, */
! 27: /* Boston, MA 02110-1301 EEUU. */
1.1 rico 28: /* */
1.2 ! rico 29: /* -------------------------- Historia --------------------------- */
1.1 rico 30: /* */
1.2 ! rico 31: /* $Id$ */
1.1 rico 32: /* */
1.2 ! rico 33: /* Revisión 1.2. 01/2006 */
! 34: /* Se añade la licencia GPL y documentación en estilo Javadoc */
1.1 rico 35: /* */
1.2 ! rico 36: /* Revisión 1.1. 09/2005 */
! 37: /* Versión inicial */
1.1 rico 38: /* */
39: /********************************************************************/
40:
41: /******************************************************************************/
42: /* MÓDULO: main.h */
43: /* */
44: /* Prototipos de funciones utilizadas en el módulo 'Main.c' */
45: /******************************************************************************/
46: /* Fecha: 9 de septiembre de 2005 */
47: /******************************************************************************/
48:
49:
50: /* MÓDULO 'Configuracion.c' */
51:
52: void CargarConfiguracionInicial();
53: void CapturarArgumentos(int argc, char *argv[]);
54:
55:
56:
57: /* MÓDULO 'Notificaciones.c' */
58:
59: void IniciarNotificaciones();
60: void NotificarConfiguracion();
61: void Notificar(char *mensaje, unsigned char accion, unsigned char eco);
62:
63:
64:
65: /* MÓDULO 'BasesDatos.c' */
66:
67: void CargarBasesDatos();
68: void LiberarMemoriaBasesDatos();
69:
70:
71:
72: /* MÓDULO 'Recuentos.c' */
73:
74: void CrearContadores();
75: void ActualizarRecuentos(fichainstruccion *tarjetaoperandos);
76: void LiberarMemoriaContadores();
77:
78:
79:
80: /* MÓDULO 'CalcularCiclos.c' */
81:
82: void CalcularCiclosInstruccion(fichainstruccion *tarjetaoperandos);
83: void ActualizarCPImedio(unsigned short int ciclosALU, unsigned short int ciclosBIU);
84:
85:
86:
87: /* MÓDULO 'Ficheros.c' */
88:
89: void SalvarBasesDatos();
90: void CrearFicheroConfiguracion();
91:
92: void IniciarFicheroVentana();
93: void Instruccion2FicheroVentana(fichainstruccion *tarjetaoperandos);
94: void Matrices2FicheroVentana();
95:
96: void CrearFicheroResultados(char *fichero);
97:
98:
99:
100: /* MÓDULO 'GUI.c' */
101:
102: void MostrarCabecera();
103: void PresentarEstadoProcesamiento(unsigned long total, unsigned long encurso);
104: void MostrarTarjeta(fichainstruccion *tarjetaoperandos);
105: void MostrarVentana();
106:
107:
108:
109: /* MÓDULO 'AnalizadorOperandos16bits.c' */
110:
111: void AnalizarOperandosIA16(unsigned char secuencia[12], fichainstruccion *tarjetaoperandos);
112:
113:
114:
115: /* MÓDULO 'Matrices.c' */
116:
117: void IniciarPunterosMatrices();
118:
119: void CrearMatricesDependencias();
120: void IniciarMatricesDependencias();
121: void LiberarMemoriaMatricesDependencias();
122:
123:
124:
125: /* MÓDULO 'AnalizadorDependencias.c' */
126:
127: void CrearPizarras();
128: void IniciarPizarras();
129: void LiberarMemoriaPizarras();
130:
131: void CrearVectorDependencias();
132: void IniciarVectorDependencias();
133: void LiberarMemoriaVectorDependencias();
134:
135: void AnalizarDependencias(fichainstruccion *tarjetaoperandos, int instruccion);
136: void GenerarMatrizD();
137:
138: void AnotarEscrituras(fichainstruccion *tarjetaoperandos, int instruccion);
139: void AnotarLecturas(fichainstruccion *tarjetaoperandos, int instruccion);
140:
141:
142:
143: /* MÓDULO 'CalculosMatrices.c' */
144:
145: void CrearListaOrdenParcial();
146: void IniciarListaOrdenParcial();
147: void LiberarMemoriaListaOrdenParcial();
148:
149: void CrearMatrizCaminos();
150: void IniciarMatrizCaminos();
151: void LiberarMemoriaMatrizCaminos();
152:
153: parametromatriz * CrearVariableAgregada();
154: void IniciarVariableAgregada(parametromatriz *variable);
155:
156: unsigned int ListaOrdenParcial(unsigned char **D, char **lista);
157: unsigned int CalcularMatrizCaminos(unsigned char **D, unsigned char **C);
158:
159: void CalcularPasosComputacion(parametromatriz *pasos);
160: void CalcularGradoParalelismoNormalizado(parametromatriz *pasos, parametromatriz *grado);
161: void CalcularAcoplamiento(parametromatriz *acoplamiento);
162:
163: void CalcularPromedioVariableAgregada(parametromatriz *media, parametromatriz *actual, unsigned long n);
164:
165: void CrearHistogramaPasos();
166: void ActualizarHistogramaPasos();
167: void LiberarMemoriaHistogramaPasos();
168:
169:
170:
171: /* MÓDULO 'Auxiliares.c' */
172:
173: unsigned int BuscarElementoLista(char *lista, char *cadena);
174: void EliminarElementoLista(char *lista, char *cadena);
175:
176: void DeterminarRango();
177:
178: void ConvertirHex2Bin(char *cadenahex, unsigned char *secuencia, unsigned char maxformato);
179:
180:
181:
182: /* MÓDULO 'Planificador.c' */ /* SIN HACER */
183:
184: double CalcularTiempo();
185:
186:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>