groupindex::GroupIndex
- Klasse automatisch ein Shell-Tool für ein Indexierungssystem.
More...
#include <IndexCommandLine.h>
Collaboration diagram for groupindex::IndexCommandLine< CIndex, CInterface >:
groupindex::GroupIndex
- Klasse automatisch ein Shell-Tool für ein Indexierungssystem.
Dieses erlaubt durch einen kleinen Befehlssatz Zugriff auf Indexe, so z.B. das Erstellen, Modifizieren und Durchsuchen von Indexen. Zum Einlesen von Dateien bzw. zum Parsen von Indexdateien und Suchanfragen muss eine Klasse CInterface
implementiert werden. Diese muss lediglich zwei statische Methoden unterstützen:
static void CInterface::parseQuery(char* query_desc, std::set<CIndex::IndexSet>& query);
query_desc
angegebene Anfrage und erzeugt daraus ein Stl-set, welches die in query_desc
enthaltenen Anfragelemente enthält. Diese Anfrage enthält Instanzen der Mengenklasse. Die Klasse CIndex::IndexSet
ist genau dieselbe wie die Mengenklasse, die der Klasse CIndex
als Mengenklasse übergeben wurde. Der übergegebene String query_desc
kann wohlgemerkt auch als Dateiname interpretiert werden, so dass CInterface::parseQuery
den Inhalt dieser Datei parst.static void CInterface::readDataFile(char* filename, CIndex& groupindex);
filename
angegebene Datei und fügt die darin enthaltenen Elemente in das Index-Objekt groupindex
ein.IndexCommandLine
- Objekt kann einfach mit dem Standard-Konstruktor erzeugt und mit der run()
- Methode gestartet werden. Damit besteht z.B. die main()
- Routine eines einfachen Indexierungssystems aus den folgenden Programmzeilen: int main(int argc, char** args) { IndexCommandLine<myIndexType,myInterface> icl; icl.run(); }
Die Index-Shell benötigt für viele Operationen einen aktuellen Index. Ein solcher kann mit dem Befehl OPEN geöffnet bzw. neu angelegt werden. Es stehen dann folgende Befehle zur Verfügung:
...
;
Fügt datafile1 ... datafileN in den aktuell geöffneten Index ein. Es muss zuvor ein Index mit OPEN
geöffnet worden sein.
...
;
Entfernt datafile1 ... datafileN aus dem aktuellen Index. Es muss zuvor ein Index mit OPEN
geöffnet worden sein.
;
Vereinigt den aktuellen Index mit dem in der Indexdatei indexfile2 enthaltenen Index. indexfile2 muss eine gültige Indexdatei vom selben Typ wie der aktuelle Index sein. Sind in Dateinamen vorhanden, die im aktuellen Index bereits existieren, so werden diese umbenannt und erhalten einen eindeutigen Namen.
;
setzt die Anzahl der zulässigen Mismatches für Suchanfragen auf N. Standard-Wert ist 0.
;
öffnet die Index-Datei indexfile und macht diesen Index zum aktuellen Index. Existiert indexfile nicht, so wird diese angelegt.