X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/c1df639f58f6d3c08247c1543916644e375f8ce2..73a6ae0f1a0f50a482d164f24d5894105b4aea9f:/emufs/indices.c diff --git a/emufs/indices.c b/emufs/indices.c index 2fcf1c4..18e3327 100644 --- a/emufs/indices.c +++ b/emufs/indices.c @@ -2,7 +2,7 @@ #include "indices.h" #include "emufs.h" #include "indice_b.h" -#include "common.h" +#include "indice_bplus.h" INDICE *emufs_indice_crear(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDICE_TIPO tipo, INDICE_TIPO_DATO tipo_dato, unsigned int offset, unsigned int tam_bloque) { @@ -50,6 +50,8 @@ INDICE *emufs_indice_crear(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, IND tmp->offset = offset; tmp->sig = NULL; + tmp->size_claves = 0; + tmp->size_hijos = 0; switch (tipo) { case IND_B: @@ -68,7 +70,10 @@ INDICE *emufs_indice_crear(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, IND case IND_B_PLUS: /* llenar metodos */ PERR("Creando indice con Arbol B+"); - PERR("AÚN NO IMPLEMENTADO!!!!!!!!"); + tmp->size_claves = (tmp->tam_bloque - SIZE_B_PLUS_HEADER - sizeof(int))/2; /* Fix sizeof(CLAVE?) */ + tmp->size_hijos = tmp->size_claves + sizeof(int); + emufs_b_plus_crear(tmp); + PERR("AÚN NO IMPLEMENTADO DEL TODO!!!!!!!!"); break; }