X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/47711da283d36246522f81085695919091cc0ba9..e71b2f6ba15c4035c6fb10526b4ffd29d44b0ba2:/emufs/tipo1.h diff --git a/emufs/tipo1.h b/emufs/tipo1.h index 019806c..4e4deb3 100644 --- a/emufs/tipo1.h +++ b/emufs/tipo1.h @@ -48,6 +48,8 @@ */ int emufs_tipo1_inicializar(EMUFS* efs); +int emufs_tipo4_inicializar(EMUFS* efs); + /** Lee el registro \c reg_id y devolviendo su contenido. */ void* emufs_tipo1_leer_registro(EMUFS*, CLAVE, EMUFS_REG_SIZE*, int*); @@ -55,10 +57,10 @@ void* emufs_tipo1_leer_registro(EMUFS*, CLAVE, EMUFS_REG_SIZE*, int*); EMUFS_REG_ID emufs_tipo1_grabar_registro(EMUFS*, void*, EMUFS_REG_SIZE, int*); /** Borra un registro de del archivo. */ -int emufs_tipo1_borrar_registro(EMUFS*, CLAVE); +int emufs_tipo1_borrar_registro(EMUFS*, CLAVE, INDICE_DATO); /** Método para modificar un registro. */ -EMUFS_REG_ID emufs_tipo1_modificar_registro(EMUFS *emu, CLAVE k, void*, EMUFS_REG_SIZE, int*); +EMUFS_REG_ID emufs_tipo1_modificar_registro(EMUFS *emu, CLAVE k, void*, EMUFS_REG_SIZE, int*, INDICE_DATO); /** Método para leer un registro con todo su bloque asociado. */ void* emufs_tipo1_leer_registro_raw(EMUFS *emu, EMUFS_REG_ID id, EMUFS_REG_SIZE *size, int *pos); @@ -75,8 +77,14 @@ void emufs_tipo1_leer_bloque_raw(EMUFS *efs, EMUFS_BLOCK_ID id, char **actual, EMUFS_BLOCK_SIZE *size2, EMUFS_BLOCK_SIZE *size3); /** Inserta un registro en el archivo, ordenado por clave principal*/ -int emufs_tipo1_insertar_ordenado(EMUFS *emu, void *ptr, EMUFS_REG_SIZE size, int *err); +EMUFS_REG_ID emufs_tipo1_insertar_ordenado(EMUFS *emu, void *ptr, EMUFS_REG_SIZE size, int *err); /** Elimina un registro de clave CLAVE del archivo con ayuda del arbol B+*/ -int emufs_tipo1_eliminar_ordenado(EMUFS *emu, CLAVE clave, int *err); +int emufs_tipo1_eliminar_ordenado(EMUFS *emu, CLAVE clave, INDICE_DATO dato); + +void *emufs_tipo1_leer_registro_plus(EMUFS *emu, CLAVE clave, EMUFS_REG_SIZE *size, int *err); + +EMUFS_REG_ID emufs_tipo1_modificar_registro_plus(EMUFS *emu, CLAVE k, void*, EMUFS_REG_SIZE, int*, INDICE_DATO); + +B_PLUS_KEYBUCKET *emufs_tipo1_obtener_claves_raw(EMUFS *emu, int num_bloque); #endif /* _EMUFS_TIPO1_H_ */