Interval
stellt ein d-dimensionales Intervall dar, wobei d die im Template-Parameter Dim
angegebene Dimension ist.
More...
#include <IntervalIntersectionGList.h>
Inheritance diagram for groupindex::Interval< Group, numeric, Dim >:
Public Member Functions | |
Interval< Group, numeric, Dim > & | operator= (const Interval< Group, numeric, Dim > &intv) |
Copy-Konstruktor. | |
bool | operator< (Interval< Group, numeric, Dim > &i2) const |
Vergleichgsoperator, dessen Ordnung auf Intervallen nur durch die Dateinummer lt.i gegeben ist. | |
bool | operator== (Interval< Group, numeric, Dim > &i2) const |
bool | operator> (const Interval< Group, numeric, Dim > &ic2) const |
Vergleichgsoperator, dessen Ordnung auf Intervallen nur durch die Dateinummer lt.i gegeben ist. | |
Interval () | |
Standardkonstruktor. | |
~Interval () | |
Standarddestruktor. | |
Interval (ListTupel< Group > mylt) | |
Standardkonstruktor, der ein Intervall aus einem ListTupel erzeugt. | |
Interval (Group myg) | |
Standardkonstruktor, der ein Intervall aus einem Gruppenelement erzeugt. | |
Interval (Group myg, int newmatched) | |
Interval (FILE *stream) | |
Konstruktor, der ein Intervall aus eine Datei liest. | |
Interval (std::ifstream &ifs) | |
Konstruktor, der ein Intervall aus eine Datei liest. | |
Interval (std::fstream &ifs) | |
unsigned long | indexSize () |
Gibt die Anzahl von Bytes zurück, die das Intervall in einer Datei belegt. | |
void | writeToFile (FILE *stream) |
Schreibt das Gruppenelement, welches das Intervall repräsentiert, in eine Datei. | |
bool | expand (Group &x) |
Erweitert das Intervall um das Gruppenelement x . | |
numeric | operator[] (int i) |
Von Group "durchgeschleifter" Indexoperator. | |
operator ListTupel () | |
Public Attributes | |
numeric | cmin [Dim] |
Untere Grenze des Intervalls. | |
numeric | cmax [Dim] |
Obere Grenze des Intervalls. | |
int | matched |
Zähler, wie oft das Intervall in der intersect() - Routine gefunden wurde. | |
Static Public Attributes | |
const unsigned int | longsize |
Friends | |
std::ofstream & | operator<< (std::ofstream &ofs, Interval< Group, numeric, Dim > i) |
Interval
stellt ein d-dimensionales Intervall dar, wobei d die im Template-Parameter Dim
angegebene Dimension ist.
Intervalle sind die zentrale Datenstruktur bei der unscharfen Schnittmengenbildung; Gruppenelemente werden hierbei als Punkte in einem mehrdimensionalen reellen Vektorraum betrachtet.
Zu einem Intervall wir ein das Intervall repräsentierender Punkt im innerenen des Intervalls gespeichert, welcher ein Gruppenelement darstellt. Auf dieses Gruppenelement kann durch Interval::ListTupel::g
zugegriffen werden.
Gegenüber der Klasse GInvertedList
stellt die IntervalIntersectionGList
weitere Bedingungen an die Gruppenklasse: Der Indexoperator Group::operator[](int)
muss überladen werden und für Paramter zwischen 0
und Dim-1
Werte vom Typ numeric
zurückliefern (wobei ein (const)
numeric
zurückgegeben werden darf, es muss keine Referenz, also kein numeric&
zurückgegeben werden).
|
Standardkonstruktor, der ein Intervall aus einem ListTupel erzeugt. Jedes Intervall benötigt ein ListTupel, durch dessen Gruppenelement das Intervall repräsentiert wird. Der durch dieses Gruppenelement gegebene Punkt liegt stets innerhalb des Intervalls. |
|
Standardkonstruktor, der ein Intervall aus einem Gruppenelement erzeugt. Jedes Intervall benötigt ein ListTupel, durch dessen Gruppenelement das Intervall repräsentiert wird. Der durch das Gruppenelement gegebene Punkt liegt stets innerhalb des Intervalls. |
|
Konstruktor, der ein Intervall aus eine Datei liest.
|
|
Konstruktor, der ein Intervall aus eine Datei liest.
|
|
Erweitert das Intervall um das Gruppenelement
|
|
Gibt die Anzahl von Bytes zurück, die das Intervall in einer Datei belegt.
Diese Anzahl von Bytes ist genau die Anzahl Bytes, die das Gruppenelement
|