]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - emufs/indice_bplus.h
* Cambios grandes para poder borrar claves en un indice con repeticion
[z.facultad/75.06/emufs.git] / emufs / indice_bplus.h
index 7e88a2cf3cfb7af08c2a3ce8c73832014ff89506..81963fcbf47c9c57d75fc7bcd26c919fc68a933a 100644 (file)
@@ -18,17 +18,20 @@ typedef struct _index_dat_ {
 typedef struct nodo_b_plus {\r
        int nivel; /** Nivel del nodo */\r
        int cant_claves; /** Cantidad de claves en el nodo */\r
-       int *claves; /** Claves del nodo */\r
+       CLAVE *claves; /** Claves del nodo */\r
        int *hijos; /** Para nodo interno, ref nodos sucesores. Nodo hoja, ref a nro bloque en .dat */\r
 } NODO_B_PLUS;\r
 \r
 /** TODO */\r
-int emufs_b_plus_crear(INDEX *idx);\r
-int emufs_b_plus_get_bloque(INDEX *idx, INDEX_DAT *query, int num_node);\r
-int emufs_b_plus_insertar(INDEX *idx, INDEX_DAT *query);\r
+int emufs_b_plus_crear(INDICE *idx);\r
+int emufs_b_plus_get_bloque(INDICE *idx, INDEX_DAT *query, int num_node);\r
+int emufs_b_plus_insertar(INDICE *idx, INDEX_DAT *query);\r
 int emufs_b_plus_actualizar_nodo(INDEX_DAT *dataset);\r
 int emufs_b_plus_buscar();\r
 int emufs_b_plus_destuir();\r
-NODO_B_PLUS *b_plus_leer_nodo(INDEX *idx, int num);\r
+int emufs_b_plus_eliminar(INDICE *idx, CLAVE key, int num_node);\r
+int b_plus_existe_clave(INDICE *idx, INDEX_DAT *query, int num_node);\r
+NODO_B_PLUS *b_plus_leer_nodo(INDICE *idx, int num);\r
+int b_plus_buscar_prepost(INDICE *idx, CLAVE key, int num_node, CLAVE *prepostkey, int search_type);\r
 \r
 #endif