+/* 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 <sagardua@uolsinectis.com.ar>
+ * Ricardo Markiewicz <rmarkie@fi.uba.ar>
+ * Leandro Lucarella <llucare@fi.uba.ar>
+ *----------------------------------------------------------------------------
+ *
+ * $Id$
+ *
+ */
+
+/** \file
+ *
+ * Estructura general de un archivo <em>abstracto</em> de emufs.
+ *
+ * Implementación de la estructura abstracta que representa cualquiera de los
+ * tipos de archivo implementados. Se incluyen funciones tipo <em>factory</em>
+ * para crear un archivo, abrirlo y destruirlo.
+ *
+ */
+
#include "emufs.h"
#include "tipo3.h"
/* Defino las extenciones que usan cada tipo de archivo */
-#define EXT_TIPO3_ID ".idx"
#define EXT_TIPO3_DATA ".dat"
-#define EXT_TIPO3_DISP ".fsc"
-#define EXT_TIPO3_IDS ".did"
char *str_dup(const char *s);
case T3:
tmp->tipo = T3;
tmp->tam_bloque = tam_bloque;
- tmp->leer_bloque = leer_bloque;
- tmp->leer_registro = leer_registro;
- tmp->grabar_registro = grabar_registro;
- tmp->borrar_registro = borrar_registro;
+ tmp->leer_bloque = emufs_tipo3_leer_bloque;
+ tmp->leer_registro = emufs_tipo3_leer_registro;
+ tmp->grabar_registro = emufs_tipo3_grabar_registro;
+ tmp->borrar_registro = emufs_tipo3_borrar_registro;
tmp->nombre = str_dup(filename);
strcpy(name, filename);
case T3:
tmp->tipo = tipo;
fread(&tmp->tam_bloque, sizeof(int), 1, fp);
- tmp->leer_bloque = leer_bloque;
- tmp->leer_registro = leer_registro;
- tmp->grabar_registro = grabar_registro;
- tmp->borrar_registro = borrar_registro;
+ tmp->leer_bloque = emufs_tipo3_leer_bloque;
+ tmp->leer_registro = emufs_tipo3_leer_registro;
+ tmp->grabar_registro = emufs_tipo3_grabar_registro;
+ tmp->borrar_registro = emufs_tipo3_borrar_registro;
tmp->nombre = str_dup(filename);
}