]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - emufs/b_plus.h
More renames..
[z.facultad/75.06/emufs.git] / emufs / b_plus.h
index ba0b775afbb78b07163c3f9b2997f08857305b97..7e88a2cf3cfb7af08c2a3ce8c73832014ff89506 100644 (file)
@@ -3,25 +3,18 @@
 #include <stdio.h>\r
 #include <stdlib.h>\r
 #include "emufs.h"\r
 #include <stdio.h>\r
 #include <stdlib.h>\r
 #include "emufs.h"\r
+#include <math.h>\r
 \r
 #define SIZE_B_PLUS_HEADER (sizeof(int)*2)\r
 \r
 \r
 #define SIZE_B_PLUS_HEADER (sizeof(int)*2)\r
 \r
-/** Estructura que define un nodo B+. Para los nodos hojas, el ultimo valor de hijo, serĂ¡ el nro\r
- *  de nodo con el que se encadena el actual. (Lista de nodos a nivel hoja. Sequence Set).\r
- */\r
\r
-typedef struct _indexspecs_ {\r
-       unsigned int tam_bloque;\r
-       unsigned int size_claves;\r
-       unsigned int size_hijos;\r
-       char *filename;\r
-} INDEXSPECS;\r
-\r
 typedef struct _index_dat_ {\r
        EMUFS_BLOCK_ID num_bloque;\r
        CLAVE clave;\r
 } INDEX_DAT;\r
 \r
 typedef struct _index_dat_ {\r
        EMUFS_BLOCK_ID num_bloque;\r
        CLAVE clave;\r
 } INDEX_DAT;\r
 \r
+/** Estructura que define un nodo B+. Para los nodos hojas, el ultimo valor de hijo, serĂ¡ el nro\r
+ *  de nodo con el que se encadena el actual. (Lista de nodos a nivel hoja. Sequence Set).\r
+ */\r
 typedef struct nodo_b_plus {\r
        int nivel; /** Nivel del nodo */\r
        int cant_claves; /** Cantidad de claves en el nodo */\r
 typedef struct nodo_b_plus {\r
        int nivel; /** Nivel del nodo */\r
        int cant_claves; /** Cantidad de claves en el nodo */\r
@@ -29,15 +22,13 @@ typedef struct nodo_b_plus {
        int *hijos; /** Para nodo interno, ref nodos sucesores. Nodo hoja, ref a nro bloque en .dat */\r
 } NODO_B_PLUS;\r
 \r
        int *hijos; /** Para nodo interno, ref nodos sucesores. Nodo hoja, ref a nro bloque en .dat */\r
 } NODO_B_PLUS;\r
 \r
-\r
 /** TODO */\r
 /** TODO */\r
-int emufs_b_plus_crear(INDEXSPECS *idx);\r
-int emufs_b_plus_get_bloque(INDEXSPECS *idx, INDEX_DAT *query);\r
-int emufs_b_plus_insertar(INDEXSPECS *idx, INDEX_DAT *query);\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_actualizar_nodo(INDEX_DAT *dataset);\r
 int emufs_b_plus_buscar();\r
 int emufs_b_plus_destuir();\r
 int emufs_b_plus_actualizar_nodo(INDEX_DAT *dataset);\r
 int emufs_b_plus_buscar();\r
 int emufs_b_plus_destuir();\r
-int b_plus_insertar_clave(INDEXSPECS *, INDEX_DAT *);\r
-NODO_B_PLUS *b_plus_leer_nodo(INDEXSPECS *idx, int num);\r
+NODO_B_PLUS *b_plus_leer_nodo(INDEX *idx, int num);\r
 \r
 #endif
 \r
 #endif