version 1.1, 2006/01/19 17:16:29
|
version 1.2, 2006/02/15 13:00:30
|
Line 1
|
Line 1
|
/********************************************************************/ |
|
/* Matrices.c */ |
|
/* */ |
|
/* 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: Matrices.c */ |
/* MÓDULO: Matrices.c */ |
/* */ |
/* */ |
Line 60 extern struct punterosD matriz;
|
Line 27 extern struct punterosD matriz;
|
|
|
void IniciarPunterosMatrices() |
void IniciarPunterosMatrices() |
{ |
{ |
matriz.Ddatoexp = NULL; |
matriz.Ddatoexp = NULL; |
matriz.Ddir_exp = NULL; |
matriz.Ddir_exp = NULL; |
matriz.Dpilaexp = NULL; |
matriz.Dpilaexp = NULL; |
matriz.Destadoexp = NULL; |
matriz.Destadoexp = NULL; |
matriz.Ddatoimp = NULL; |
matriz.Ddatoimp = NULL; |
matriz.Ddir_imp = NULL; |
matriz.Ddir_imp = NULL; |
matriz.Dpilaimp = NULL; |
matriz.Dpilaimp = NULL; |
matriz.Destadoimp = NULL; |
matriz.Destadoimp = NULL; |
|
|
matriz.ADdatoexp = NULL; |
matriz.ADdatoexp = NULL; |
matriz.ADdir_exp = NULL; |
matriz.ADdir_exp = NULL; |
matriz.ADpilaexp = NULL; |
matriz.ADpilaexp = NULL; |
matriz.ADestadoexp = NULL; |
matriz.ADestadoexp = NULL; |
matriz.ADdatoimp = NULL; |
matriz.ADdatoimp = NULL; |
matriz.ADdir_imp = NULL; |
matriz.ADdir_imp = NULL; |
matriz.ADpilaimp = NULL; |
matriz.ADpilaimp = NULL; |
matriz.ADestadoimp = NULL; |
matriz.ADestadoimp = NULL; |
|
|
matriz.Sdatoexp = NULL; |
matriz.Sdatoexp = NULL; |
matriz.Sdir_exp = NULL; |
matriz.Sdir_exp = NULL; |
matriz.Spilaexp = NULL; |
matriz.Spilaexp = NULL; |
matriz.Sestadoexp = NULL; |
matriz.Sestadoexp = NULL; |
matriz.Sdatoimp = NULL; |
matriz.Sdatoimp = NULL; |
matriz.Sdir_imp = NULL; |
matriz.Sdir_imp = NULL; |
matriz.Spilaimp = NULL; |
matriz.Spilaimp = NULL; |
matriz.Sestadoimp = NULL; |
matriz.Sestadoimp = NULL; |
|
|
matriz.D = NULL; |
matriz.D = NULL; |
} |
} |
|
|
|
|
Line 96 void IniciarPunterosMatrices()
|
Line 63 void IniciarPunterosMatrices()
|
|
|
unsigned char ** CrearMatriz() |
unsigned char ** CrearMatriz() |
{ |
{ |
char mensaje[MAX_LINE]; |
char mensaje[MAX_LINE]; |
unsigned int i; |
unsigned int i; |
unsigned char **matrizD; |
unsigned char **matrizD; |
|
|
/* 1º un puntero por cada fila */ |
/* 1º un puntero por cada fila */ |
matrizD = calloc(configuracion.ventana, sizeof(unsigned char *)); |
matrizD = calloc(configuracion.ventana, sizeof(unsigned char *)); |
if (matrizD == NULL) |
if (matrizD == NULL) |
{ |
{ |
sprintf(mensaje, "[CrearMatriz] Memoria insuficiente"); |
sprintf(mensaje, "[CrearMatriz] Memoria insuficiente"); |
Notificar(mensaje, ERROR_SALIR, ECO_NO); |
Notificar(mensaje, ERROR_SALIR, ECO_NO); |
/* el programa finaliza si no hay memoria suficiente */ |
/* el programa finaliza si no hay memoria suficiente */ |
} |
} |
/* 2º un 'char' por cada columna */ |
/* 2º un 'char' por cada columna */ |
for(i=0; i<configuracion.ventana; i++) |
for(i=0; i<configuracion.ventana; i++) |
{ |
{ |
matrizD[i] = calloc(configuracion.ventana, sizeof(unsigned char)); |
matrizD[i] = calloc(configuracion.ventana, sizeof(unsigned char)); |
if (matrizD[i] == NULL) |
if (matrizD[i] == NULL) |
{ |
{ |
sprintf(mensaje, "[CrearMatriz] Memoria insuficiente"); |
sprintf(mensaje, "[CrearMatriz] Memoria insuficiente"); |
Notificar(mensaje, ERROR_SALIR, ECO_NO); |
Notificar(mensaje, ERROR_SALIR, ECO_NO); |
/* el programa finaliza si no hay memoria suficiente */ |
/* el programa finaliza si no hay memoria suficiente */ |
} |
} |
} |
} |
return matrizD; |
return matrizD; |
} |
} |
|
|
|
|
Line 131 unsigned char ** CrearMatriz()
|
Line 98 unsigned char ** CrearMatriz()
|
{ |
{ |
|
|
|
|
*matrizD = calloc(configuracion.ventana , sizeof(unsigned char *)); |
*matrizD = calloc(configuracion.ventana , sizeof(unsigned char *)); |
|
|
|
|
return *matrizD; |
return *matrizD; |
}*/ |
}*/ |
|
|
|
|
Line 142 unsigned char ** CrearMatriz()
|
Line 109 unsigned char ** CrearMatriz()
|
|
|
void CrearMatricesDependencias() |
void CrearMatricesDependencias() |
{ |
{ |
/* creo las matrices de dependencias que sean necesarias */ |
/* creo las matrices de dependencias que sean necesarias */ |
/* mapa de posibles matrices por desacoplos */ |
/* mapa de posibles matrices por desacoplos */ |
/* fuente origen tipo */ |
/* tipo origen fuente */ |
/* SI SI SI */ |
/* SI SI SI */ |
/* SI SI NO */ |
/* SI SI NO */ |
/* SI NO NO */ |
/* SI NO NO */ |
/* NO NO NO */ |
/* NO NO NO */ /* -> por defecto no se desacopla nada */ |
|
|
if(configuracion.desacoplartipos == SI) |
if(configuracion.desacoplarfuentes == SI) |
{ |
{ |
if(configuracion.datos == SI) matriz.Ddatoexp = CrearMatriz(); |
if(configuracion.datos == SI) matriz.Ddatoexp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Ddir_exp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Ddir_exp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Dpilaexp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Dpilaexp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Destadoexp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Destadoexp = CrearMatriz(); |
|
|
if(configuracion.datos == SI) matriz.Ddatoimp = CrearMatriz(); |
if(configuracion.datos == SI) matriz.Ddatoimp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Ddir_imp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Ddir_imp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Dpilaimp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Dpilaimp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Destadoimp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Destadoimp = CrearMatriz(); |
|
|
if(configuracion.datos == SI) matriz.ADdatoexp = CrearMatriz(); |
if(configuracion.datos == SI) matriz.ADdatoexp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.ADdir_exp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.ADdir_exp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.ADpilaexp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.ADpilaexp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.ADestadoexp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.ADestadoexp = CrearMatriz(); |
|
|
if(configuracion.datos == SI) matriz.ADdatoimp = CrearMatriz(); |
if(configuracion.datos == SI) matriz.ADdatoimp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.ADdir_imp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.ADdir_imp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.ADpilaimp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.ADpilaimp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.ADestadoimp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.ADestadoimp = CrearMatriz(); |
|
|
if(configuracion.datos == SI) matriz.Sdatoexp = CrearMatriz(); |
if(configuracion.datos == SI) matriz.Sdatoexp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Sdir_exp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Sdir_exp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Spilaexp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Spilaexp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Sestadoexp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Sestadoexp = CrearMatriz(); |
|
|
if(configuracion.datos == SI) matriz.Sdatoimp = CrearMatriz(); |
if(configuracion.datos == SI) matriz.Sdatoimp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Sdir_imp = CrearMatriz(); |
if(configuracion.direcciones == SI) matriz.Sdir_imp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Spilaimp = CrearMatriz(); |
if(configuracion.pila == SI) matriz.Spilaimp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Sestadoimp = CrearMatriz(); |
if(configuracion.cc == SI) matriz.Sestadoimp = CrearMatriz(); |
} |
} |
|
|
else if(configuracion.desacoplarorigen == SI) |
else if(configuracion.desacoplarorigen == SI) |
{ |
{ |
if(configuracion.explicitos == SI) matriz.Ddatoexp = CrearMatriz(); |
if(configuracion.explicitos == SI) matriz.Ddatoexp = CrearMatriz(); |
if(configuracion.implicitos == SI) matriz.Ddatoimp = CrearMatriz(); |
if(configuracion.implicitos == SI) matriz.Ddatoimp = CrearMatriz(); |
|
|
if(configuracion.explicitos == SI) matriz.ADdatoexp = CrearMatriz(); |
if(configuracion.explicitos == SI) matriz.ADdatoexp = CrearMatriz(); |
if(configuracion.implicitos == SI) matriz.ADdatoimp = CrearMatriz(); |
if(configuracion.implicitos == SI) matriz.ADdatoimp = CrearMatriz(); |
|
|
if(configuracion.explicitos == SI) matriz.Sdatoexp = CrearMatriz(); |
if(configuracion.explicitos == SI) matriz.Sdatoexp = CrearMatriz(); |
if(configuracion.implicitos == SI) matriz.Sdatoimp = CrearMatriz(); |
if(configuracion.implicitos == SI) matriz.Sdatoimp = CrearMatriz(); |
} |
} |
|
|
else if(configuracion.desacoplarfuentes == SI) |
else if(configuracion.desacoplartipos == SI) |
{ |
{ |
if(configuracion.verdaderas == SI) matriz.Ddatoexp = CrearMatriz(); |
if(configuracion.verdaderas == SI) matriz.Ddatoexp = CrearMatriz(); |
if(configuracion.antidependencias == SI) matriz.ADdatoexp = CrearMatriz(); |
if(configuracion.antidependencias == SI) matriz.ADdatoexp = CrearMatriz(); |
if(configuracion.salida == SI) matriz.Sdatoexp = CrearMatriz(); |
if(configuracion.salida == SI) matriz.Sdatoexp = CrearMatriz(); |
} |
} |
|
|
matriz.D = CrearMatriz(); |
matriz.D = CrearMatriz(); |
} |
} |
|
|
|
|
Line 210 void CrearMatricesDependencias()
|
Line 177 void CrearMatricesDependencias()
|
|
|
void IniciarMatriz(unsigned char **matriz) |
void IniciarMatriz(unsigned char **matriz) |
{ |
{ |
unsigned int i, j; |
unsigned int i, j; |
|
|
if(matriz != NULL) for(i=0; i<configuracion.ventana; i++) for(j=0; j<configuracion.ventana; j++) matriz[i][j] = 0; |
if(matriz != NULL) for(i=0; i<configuracion.ventana; i++) for(j=0; j<configuracion.ventana; j++) matriz[i][j] = 0; |
} |
} |
|
|
|
|
Line 221 void IniciarMatriz(unsigned char **matri
|
Line 188 void IniciarMatriz(unsigned char **matri
|
|
|
void IniciarMatricesDependencias() |
void IniciarMatricesDependencias() |
{ |
{ |
unsigned int i, j, dim; |
unsigned int i, j, dim; |
|
|
dim = configuracion.ventana; |
dim = configuracion.ventana; |
|
|
if(matriz.Ddatoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddatoexp[i][j] = 0; |
if(matriz.Ddatoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddatoexp[i][j] = 0; |
if(matriz.Ddir_exp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddir_exp[i][j] = 0; |
if(matriz.Ddir_exp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddir_exp[i][j] = 0; |
if(matriz.Dpilaexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Dpilaexp[i][j] = 0; |
if(matriz.Dpilaexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Dpilaexp[i][j] = 0; |
if(matriz.Destadoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Destadoexp[i][j] = 0; |
if(matriz.Destadoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Destadoexp[i][j] = 0; |
|
|
if(matriz.Ddatoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddatoimp[i][j] = 0; |
if(matriz.Ddatoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddatoimp[i][j] = 0; |
if(matriz.Ddir_imp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddir_imp[i][j] = 0; |
if(matriz.Ddir_imp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Ddir_imp[i][j] = 0; |
if(matriz.Dpilaimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Dpilaimp[i][j] = 0; |
if(matriz.Dpilaimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Dpilaimp[i][j] = 0; |
if(matriz.Destadoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Destadoimp[i][j] = 0; |
if(matriz.Destadoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Destadoimp[i][j] = 0; |
|
|
if(matriz.ADdatoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdatoexp[i][j] = 0; |
if(matriz.ADdatoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdatoexp[i][j] = 0; |
if(matriz.ADdir_exp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdir_exp[i][j] = 0; |
if(matriz.ADdir_exp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdir_exp[i][j] = 0; |
if(matriz.ADpilaexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADpilaexp[i][j] = 0; |
if(matriz.ADpilaexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADpilaexp[i][j] = 0; |
if(matriz.ADestadoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADestadoexp[i][j] = 0; |
if(matriz.ADestadoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADestadoexp[i][j] = 0; |
|
|
if(matriz.ADdatoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdatoimp[i][j] = 0; |
if(matriz.ADdatoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdatoimp[i][j] = 0; |
if(matriz.ADdir_imp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdir_imp[i][j] = 0; |
if(matriz.ADdir_imp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADdir_imp[i][j] = 0; |
if(matriz.ADpilaimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADpilaimp[i][j] = 0; |
if(matriz.ADpilaimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADpilaimp[i][j] = 0; |
if(matriz.ADestadoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADestadoimp[i][j] = 0; |
if(matriz.ADestadoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.ADestadoimp[i][j] = 0; |
|
|
if(matriz.Sdatoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdatoexp[i][j] = 0; |
if(matriz.Sdatoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdatoexp[i][j] = 0; |
if(matriz.Sdir_exp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdir_exp[i][j] = 0; |
if(matriz.Sdir_exp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdir_exp[i][j] = 0; |
if(matriz.Spilaexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Spilaexp[i][j] = 0; |
if(matriz.Spilaexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Spilaexp[i][j] = 0; |
if(matriz.Sestadoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sestadoexp[i][j] = 0; |
if(matriz.Sestadoexp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sestadoexp[i][j] = 0; |
|
|
if(matriz.Sdatoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdatoimp[i][j] = 0; |
if(matriz.Sdatoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdatoimp[i][j] = 0; |
if(matriz.Sdir_imp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdir_imp[i][j] = 0; |
if(matriz.Sdir_imp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sdir_imp[i][j] = 0; |
if(matriz.Spilaimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Spilaimp[i][j] = 0; |
if(matriz.Spilaimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Spilaimp[i][j] = 0; |
if(matriz.Sestadoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sestadoimp[i][j] = 0; |
if(matriz.Sestadoimp != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.Sestadoimp[i][j] = 0; |
|
|
if(matriz.D != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.D[i][j] = 0; |
if(matriz.D != NULL) for(i=0; i<dim; i++) for(j=0; j<dim; j++) matriz.D[i][j] = 0; |
} |
} |
|
|
|
|
Line 263 void IniciarMatricesDependencias()
|
Line 230 void IniciarMatricesDependencias()
|
|
|
void LiberarMemoriaMatriz(unsigned char **matriz) |
void LiberarMemoriaMatriz(unsigned char **matriz) |
{ |
{ |
unsigned int i; |
unsigned int i; |
|
|
if(matriz != NULL) {for(i=0; i<configuracion.ventana; i++) free(matriz[i]); free(matriz);} |
if(matriz != NULL) {for(i=0; i<configuracion.ventana; i++) free(matriz[i]); free(matriz);} |
} |
} |
|
|
|
|
Line 274 void LiberarMemoriaMatriz(unsigned char
|
Line 241 void LiberarMemoriaMatriz(unsigned char
|
|
|
void LiberarMemoriaMatricesDependencias() |
void LiberarMemoriaMatricesDependencias() |
{ |
{ |
unsigned int i,dim; |
unsigned int i,dim; |
|
|
dim = configuracion.ventana; |
dim = configuracion.ventana; |
|
|
if(matriz.Ddatoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddatoexp[i]); free(matriz.Ddatoexp);} |
if(matriz.Ddatoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddatoexp[i]); free(matriz.Ddatoexp);} |
if(matriz.Ddir_exp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddir_exp[i]); free(matriz.Ddir_exp);} |
if(matriz.Ddir_exp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddir_exp[i]); free(matriz.Ddir_exp);} |
if(matriz.Dpilaexp != NULL) {for(i=0; i<dim; i++) free(matriz.Dpilaexp[i]); free(matriz.Dpilaexp);} |
if(matriz.Dpilaexp != NULL) {for(i=0; i<dim; i++) free(matriz.Dpilaexp[i]); free(matriz.Dpilaexp);} |
if(matriz.Destadoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Destadoexp[i]); free(matriz.Destadoexp);} |
if(matriz.Destadoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Destadoexp[i]); free(matriz.Destadoexp);} |
|
|
if(matriz.Ddatoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddatoimp[i]); free(matriz.Ddatoimp);} |
if(matriz.Ddatoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddatoimp[i]); free(matriz.Ddatoimp);} |
if(matriz.Ddir_imp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddir_imp[i]); free(matriz.Ddir_imp);} |
if(matriz.Ddir_imp != NULL) {for(i=0; i<dim; i++) free(matriz.Ddir_imp[i]); free(matriz.Ddir_imp);} |
if(matriz.Dpilaimp != NULL) {for(i=0; i<dim; i++) free(matriz.Dpilaimp[i]); free(matriz.Dpilaimp);} |
if(matriz.Dpilaimp != NULL) {for(i=0; i<dim; i++) free(matriz.Dpilaimp[i]); free(matriz.Dpilaimp);} |
if(matriz.Destadoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Destadoimp[i]); free(matriz.Destadoimp);} |
if(matriz.Destadoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Destadoimp[i]); free(matriz.Destadoimp);} |
|
|
if(matriz.ADdatoexp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdatoexp[i]); free(matriz.ADdatoexp);} |
if(matriz.ADdatoexp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdatoexp[i]); free(matriz.ADdatoexp);} |
if(matriz.ADdir_exp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdir_exp[i]); free(matriz.ADdir_exp);} |
if(matriz.ADdir_exp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdir_exp[i]); free(matriz.ADdir_exp);} |
if(matriz.ADpilaexp != NULL) {for(i=0; i<dim; i++) free(matriz.ADpilaexp[i]); free(matriz.ADpilaexp);} |
if(matriz.ADpilaexp != NULL) {for(i=0; i<dim; i++) free(matriz.ADpilaexp[i]); free(matriz.ADpilaexp);} |
if(matriz.ADestadoexp != NULL) {for(i=0; i<dim; i++) free(matriz.ADestadoexp[i]); free(matriz.ADestadoexp);} |
if(matriz.ADestadoexp != NULL) {for(i=0; i<dim; i++) free(matriz.ADestadoexp[i]); free(matriz.ADestadoexp);} |
|
|
if(matriz.ADdatoimp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdatoimp[i]); free(matriz.ADdatoimp);} |
if(matriz.ADdatoimp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdatoimp[i]); free(matriz.ADdatoimp);} |
if(matriz.ADdir_imp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdir_imp[i]); free(matriz.ADdir_imp);} |
if(matriz.ADdir_imp != NULL) {for(i=0; i<dim; i++) free(matriz.ADdir_imp[i]); free(matriz.ADdir_imp);} |
if(matriz.ADpilaimp != NULL) {for(i=0; i<dim; i++) free(matriz.ADpilaimp[i]); free(matriz.ADpilaimp);} |
if(matriz.ADpilaimp != NULL) {for(i=0; i<dim; i++) free(matriz.ADpilaimp[i]); free(matriz.ADpilaimp);} |
if(matriz.ADestadoimp != NULL) {for(i=0; i<dim; i++) free(matriz.ADestadoimp[i]); free(matriz.ADestadoimp);} |
if(matriz.ADestadoimp != NULL) {for(i=0; i<dim; i++) free(matriz.ADestadoimp[i]); free(matriz.ADestadoimp);} |
|
|
if(matriz.Sdatoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdatoexp[i]); free(matriz.Sdatoexp);} |
if(matriz.Sdatoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdatoexp[i]); free(matriz.Sdatoexp);} |
if(matriz.Sdir_exp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdir_exp[i]); free(matriz.Sdir_exp);} |
if(matriz.Sdir_exp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdir_exp[i]); free(matriz.Sdir_exp);} |
if(matriz.Spilaexp != NULL) {for(i=0; i<dim; i++) free(matriz.Spilaexp[i]); free(matriz.Spilaexp);} |
if(matriz.Spilaexp != NULL) {for(i=0; i<dim; i++) free(matriz.Spilaexp[i]); free(matriz.Spilaexp);} |
if(matriz.Sestadoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Sestadoexp[i]); free(matriz.Sestadoexp);} |
if(matriz.Sestadoexp != NULL) {for(i=0; i<dim; i++) free(matriz.Sestadoexp[i]); free(matriz.Sestadoexp);} |
|
|
if(matriz.Sdatoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdatoimp[i]); free(matriz.Sdatoimp);} |
if(matriz.Sdatoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdatoimp[i]); free(matriz.Sdatoimp);} |
if(matriz.Sdir_imp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdir_imp[i]); free(matriz.Sdir_imp);} |
if(matriz.Sdir_imp != NULL) {for(i=0; i<dim; i++) free(matriz.Sdir_imp[i]); free(matriz.Sdir_imp);} |
if(matriz.Spilaimp != NULL) {for(i=0; i<dim; i++) free(matriz.Spilaimp[i]); free(matriz.Spilaimp);} |
if(matriz.Spilaimp != NULL) {for(i=0; i<dim; i++) free(matriz.Spilaimp[i]); free(matriz.Spilaimp);} |
if(matriz.Sestadoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Sestadoimp[i]); free(matriz.Sestadoimp);} |
if(matriz.Sestadoimp != NULL) {for(i=0; i<dim; i++) free(matriz.Sestadoimp[i]); free(matriz.Sestadoimp);} |
|
|
if(matriz.D != NULL) {for(i=0; i<dim; i++) free(matriz.D[i]); free(matriz.D);} |
if(matriz.D != NULL) {for(i=0; i<dim; i++) free(matriz.D[i]); free(matriz.D);} |
} |
} |
|
|