X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/997a97b5e42afccbc75f2e2dde61f1e74856cb86..8ed872279800f018aa1dfa690d646428d68820c1:/emufs/emufs.h diff --git a/emufs/emufs.h b/emufs/emufs.h index f9f7b85..7c4e693 100644 --- a/emufs/emufs.h +++ b/emufs/emufs.h @@ -50,7 +50,9 @@ typedef enum { T1, /**< Archivo de bloque parametrizado y registro variable. */ T2, /**< Archivo sin bloques y registros variables. */ - T3 /**< Archivo de bloque parametrizado y registro fijo. */ + T3, /**< Archivo de bloque parametrizado y registro fijo. */ + T4, /**< Archivo de bloque parametrizado y registro variables secuencial indexado. */ + T5 /**< Archivo de bloque parametrizado y registro fijo secuencial indexado. */ } EMUFS_Tipo; /** Tipo de identificador de registro. */ @@ -123,7 +125,12 @@ struct _emu_fs_t { void (*compactar)(struct _emu_fs_t *); /**< Método para compactar el archivo reorganizándolo físicamente */ char *nombre; /**< Nombre del archivo */ + /* Lista de Indices */ INDICE *indices; + /* Indice externo para utilizar con Facturas + * e indexar por NroArticulo + */ + INDICE *externo; }; /** Crea un archivo auxiliar. */ @@ -173,7 +180,7 @@ int ver_archivo_FS(EMUFS *emu); /** muestra estadisticas, para debug. */ int debug_ver_estadisticas(EMUFS *emu); -int emufs_agregar_indice(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDICE_TIPO tipo, INDICE_TIPO_DATO tipo_dato, unsigned int offset, unsigned int tam_bloque); +int emufs_agregar_indice(EMUFS *emu, char *nombre, INDICE_FUNCION funcion, INDICE_TIPO tipo, INDICE_TIPO_DATO tipo_dato, unsigned int offset, unsigned int tam_bloque, int str_offset); INDICE_DATO *emufs_buscar_registros(EMUFS *emu, char *indice, char *data, int *cant);