Referencia del Archivo RamDisco.hpp

#include <vector>
#include "comun.hpp"
#include "Pos.hpp"
#include "Doc.hpp"
#include "NodoTrieS.hpp"
#include "TrieSDisco.hpp"

Dependencia gráfica adjunta para RamDisco.hpp:

Este gráfico muestra que archivos directa o indirectamente incluyen a este archivo:

Ir al código fuente de este archivo.

Namespaces

namespace  Mt77

Definiciones

#define RamDisco_hpp

Funciones

unsigned long precalcula_escribe_con_hermanos (NodoTrieS *n)
unsigned long precalcula_escribe (NodoTrieS *n)
void escribePlanoStream (NodoTrieS *n, std::ostream &os, long desp=0)
NodoTrieSleePlanoStream (std::istream &is) throw (string)
void escribePlano (NodoTrieS &t, vector< Doc > &docs, char *na, char *nrel)
NodoTrieSleePlano (char *na, char *nrel, vector< Doc > &docs)
unsigned long eliminaUnDoc (char *na, char *nrel, unsigned long nd)
unsigned long renumeraUltimoDoc (char *na, char *nrel, unsigned long nd)
long mezclaDiscoRam (istream &is1, NodoTrieS *a2, int saltacad, iostream &os, bool conHermanos1, bool conHermanos2, vector< long > *renum1, vector< long > *renum2)


Descripción detallada

Operaciones en RAM y Disco

Definición en el archivo RamDisco.hpp.


Documentación de las definiciones

#define RamDisco_hpp

Definición en la línea 14 del archivo RamDisco.hpp.


Documentación de las funciones

unsigned long eliminaUnDoc ( char *  na,
char *  nrel,
unsigned long  nd 
)

Elimina un documento de un índice. Tanto en índice como en relación de documentos.

Parámetros:
na Nombre del índice
nrel Nombre de la relación
nd Número de documento por eliminar (>=1)
Devuelve:
Cantidad de documentos que quedan indexados

void escribePlano ( NodoTrieS t,
vector< Doc > &  docs,
char *  na,
char *  nrel 
)

Escribe en formato plano en un archivo

Parámetros:
t TrieS por escribir
docs Documentos referenciados en t
na nombre del archivo por generar con índice
nrel Nombre del archivo por generar con relación de documentos

Definición en la línea 166 del archivo RamDisco.cpp.

Hace referencia a ASSERT, escribePlanoStream(), escribeRelacion(), y MARCAIND.

Referenciado por main(), y RamDiscoCasoPrueba::prueba_escribePlano().

Gráfico de llamadas para esta función:

void escribePlanoStream ( NodoTrieS n,
std::ostream &  os,
long  desp = 0 
)

Escribe en formato plano en un stream Primero se escribe mayor con hermanos en una cadena: MENOR nhermano_1 nhijo_1 {p1_1..p1_n} SIG {p2_1..p2_m} nhermano_2 nhijo_2... MAYOR 00000 nhijo_k {pk_1..pk_s}
Después hijos del menor al mayor.

NodoTrieS* leePlano ( char *  na,
char *  nrel,
vector< Doc > &  docs 
)

Lee un trieS de un archivo de nombre na donde está almacenado. Retorna vector de documentos indexados en idocs.

Parámetros:
na Nombre del archivo con índice
nrel Nombre del archivo con relación de documentos
docs Retorna en este relación de documentos indexados leido de nrel
Devuelve:
TrieS leido de na

Definición en la línea 183 del archivo RamDisco.cpp.

Hace referencia a leePlanoStream(), leeRelacion(), y verificaIndice().

Referenciado por main(), y RamDiscoCasoPrueba::prueba_leePlano().

Gráfico de llamadas para esta función:

NodoTrieS* leePlanoStream ( std::istream &  is  )  throw (string)

Lee un trieS de un stream donde está almacenado en formato extra-simple.

Parámetros:
is Flujo de entrada
Devuelve:
trieS que construye

Definición en la línea 124 del archivo RamDisco.cpp.

Hace referencia a errorFormato(), FINCADENA, leeNDesp(), leePlanoStream(), y leePos().

Referenciado por leePlano(), leePlanoStream(), TrieSDiscoCasoPrueba::prueba_escribeCopiaSubarbol(), RamDiscoCasoPrueba::prueba_mezclaDiscoRam(), y TrieSDiscoCasoPrueba::prueba_mezclarec().

Gráfico de llamadas para esta función:

long mezclaDiscoRam ( istream &  is1,
NodoTrieS a2,
int  saltacad,
iostream &  os,
bool  conHermanos1,
bool  conHermanos2,
vector< long > *  renum1,
vector< long > *  renum2 
)

Mezcla is1 con a2 y deja resultado en os.

Parámetros:
is1 1er archivo de entrada, su cursor se espera sobre cadena del hermano menor
a2 2do trieS de entrada
saltacad Cuanto de la cadena de a2 debe saltarse
os salida, su cursor se espera al final --allí escribirá mezcla.
conHermanos1 procesar hermanos de is1
conHermanos2 procesar hermanos de a2
renum1 Renumeración a documentos de is1
renum2 Renumeración a documentos de a2
Es un algoritmo similar al de escribeCopiaSubarbol: 1. Escribe todos los hermanos del menor al mayor. Para esto recorre los hermanos de is1 y a2. 2. Escribe todos los subárboles del menor al mayor. Para esto recorre los subárboles necesarios de is1 y a2

Definición en la línea 314 del archivo RamDisco.cpp.

Hace referencia a ASSERT, NodoTrieS::cad, copiaPos(), NodoTrieS::cpos, depuraos, escribeCopiaNodo(), escribeCopiaNodoRam(), escribeCopiaSubarbol(), escribeCopiaSubarbolRam(), escribeNDesp(), escribeNodo(), NodoTrieS::hermano_mayor, NodoTrieS::hijo_menor, leeCad(), leeNDesp(), leePos(), MAXLNUMERO, mezclaDiscoRam(), y prefijo_comun_mas_largo().

Referenciado por agregaDoc(), main(), mezclaDiscoRam(), y RamDiscoCasoPrueba::prueba_mezclaDiscoRam().

Gráfico de llamadas para esta función:

unsigned long precalcula_escribe ( NodoTrieS n  ) 

Calcula cuantos bytes requeriría el procedimiento escribe para representar el nodo, sus hermanos y descendientes

Definición en la línea 54 del archivo RamDisco.cpp.

Hace referencia a NodoTrieS::hermano_mayor, NodoTrieS::hijo_menor, precalcula_escribe(), y precalcula_escribe_con_hermanos().

Referenciado por escribePlanoStream(), precalcula_escribe(), y RamDiscoCasoPrueba::prueba_precalcula_escribe().

Gráfico de llamadas para esta función:

unsigned long precalcula_escribe_con_hermanos ( NodoTrieS n  ) 

Calcula tamaño en bytes requerido para escribir nodo y hermanos sin descendientes con función escribe

Definición en la línea 33 del archivo RamDisco.cpp.

Hace referencia a NodoTrieS::cad, NodoTrieS::cpos, NodoTrieS::hermano_mayor, y precalcula_escribe_actual().

Referenciado por escribeCopiaNodoRam(), escribePlanoStream(), precalcula_escribe(), y RamDiscoCasoPrueba::prueba_precalcula_escribe_con_hermanos().

Gráfico de llamadas para esta función:

unsigned long renumeraUltimoDoc ( char *  na,
char *  nrel,
unsigned long  nd 
)

Renumera último documento indexado y los que le siguen.

Parámetros:
na Nombre del índice
nrel Nombre de la relación
nd Nuevo índice para el último documento indexado.
Devuelve:
Cantidad de documentos que quedan indexados


Generado el Wed Jan 6 06:59:41 2010 para Mt77 por  doxygen 1.5.4