X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/60505ae8ce77483ea58c6829c20de89f1c01afaf..ee8568afe20289bebd04904350c3f2563fc90e4a:/emufs/emufs.h?ds=sidebyside diff --git a/emufs/emufs.h b/emufs/emufs.h index 81d62b3..f8a7067 100644 --- a/emufs/emufs.h +++ b/emufs/emufs.h @@ -1,3 +1,42 @@ +/* vim: set noexpandtab tabstop=4 shiftwidth=4: + *---------------------------------------------------------------------------- + * emufs + *---------------------------------------------------------------------------- + * This file is part of emufs. + * + * emufs is free software; you can redistribute it and/or modify it under the + * terms of the GNU General Public License as published by the Free Software + * Foundation; either version 2 of the License, or (at your option) any later + * version. + * + * emufs is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. + * + * You should have received a copy of the GNU General Public License along + * with emufs; if not, write to the Free Software Foundation, Inc., 59 Temple + * Place, Suite 330, Boston, MA 02111-1307 USA + *---------------------------------------------------------------------------- + * Creado: mié mar 31 17:26:46 ART 2004 + * Autores: Nicolás Dimov + * Ricardo Markiewicz + * Leandro Lucarella + *---------------------------------------------------------------------------- + * + * $Id$ + * + */ + +/** \file + * + * Estructura general de un archivo abstracto de emufs. + * + * Interfaz de la estructura abstracta que representa cualquiera de los tipos + * de archivo implementados. + * + */ + #ifndef _EMUFS_H_ #define _EMUFS_H_ @@ -35,10 +74,13 @@ typedef struct _emu_fs_t { int (*leer_bloque)(struct _emu_fs_t *, int, void *); /**< Método para leer un bloque */ int (*leer_registro)(struct _emu_fs_t *, int, void *, unsigned long); /**< Método para leer un registro */ int (*grabar_registro)(struct _emu_fs_t *, void *, unsigned long ); /**< Método para grabar un registro */ - int (*borrar_registro)(struct _emu_fs_t *, int, int); /**< Método para borrar un registro */ + int (*borrar_registro)(struct _emu_fs_t *, int, unsigned long ); /**< Método para borrar un registro */ char *nombre; /**< Nombre del archivo */ } EMUFS; +/** Crea un archivo auxiliar. */ +int emufs_crear_archivo_auxiliar(const char*, const char*); + /** Crea un nuevo archivo EMUFS. * * Un archivo EMUFS está compuesto por 4 archivos a nivel del sistema operativo. @@ -61,7 +103,7 @@ typedef struct _emu_fs_t { * \param tam_bloque Tamaño del bloque. * \param tam_reg Tamaño del registro. */ -EMUFS *emufs_crear(const char *filename, char tipo, unsigned int tam_bloque, unsigned int tam_reg); +EMUFS *emufs_crear(const char *filename, char tipo, unsigned long tam_bloque, unsigned long tam_reg); /** Abre un archivo EMUFS. * @@ -76,4 +118,4 @@ int emufs_destruir(EMUFS *e); int ver_archivo_FS(EMUFS *emu); -#endif +#endif /* _EMUFS_H_ */