]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - doc/draft.txt
Se pasan macros para comparar al base.h.
[z.facultad/75.06/emufs.git] / doc / draft.txt
index 66a503dbec4f6c4e326ffda3aa9c7adb5309ea62..99009fdfb724e1affb9f64244736042394062633 100644 (file)
@@ -22,25 +22,31 @@ La estructura principal b
      int (*leer_bloque)(int ID, void *, unsigned long tam);
      int (*leer_registro)(int ID, void *, unsigned long tam);
      int (*grabar_registro)(int ID, void *, unsigned long tam);
-     char *nombre;
+                tEstadisticas (*obtener_estadisticas)(void); /* Estadisticas. Definir estructura!! */
+                void (*compactar)(); /* Reorganiza los registros a fin de optimizarlo */
+                char *nombre;
  } EMUFS;
 
+Estos punteros a funciones son los que requiere la interfaz visual para operar
+con los tipos de archivos. Cada tipo de archivo deberá escribir tantas
+funciones como crea necesario para poder brindar su completa funcionalidad.
+
 luego hay 3 funciones generales:
 
  /* Abre, determina el tipo de archivo y retorna todo bonito */
- EMUFS *efs_open(const char *archivo);
+ EMUFS *emufs_open(const char *archivo);
 
  /* cierra (libera memoria) */
- int efs_close(EMUFS *);
+ int emufs_close(EMUFS *);
 
  /* Crea un nuevo archivo de un tipo dado */
- EMUFS *efs_create(const char *nombre, int tipo);
+ EMUFS *emufs_create(const char *nombre, int tipo);
 
 
 El uso básico es de la siguiente manera:
 
  EMUFS *fd;
- fd = efs_open("facturas.dat");
+ fd = emufs_open("facturas.dat");
  fd->leer_registro(5, dato, 5);
 
 Cosas que resolver :