Sprung zum Seitenende Struktur Themen A...Z Titel << >>

CXI-Basis-Programmierreferenz / Version 2 / Datenspeicherung / CxiNode /

class CxiNode

[C++] class CxiNode : public CxiClassMemberStruct

[S1:BASIS] CxiNode ist die Basisklasse des gesamten CXI-Systems, siehe Klassenhierarchie. Die Membervariablen sind aus programmtechnischen Gründen in der Struktur CxiClassMemberStruct zusammengefasst; alle Zugriffe können über Memberfunktionen ausgeführt werden, ein direkter Zugriff auf diese Variablen ist weder notwendig noch sinnvoll noch portabel.

Ein CXI-Knoten ist eine allgemeine Schnittstelle zwischen Programmen oder Programm-Moduln. In einem solchen Objekt können beliebige Datenobjekte unter jeweils einem Namen abgelegt werden. Der Empfänger benötigt nur den Namen des Datenobjekts, um es aus dem CXI-Knoten zurückzugewinnen.

Der Zugriff über Namen statt über eine feste Struktur erlaubt die Übergabe zusätzlicher Parameter in neuen Versionen, ohne dass unnötige Inkompatibilitäten zu alten Versionen auftreten: Tatsächlich als Funktionsparameter übergeben wird in jedem Fall nur das Handle des CXI-Knotens.

Um Platz zu sparen, ist es möglich, Variablen über Nummern statt über Namen anzusprechen. Dieser Zugriff spart Platz beim Aufruf und im CXI-Knoten, hat jedoch keinen Einfluss auf die allgemeine Verwendbarkeit: Die Variablennummern sind keine Offsets! Mit Nummern lassen sich auch indizierte Listen problemlos in einem CXI-Knoten speichern.

Der CXI-Knoten selbst ist eine im Hauptspeicher befindliche Struktur, mit der der Anwender und der Programmierer nicht direkt in Berührung kommen. Für den Zugriff auf die Daten stehen eine Menge von Funktionen bereit, die die Verwaltung übernehmen. Sowohl unter C (Funktions-Schnittstelle) als auch unter C++ (Klassen-Schnittstelle) sind die Zugriffsmethoden verfügbar.

Die Funktionen unterstützen folgende Bereiche:

- Erstellen, Duplizieren, Löschen eines CXI-Knotens
- Setzen, Auslesen, Löschen von Variablen
- Aufruf einer Callback-Funktion
- Umnummerierung von Variablen
- Diverse Statusabfragen
- Automatischer Zugriff auf Resource-Daten
- Schreiben und Lesen eines CXI-Knotens in/aus Datei
- Testausgabe im Textformat (Debugging)

Um allgemein verwendbar zu sein, muss der CXI-Knoten Objekte aller Basistypen aufnehmen können. Diese Typen sind:

- Numerische Werte (long int)
- Einzelne Zeichen (Bytes)
- Logische (boolesche) Werte
- Datenzeiger (void *)
- Funktionszeiger (Callbacks)
- Zeichenketten
- Listen von Zeichenketten
- Character-Arrays
- Geschachtelte CXI-Knoten (Nicht-CXI-Baum)
- Formatfreie Binärblöcke
- NIL

Der logische Aufbau eines CXI-Knotens ist vergleichbar mit einer zweispaltigen Tabelle. Die erste Spalte ist ein Schlüssel (Name oder Nummer), die zweite Spalte ein diesem Schlüssel zugeordneter Wert, der einen der genannten Typen besitzen kann.

Beispiel:

Schlüssel      Wert
------------------------------------------------
PCDATEI        C:\SUBDIR\BEISPIEL.DAT
HOSTDATEI      'TESTUSER.DATA.PCFILES(BEISPIEL)'
RICHTUNG       SEND
BINAER         FALSE
OPTIONEN       /W3 /ASCII

In diesem Beispiel enthält der Block Parameter, die für einen Filetransfer nötig sind. Ein beliebiges Programm stellt den Block zusammen und übergibt ihn dann dem Transferprogramm. Dieses wertet die Parameter aus, belegt nicht vorhandene Parameter mit Vorgaben und führt den Transfer durch.

Portabilität:
Diese Klasse ist in allen unterstützten Systemen verfügbar.


[i] CXI-Basis-Programmierreferenz
Version 2.10 72 (1014-001), erstellt am 15. April 2000
Textseite 101 von 855, Thema 8283 (ClassCxiNode)
[c] Copyright (c) 1996-2000 by TeraConnect GmbH

Sprung zum Seitenanfang Struktur Themen A...Z Titel << >>