|
Dieser Anhang beschreibt die in der
Bartels User Language eingebundenen Systemfunktionen. Die Funktionen sind dabei gegliedert nach den jeweiligen Aufruftypen in Referenzlisten aufgeführt und anschließend in Form eines Nachschlagewerks in alphabetischer Reihenfolge beschrieben.
Inhalt
C.1 Funktionsübersicht
Jede in der
Bartels User Language definierte Systemfunktion ist genau einem der Aufruftypen STD, CAP, LAY, SCM, GED, AR, CAM, CV, ICD oder CED zugeordnet. Dieser Abschnitt enthält eine Übersicht über die zum jeweiligen Aufruftyp definierten Systemfunktionen.
Konventionen zur Funktionsbeschreibung
Für in den nachfolgenden Kapiteln dieses Anhangs beschriebene Funktion ist der zu dieser Funktion definierte Aufruftyp sowie eine formale Deklaration der Funktion und ihrer Parameter angegeben. Mit dem Datentyp der Systemfunktion ist auch der jeweilige Datentyp des zugehörigen Rückgabewertes definiert; ist der Datentyp einer Funktion
void , dann gibt diese Funktion keinen Wert an den Aufrufer zurück. Wo nötig wird die Arbeitsweise einer Funktion durch nähere Angaben erläutert bzw. durch Beispiele veranschaulicht.
Bei der Deklaration der Parameter wird wenn nötig ein Wertebereich angegeben. Die Angabe erfolgt dabei mit unterer und oberer Grenze des Parameterbereichs. Für die untere Grenze sind folgende Angaben möglich:
[ L | Wert >= untere Grenze L |
] L | Wert > untere Grenze L |
] | keine Beschränkung nach unten |
Für die obere Grenze sind entsprechend folgende Angaben möglich:
U ] | Wert <= obere Grenze U |
U [ | Wert < obere Grenze U |
[ | keine Beschränkung nach oben |
Die Wertebereichsgrenzen werden durch
, getrennt. Die Parameterdeklaration
double ]0.0,[;
gibt z.B. an, dass der Parameter vom Datentyp
double und größer als 0.0 sein muss. Dem
User Language Compiler sind die so definierten Parameterwertebereiche bekannt; er gibt ggf. eine Fehlermeldung aus, wenn er erkennt, dass ein Parameterwert außerhalb des gültigen Wertebereichs liegt.
Ist einem Parameter das Zeichen
& vorangestellt, dann bedeutet dies, dass der Wert dieses Parameters durch die Systemfunktion gesetzt bzw. verändert wird. Dem
User Language Compiler ist diese Parametereigenschaft bekannt; er gibt ggf. eine Warnmeldung aus, wenn er erkennt, dass ein konstanter Wert oder ein Berechnungsergebnis an einen solchen Parameter übergeben wird.
Ist einem Parameter das Zeichen
* vorangestellt, dann handelt es sich bei diesem Parameter um die Referenz auf eine Anwenderfunktion; in diesem Fall wird zusätzlich die vorgeschriebene Deklaration dieser Anwenderfunktion mit aufgeführt. Die Systemfunktion aktiviert von sich aus die entsprechende Anwenderfunktion, sofern diese im
User Language-Programm definiert ist. Unter Umständen ist die Referenzierung von Anwenderfunktionen optional; wenn in diesem Fall eine entsprechende Anwenderfunktion nicht aktiviert werden soll, dann ist für den entsprechenden Parameter das Schlüsselwort
NULL einzutragen. Bei der Deklaration referenzierter Anwenderfunktionen sollte mit größter Sorgfalt vorgegangen werden, da erst zur Laufzeit (also durch den
User Language Interpreter) festgestellt werden kann, ob die Konventionen hinsichtlich des Datentyps und der Parameterdeklarationen für die Anwenderfunktion eingehalten wurden (ist dies nicht der Fall, dann kommt es zu einem Laufzeitfehler); auch das Setzen des Rückgabewertes der referenzierten Anwenderfunktion sollte unbedingt entsprechend den vorgegebenen Konventionen erfolgen, da sich sonst u.U. fatale Nebeneffekte ergeben, die man auf Anhieb gar nicht erkennen (geschweige denn abfangen) kann.
Einen weiteren Spezialfall für die Parameter von Systemfunktionen stellt schließlich der Datentyp
void dar, der angibt, dass der betreffende Parameter von einem beliebigen Datentyp sein kann. Die Spezifikation des Parametertyps
[] schließlich gibt an, dass die Funktion an dieser Stelle optional eine beliebige Anzahl von Parametern vom Datentyp
void erwartet.
C.1.1 Standard Systemfunktionen (STD)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp STD zugeordnet, d.h. diese Funktionen können in allen definierten Interpreterumgebungen aufgerufen werden:
C.1.2 Schematic Capture Systemfunktionen (CAP)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CAP zugeordnet, d.h. diese Funktionen können im
Schaltplaneditor aufgerufen werden:
C.1.3 Schematic Editor Systemfunktionen (SCM)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp SCM zugeordnet, d.h. diese Funktionen können im
Schaltplaneditor aufgerufen werden:
C.1.4 Layout Systemfunktionen (LAY)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp LAY zugeordnet, d.h. diese Funktionen können im
Layouteditor, im
Autorouter und im
CAM-Prozessor aufgerufen werden:
C.1.5 Layouteditor Systemfunktionen (GED)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp GED zugeordnet, d.h. diese Funktionen können im
Layouteditor aufgerufen werden:
C.1.6 Autorouter Systemfunktionen (AR)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp AR zugeordnet, d.h. diese Funktionen können im
Autorouter aufgerufen werden:
C.1.7 CAM-Prozessor Systemfunktionen (CAM)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CAM zugeordnet, d.h. diese Funktionen können im
CAM-Prozessor aufgerufen werden:
C.1.8 CAM-View Systemfunktionen (CV)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CV zugeordnet, d.h. diese Funktionen können im
CAM-View-Modul aufgerufen werden:
C.1.9 IC Design Systemfunktionen (ICD)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp ICD zugeordnet, d.h. diese Funktionen können im
Chipeditor aufgerufen werden:
C.1.10 Chip Editor Systemfunktionen (CED)
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CED zugeordnet, d.h. diese Funktionen können im
Chipeditor aufgerufen werden:
C.2 Standard-Systemfunktionen
In diesem Abschnitt werden (in alphabetischer Reihenfolge) die in der
Bartels User Language definierten Standard-Systemfunktionen beschrieben. Beachten Sie bitte die Konventionen zur Funktionsbeschreibung in
Anhang C.1.
abs - Absolutwert eines Ganzzahlwertes (STD)
Synopsis
int abs( // Berechnungsergebnis
int; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
abs entspricht dem Absolutwert des übergebenen Ganzzahlwertes.
acos - Arcuscosinus berechnen (STD)
Synopsis
double acos( // Berechnungsergebnis (STD3)
double [-1.0,1.0]; // Cosinus-Wert
);
Beschreibung
Der Rückgabewert der Funktion
acos entspricht dem Arcuscosinus des übergebenen Gleitkommawertes. Der Winkel wird in Bogenmaßeinheiten angegeben.
angclass - Winkelklassifizierung (STD)
Synopsis
int angclass( // Winkelklasse
double; // Winkel (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
angclass gibt die Winkelklasse eines Winkels an. Mögliche Klassenwerte sind 0 für 0 Grad Winkel, 1 für einen 90 Grad Winkel, 2 für einen 180 Grad Winkel, 3 für einen 270 Grad Winkel und (-1) für andere Winkel. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
arylength - Arraylänge bestimmen (STD)
Synopsis
int arylength( // Feldlänge
void; // Array beliebigen Typs
);
Beschreibung
Der Rückgabewert der Funktion
arylength entspricht der Länge des übergebenen Arrays.
asin - Arcussinus berechnen (STD)
Synopsis
double asin( // Berechnungsergebnis (STD3)
double [-1.0,1.0]; // Sinus-Wert
);
Beschreibung
Der Rückgabewert der Funktion
asin entspricht dem Arcussinus des übergebenen Gleitkommawertes. Der Winkel wird in Bogenmaßeinheiten angegeben.
askcoord - Benutzereingabe X-/Y-Koordinatenwerte (STD)
Synopsis
int askcoord( // Status
& double; // Rückgabe X-Koordinate (STD2)
& double; // Rückgabe Y-Koordinate (STD2)
int [0,1]; // Eingabemodus:
// 0 = Koordinaten relativ zu letzter Position
// 1 = Koordinaten absolut
);
Beschreibung
Die Funktion
askcoord aktiviert einen Dialog zur Abfrage von X- und Y-Koordinatenwerten. Der Eingabemodus gibt an, ob Relativkoordinaten
() oder Absolutkoordinaten
() abgefragt werden sollen. Die eingegebenen Koordinatenwerte werden über die ersten beiden Funktionsparameter an den Aufrufer zurückgegeben. Bei der Abfrage von Absolutkoordinaten fungieren diese Parameter auch als Eingabeparameter für voreingestellte Koordinatenwerte. Der Funktionsrückgabewert ist Null bei erfolgreicher Koordinateneingabe oder ungleich Null wenn die Koordinateneingabe abgebrochen wurde.
askdbl - Benutzereingabe Gleitkommazahlwert (STD)
Synopsis
int askdbl( // Status
& double; // Rückgabe Gleitkommawert
string; // Eingabeaufforderung
int; // Maximale Eingabelänge
);
Beschreibung
Die Funktion
askdbl fordert den Benutzer in der Eingabezeile mit der übergebenen Promptzeichenkette zur Eingabe eines Gleitkommawertes auf. Der vom Benutzer eingegebene Wert wird im Rückgabeparameter zurückgegeben. Ein Funktionsrückgabewert ungleich Null gibt an, dass kein gültiger Gleitkommawert eingegeben wurde.
askdist - Benutzereingabe Distanzwert (STD)
Synopsis
int askdist( // Status:
// -1 = Eingabe ungültig/abgebrochen
// 0 = Gültige Distanzwerteingabe
// 1 = Gültige Distanzwerteingabe,
// Eckpunktschaltfläche gedrückt
& double; // Rückgabe Distanzwert
string; // Eingabeaufforderung
int [0,15]; // Eingabekontrolle:
// 1 = Negative Werte zulässig
// 2 = Kreisbögen zulässig
// 4 = Eingabeaufferdoerung für Zeichenketten
// 8 = Schaltfläche für runde Ecken
);
Beschreibung
Die Funktion
askdist fordert den Benutzer in der Eingabezeile mit der übergebenen Promptzeichenkette zur Eingabe eines Distanzwertes auf. Der vom Benutzer eingegebene Wert wird im Default-User-Einheitensystem interpretiert und im Rückgabeparameter in der Einheit Meter zurückgegeben. Der dritte Parameter dient der Konfiguration der zulässigen Eingaben. Der Funktionsrückgabewert ergibt sich zu Null wenn ein gültiger Distanzwert eingegeben wurde, 1 bei erfolgreicher Distanzwerteingabe mit gedrückter Eckpunktschaltfläche, oder (-1) wenn die kein gütiger Wert eingegeben bzw. die Eingabe abgebrochen wurde.
askint - Benutzereingabe Ganzzahlwert (STD)
Synopsis
int askint( // Status
& int; // Rückgabe Ganzzahlwert
string; // Eingabeaufforderung
int; // Maximale Eingabelänge
);
Beschreibung
Die Funktion
askint fordert den Benutzer in der Eingabezeile mit der übergebenen Promptzeichenkette zur Eingabe eines Ganzzahlwertes auf. Der vom Benutzer eingegebene Wert wird im Rückgabeparameter zurückgegeben. Ein Funktionsrückgabewert ungleich Null gibt an, dass keine gültiger Ganzzahlwert eingegeben wurde.
askstr - Benutzereingabe Zeichenkette (STD)
Synopsis
string askstr( // Zeichenkette
string; // Eingabeaufforderung
int; // Maximale Eingabelänge
);
Beschreibung
Die Funktion
askstr fordert den Benutzer in der Eingabezeile mit der übergebenen Promptzeichenkette zur Eingabe einer Zeichenkette auf. Der Rückgabewert dieser Funktion entspricht der vom Benutzer eingegebenen Zeichenkette.
atan - Arcustangens berechnen (STD)
Synopsis
double atan( // Berechnungsergebnis
double; // Winkel (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
atan entspricht dem Arcustangens des übergebenen Gleitkommawertes. Der Winkel wird in Bogenmaßeinheiten angegeben.
atan2 - Arcustangens eines punktbestimmten Winkels (STD)
Synopsis
double atan2( // Berechnungsergebnis (STD3)
double; // Y-Koordinate
double; // X-Koordinate
);
Beschreibung
Der Rückgabewert der Funktion
atan2 entspricht dem Winkel, den die Ursprungshalbgerade durch den angegebenen Punkt mit der positiven X-Achse einschließt. Der Winkel wird in Bogenmaßeinheiten angegeben.
atof - Umwandlung Zeichenkette in Gleitkommazahlwert (STD)
Synopsis
double atof( // Gleitkommawert
string; // Zeichenkette
);
Beschreibung
Der Rückgabewert der Funktion
atof entspricht dem Gleitkommawert, der in der übergebenen Zeichenkette in ASCII-Darstellung angegeben ist.
atoi - Umwandlung Zeichenkette in Ganzzahlwert (STD)
Synopsis
int atoi( // Ganzzahlwert
string; // Zeichenkette
);
Beschreibung
Der Rückgabewert der Funktion
atoi entspricht dem Ganzzahlwert, der in der übergebenen Zeichenkette in ASCII-Darstellung angegeben ist.
bae_askddbename - DDB-Elementnamensabfrage (STD)
! prefix save else load, empty if std. message
Synopsis
int bae_askddbename( // Status
& string; // Rückgabe Elementname
string; // Dateiname
int ]0,[; // Elementklasse (STD1)
string; // Eingabeaufforderung
// Leerstring: Standarddateidialog
// ! -Präfix: Dateisicherungsdialog
// sonst: Dateiladedialog
);
Beschreibung
Die Funktion
bae_askddbename erlaubt dem Benutzer einen DDB-Datei Elementnamen wahlweise mit der Maus in einem Popupauswahlfenster aus der Liste der vorhandenen Elemente zu selektieren oder per Tastatur in der Eingabezeile einzugeben. Wird für die Eingabeaufforderung ein Leerstring angegeben, so wird der Standardprompt für DDB-Elementnamensabfragen verwendet. Über den ersten Parameter kann ein Name übergeben werden, der in der Abfrage als Vorauswahl erscheint, d.h. wenn keine Vorauswahl möglich bzw. erlaubt ist, dann ist ein Leerstring zu übergeben. Der Rückgabewert ist ungleich Null, wenn kein gültiges Element gewählt wurde.
bae_askddbfname - DDB-Dateinamensabfrage (STD)
Synopsis
int bae_askddbfname( // Status
& string; // Rückgabe Dateiname
int [0,3]; // Modus Dateinamensdialog (Bitmuster):
// 1 = Prüfen, ob Datei existiert
// 2 = angegebener Dateiname ist Default
string; // Eingabeaufforderung
// Leerstring: Standarddateidialog
// ! -Präfix: Dateisicherungsdialog
// sonst: Dateiladedialog
);
Beschreibung
Die Funktion
bae_askddbfname erlaubt dem Benutzer einen DDB-Dateinamen wahlweise mit der Maus in einem Popupauswahlfenster aus der Liste der vorhandenen DDB-Dateien zu selektieren oder per Tastatur in der Eingabezeile einzugeben. Wird für die Eingabeaufforderung ein Leerstring angegeben, dann wird der BAE-Standardprompt für DDB-Dateinamensabfragen verwendet. Ist das erste Zeichen der Eingabeaufforderung ein Ausrufezeichen
(! ), dann wird dieses ausgeblendet, und unter Windows wird im Dateiabfragedialog anstelle des Bestätigungsbuttons
der Button
angezeigt. Der Rückgabewert ist ungleich Null, wenn kein gültiger DDB-Dateiname gewählt wurde bzw. die Existenzprüfung auf eins gesetzt ist und die angegebene Datei nicht existiert.
bae_askdirname - Dateiverzeichnisnamensabfrage (STD)
Synopsis
int bae_askdirname( // Status
& string; // Rückgabe Dateiverzeichnisname
string; // Startverzeichnispfad
string; // Eingabeaufforderung
);
Beschreibung
Die Funktion
bae_askdirname erlaubt dem Benutzer einen Dateiverzeichnisnamen wahlweise mit der Maus in einem Popupauswahlfenster aus der Liste der vorhandenen Verzeichnisse zu selektieren oder per Tastatur in der Eingabezeile einzugeben. Der Startverzeichnispfad gibt das Verzeichnis an ab dem im Popupauswahlfenster Unterverzeichnisse angezeigt werden. Wird für die Eingabeaufforderung ein Leerstring angegeben, so wird der Standardprompt für Dateiverzeichnisabfragen verwendet. Der Rückgabewert ist ungleich Null, wenn kein gültiger Verzeichnisname gewählt wurde.
bae_askfilename - Dateinamensabfrage (STD)
Synopsis
int bae_askfilename( // Status
& string; // Rückgabe Dateiname
string; // Dateinamensendung
string; // Eingabeaufforderung
// Leerstring: Standarddateidialog
// ! -Präfix: Dateisicherungsdialog
// sonst: Dateiladedialog
);
Beschreibung
Die Funktion
bae_askfilename aktiviert einen Dialog zur Dateinamensabfrage. Über den Parameter für die Dateinamensendung kann ein Dateinamensfilter gesetzt werden. Ein Leerstring bewirkt die Anzeige aller verfügbaren Dateien. Bei Angabe einer Dateinamenserweiterung (z.B.
.ddb ,
.dat ,
.txt ,
. ,
.* , usw.) werden nur die Dateien mit der angegebenen Endung angezeigt. Bei Eingabe eines Minuszeichens
(- ) für die Dateinamenserweiterung werden alle Dateien mit BAE-System- bzw. Datendateiendungen
(.ass ,
.con ,
.ddb ,
.def ,
.exe ,
.fre ,
.ulc und
.usf ) aus dem Dateinamensmenü ausgeblendet (dieser Mechanismus eignet sich insbesondere für Ausgabe- bzw. Plotdateiabfragen, bei welchen keine System-, Bibliotheks- oder Projektdateien selektiert werden dürfen). Wird für die Eingabeaufforderung ein Leerstring angegeben, dann wird der BAE-Standardprompt für Dateinamensabfragen verwendet. Ist das erste Zeichen der Eingabeaufforderung ein Ausrufezeichen
(! ), dann wird dieses ausgeblendet, und unter Windows wird im Dateiabfragedialog anstelle des Bestätigungsbuttons
der Button
angezeigt. Der Rückgabewert ist ungleich Null, wenn kein gültiger Dateiname gewählt wurde.
bae_askmenu - BAE Menüabfrage (STD)
Synopsis
int bae_askmenu( // Rückgabe selektierter Menüeintrag, (0..49)
// oder (-1) bei Abbruch der Menüauswahl
int [1,50]; // Anzahl Menüeinträge
string; // Menütext erster Menüeintrag
[] // Weitere Menütexte
);
Beschreibung
Die Funktion
bae_askmenu ermöglicht die Definition und Aktivierung eines anwenderspezifischen Menüs mit mausselektierbaren Menüeinträgen. Der Rückgabewert gibt den vom Benutzer gewählten Menüeintrag an oder ergibt sich zu (-1), wenn die Menüauswahl abgebrochen wurde. Die Nummerierung der Menüeinträge beginnt bei Null.
Siehe auch
Funktion bae_defmenusel.
bae_askname - BAE Dialog zur Namensauswahl aktivieren (STD)
Synopsis
int bae_askname( // Status
& string; // Rückgabe selektierter Name
string; // Eingabeaufforderung (oder Leerstring)
int; // Maximale Eingabestringlänge
);
Beschreibung
Die Funktion
bae_askname aktiviert einen Dialog zur Selektion eines Namens aus der aktuell mit
bae_nameadd definierten Namensliste.
Über den zweiten Funktionsparameter kann eine anwendungsspezifische Eingabeaufforderung angegeben werden. Wird hierfür ein Leerstring angegeben, dann benutzt
bae_askname einen vordefinierten Standardprompt.
Der dritte Funktionsparameter definiert die maximal zulässige Stringlänge für die Benutzereingabe.
Bei erfolgter Namensauswahl wird der selektierte Name im ersten Funktionsparameter zurückgegeben.
Der Funktionsrückgabewert ergibt ist Null bei erfolgreicher Namensselektion oder ungleich Null wenn die Funktion ohne Namensselektion abgebrochen wurde.
Siehe auch
Funktionen bae_nameadd,
bae_nameclr,
bae_nameget.
bae_asksymname - BAE DDB-Bibliothekselementabfrage (STD)
Synopsis
int bae_asksymname( // Status
& string; // Rückgabe Elementname
& string; // Rückgabe DDB-Bibliotheksdateiname
int ]0,[; // Datenbankklasse (STD1)
string; // Bibliotheksverzeichnis
string; // Standard-Bibliotheksdateiname
string; // Standard-Symbol-/Elementname
);
Beschreibung
Die Funktion
bae_asksymname aktiviert einen Dialog zur Auswahl eines Bibliothekselements der angegeben Datenbankklasse aus einer selektierbaren Bibliotheksdatei. Der Funktionsrückgabewert ist Null bei erfolgreicher Auswahl oder ungleich Null wenn der Anwender den Dialog ohne gültige Elementauswahl beendet.
bae_callmenu - BAE Menüfunktion aufrufen (STD)
Synopsis
int bae_callmenu( // Status
int [0,9999]; // Menüfunktion (STD4)
);
Beschreibung
Die Funktion
bae_callmenu aktiviert die angegebene Menüfunktion. Der Rückgabewert ist ungleich Null, wenn bei der Ausführung der Menüfunktion ein Fehler aufgetreten ist oder eine ungültige bzw. unbekannte Menüfunktion spezifiziert wurde.
bae_charsize - BAE Text-/Zeichengröße abfragen (STD)
Synopsis
void bae_charsize(
& double; // Rückgabe Zeichenbreite (Pixelanzahl)
& double; // Rückgabe Zeichenhöhe (Pixelanzahl)
);
Beschreibung
Die Funktion
bae_charsize gibt in den beiden Parametern die aktuell im
AutoEngineer eingestellte Text- bzw. Zeichengröße, d.h. die Pixelanzahl pro Zeichen in X- bzw. Y-Richtung zurück.
bae_cleardistpoly - Internes BAE Distanzabfragepolygon löschen (STD)
Synopsis
void bae_cleardistpoly(
);
Beschreibung
Die Funktion
bae_cleardistpoly löscht das mit
bae_storedistpoly erzeugte Distanzabfragepolygon.
Siehe auch
Funktion
bae_storedistpoly.
bae_clearpoints - BAE Polygonpunktliste löschen (STD)
Synopsis
void bae_clearpoints(
);
Beschreibung
Die Funktion
bae_clearpoints löscht die zum Aufbau von Polygonen verwendete interne Punktliste. Dies ist prinzipiell vor dem ersten Aufruf von
bae_storepoint zum Aufbau einer Punktliste notwendig um evtl. vorhandene alte Punkte zu löschen.
Siehe auch
Funktionen
bae_getpolyrange,
bae_storedistpoly,
bae_storepoint.
bae_clriactqueue - BAE Interaktionsvorgaben löschen (STD)
Synopsis
void bae_clriactqueue(
);
Beschreibung
Die Funktion
bae_clriactqueue löscht die in der Interaktionsqueue gespeicherten Vorgaben. Die Interaktionsqueue dient dazu, die Benutzereingaben für die über die Funktion
bae_callmenu aufgerufenen Menüfunktionen ganz oder teilweise vorzugeben.
bae_crossarcarc - Schnittpunkt(e) zwischen Kreisbögen bestimmen (STD)
Synopsis
int bae_crossarcarc( // Anzahl Schnittpunkte
double; // Kreisbogen 1 Start X-Koordinate (STD2)
double; // Kreisbogen 1 Start Y-Koordinate (STD2)
double; // Kreisbogen 1 Mittelpunkt X-Koordinate (STD2)
double; // Kreisbogen 1 Mittelpunkt Y-Koordinate (STD2)
int [1,2]; // Kreisbogen 1 Mittelpunkt Typ (STD15)
double; // Kreisbogen 1 Endpunkt X-Koordinate (STD2)
double; // Kreisbogen 1 Endpunkt Y-Koordinate (STD2)
double; // Kreisbogen 2 Startpunkt X-Koordinate (STD2)
double; // Kreisbogen 2 Startpunkt Y-Koordinate (STD2)
double; // Kreisbogen 2 Mittelpunkt X-Koordinate (STD2)
double; // Kreisbogen 2 Mittelpunkt Y-Koordinate (STD2)
int [1,2]; // Kreisbogen 2 Mittelpunkt Typ (STD15)
double; // Kreisbogen 2 Endpunkt X-Koordinate (STD2)
double; // Kreisbogen 2 Endpunkt Y-Koordinate (STD2)
& double; // Schnittpunkt 1 X-Koordinate (STD2)
& double; // Schnittpunkt 1 Y-Koordinate (STD2)
& double; // Schnittpunkt 2 X-Koordinate (STD2)
& double; // Schnittpunkt 2 Y-Koordinate (STD2)
);
Beschreibung
Die Funktion
bae_crossarcarc führt eine Schnittpunktbestimmung für die beiden angegebenen Kreisbögen durch. Der Funktionsrückgabewert gibt die Anzahl der Schnittpunkte an (0, 1 oder 2). Die ermittelten Schnittpunktkoordinaten werden ggf. in den entsprechenden Funktionsparametern zurückgegeben.
Siehe auch
Funktionen bae_crosslineline,
bae_crosslinepoly,
bae_crosssegarc,
bae_crosssegseg.
bae_crosslineline - Schnittpunkt zwischen Liniensegmenten mit Breite bestimmen (STD)
Synopsis
int bae_crosslineline( // Schnittflag
double; // Linie 1 Start X-Koordinate (STD2)
double; // Linie 1 Start Y-Koordinate (STD2)
double; // Linie 1 Endpunkt X-Koordinate (STD2)
double; // Linie 1 Endpunkt Y-Koordinate (STD2)
double ]0.0,[; // Linie 1 Breite (STD2)
double; // Linie 2 Start X-Koordinate (STD2)
double; // Linie 2 Start Y-Koordinate (STD2)
double; // Linie 2 Endpunkt X-Koordinate (STD2)
double; // Linie 2 Endpunkt Y-Koordinate (STD2)
double ]0.0,[; // Linie 2 Breite (STD2)
);
Beschreibung
Die Funktion
bae_crosslineline prüft ob sich die beiden angegebenen Liniensegmente schneiden. Der Funktionsrückgabewert ist 1 wenn sich die Segmente schneiden oder Null andernfalls.
Siehe auch
Funktionen bae_crossarcarc,
bae_crosslinepoly,
bae_crosssegarc,
bae_crosssegseg.
bae_crosslinepoly - Schnittpunkt zwischen Liniensegment mit Breite und Polygon bestimmen (STD)
Synopsis
int bae_crosslinepoly( // Schnittflag
double; // Linie Start X-Koordinate (STD2)
double; // Linie Start Y-Koordinate (STD2)
double; // Linie Endpunkt X-Koordinate (STD2)
double; // Linie Endpunkt Y-Koordinate (STD2)
double ]0.0,[; // Linie Breite (STD2)
);
Beschreibung
Die Funktion
bae_crosslinepoly prüft ob das angegebene Liniensegmente das mit
bae_storepoint aktuell erzeugte Polygon schneidet.
schneiden. Der Funktionsrückgabewert ist 1 wenn sich das Liniensegmente mit dem Polygon schneidet oder Null andernfalls.
Siehe auch
Funktionen bae_crossarcarc,
bae_crosslineline,
bae_crosssegarc,
bae_crosssegseg,
bae_storepoint.
bae_crosssegarc - Schnittpunkt zwischen Liniensegment und Kreisbogen bestimmen (STD)
Synopsis
int bae_crosssegarc( // Anzahl Schnittpunkte
double; // Segment Start X-Koordinate (STD2)
double; // Segment Start Y-Koordinate (STD2)
double; // Segment Endpunkt X-Koordinate (STD2)
double; // Segment Endpunkt Y-Koordinate (STD2)
double; // Kreisbogen Start X-Koordinate (STD2)
double; // Kreisbogen Start Y-Koordinate (STD2)
double; // Kreisbogen Mittelpunkt X-Koordinate (STD2)
double; // Kreisbogen Mittelpunkt Y-Koordinate (STD2)
int [1,2]; // Kreisbogen Mittelpunkt Typ (STD15)
double; // Kreisbogen Endpunkt X-Koordinate (STD2)
double; // Kreisbogen Endpunkt Y-Koordinate (STD2)
int [0,1]; // Schnittpunktprioritätsflag
& double; // Schnittpunkt 1 X-Koordinate (STD2)
& double; // Schnittpunkt 1 Y-Koordinate (STD2)
& double; // Schnittpunkt 2 X-Koordinate (STD2)
& double; // Schnittpunkt 2 Y-Koordinate (STD2)
);
Beschreibung
Die Funktion
bae_crosssegarc führt eine Schnittpunktbestimmung für das angegebene Segment und den angegebenen Kreisbogen durch. Der Funktionsrückgabewert gibt die Anzahl der Schnittpunkte an (0, 1 oder 2). Die ermittelten Schnittpunktkoordinaten werden ggf. in den entsprechenden Funktionsparametern zurückgegeben.
Siehe auch
Funktionen bae_crossarcarc,
bae_crosslineline,
bae_crosslinepoly,
bae_crosssegseg.
bae_crosssegseg - Schnittpunkt zwischen Liniensegmenten/Linien bestimmen (STD)
Synopsis
int bae_crosssegseg( // Schnittflag
int [0,1]; // Geradenvergleichsflag
double; // Linie 1 Start X-Koordinate (STD2)
double; // Linie 1 Start Y-Koordinate (STD2)
double; // Linie 1 Endpunkt X-Koordinate (STD2)
double; // Linie 1 Endpunkt Y-Koordinate (STD2)
double; // Linie 2 Start X-Koordinate (STD2)
double; // Linie 2 Start Y-Koordinate (STD2)
double; // Linie 2 Endpunkt X-Koordinate (STD2)
double; // Linie 2 Endpunkt Y-Koordinate (STD2)
& double; // Schnittpunkt X-Koordinate (STD2)
& double; // Schnittpunkt Y-Koordinate (STD2)
);
Beschreibung
Die Funktion
bae_crosssegseg prüft ob sich die beiden angegebenen Segmente bzw. Geraden schneiden. Der erste Funktionsparameter gibt an ob ein Geraden- oder ein Streckenvergleich durchgeführt werden soll. Der Funktionsrückgabewert ist 1 wenn ein Schnittpunkt ermittelt wurde oder Null andernfalls. Wenn ein Schnittpunkt ermittelt werden konnte, dann werden dessen Koordinaten über die letzten beiden Funktionsparameter zurückgegeben.
Siehe auch
Funktionen bae_crossarcarc,
bae_crosslineline,
bae_crosslinepoly,
bae_crosssegarc.
bae_dashpolyline - Gestricheltes BAE Polygon vektorisieren (STD)
Synopsis
int bae_dashpolyline( // Status
int; // Polygonstrichelungsmodus:
// 0 = durchgezogene Linie (keine Strichelung)
// 1 = gestrichelte Linie
// 2 = gepunktete Linie
// 3 = gestrichelte/gepunktete Linie
double ]0.0,[; // Polygonbasisstrichlänge (STD2)
double ]-0.5,0.5[; // Relativer Polygonstrichabstand
* int; // Polygonlinienscanfunktion
* int; // Polygonbogenscanfunktion
);
Beschreibung
Die Funktion
bae_dashpolyline vektorisiert das zuvor mit
bae_storepoint gespeicherte interne Polygon unter Berücksichtigung der spezifizierten Strichelungsparameter. Die Polygonlinienscanfunktion und die Polygonbogenscanfunktion werden jeweils automatisch für die im Polygon enthaltenen Linien bzw. Bögen aufgerufen. Der Funktionsrückgabewert ist Null bei erfolgreicher Vektorisierung oder ungleich Null im Fehlerfall bzw. wenn die Vektorisierung abgebrochen wurde.
Polygonlinienscanfunktion
int polylinescanfuncname(
double xs, // Linienstartpunkt X-Koordinate (STD2)
double ys, // Linienstartpunkt Y-Koordinate (STD2)
double xe, // Linienendpunkt X-Koordinate (STD2)
double ye // Linienendpunkt Y-Koordinate (STD2)
)
{
// Polygon line scan function statements
:
return(status);
}
Die Polygonlinienscanfunktion sollte den Wert Null zurückgeben wenn die Abarbeitung erfolgreich war. Im anderen Fall (bei Fehlern bzw. zum Abbruch des Scans) sollte ein Wert ungleich Null zurückgegeben werden.
Polygonbogenscanfunktion
int polylinescanfuncname(
double xs, // Bogenstartpunkt X-Koordinate (STD2)
double ys, // Bogenstartpunkt Y-Koordinate (STD2)
double xe, // Bogenendpunkt X-Koordinate (STD2)
double ye // Bogenendpunkt Y-Koordinate (STD2)
double xc, // Bogenmittelpunkt X-Koordinate (STD2)
double yc // Bogenmittelpunkt Y-Koordinate (STD2)
int cwflag; // Bogendrehrichtung:
// 0 = Bogen im Gegenuhrzeigersinn
// sonst = Bogen im Uhrzeigersinn
)
{
// Polygon arc scan function statements
:
return(status);
}
Die Polygonbogenscanfunktion sollte den Wert Null zurückgeben wenn die Abarbeitung erfolgreich war. Im anderen Fall (bei Fehlern bzw. zum Abbruch des Scans) sollte ein Wert ungleich Null zurückgegeben werden.
Siehe auch
Funktionen
bae_clearpoints,
bae_storepoint.
bae_deffuncprog - BAE Funktionstaste programmieren (STD)
Synopsis
int bae_deffuncprog( // Status
int [1,128]; // Funktionstastennummer
string; // User Language-Programmname oder
// # gefolgt von Menünummer (STD4)
);
Beschreibung
Die Funktion
bae_deffuncprog ordnet einer Funktionstaste das namentlich angegebene
User Language-Programm bzw. die numerisch spezifizierte BAE-Menüfunktion zu. Durch die Spezifikation eines Leerstrings für den Programmnamen kann die aktuelle Zuordnung zurückgesetzt werden. Der Rückgabewert ist ungleich Null, wenn ungültige Parameter übergeben wurden, oder wenn die zurückzusetzende Funktionstaste nicht belegt ist.
Siehe auch
Funktionen
bae_getfuncprog,
bae_resetmenuprog.
bae_defkeyprog - BAE Standardtaste programmieren (STD)
Synopsis
int bae_defkeyprog( // Status
int; // Tastenzeichen
string; // User Language-Programmname oder
// # gefolgt von Menünummer (STD4)
);
Beschreibung
Die Funktion
bae_defkeyprog ordnet einer Standardtaste das namentlich angegebene
User Language-Programm bzw. die numerisch spezifizierte BAE-Menüfunktion zu. Durch die Spezifikation eines Leerstrings für den Programmnamen kann die aktuelle Zuordnung zurückgesetzt werden. Der Rückgabewert ist ungleich Null, wenn ungültige Parameter übergeben wurden, oder wenn die zurückzusetzende Standardtaste nicht belegt ist.
Siehe auch
Funktionen
bae_getkeyprog,
bae_resetmenuprog.
bae_defmenu - BAE Menüdefinition starten (STD)
Synopsis
int bae_defmenu( // Status
int [0,999]; // Menücode
int [0,999]; // Menübereichscode:
// 1 = Hauptmenü
// 101 = erstes Untermenü
// 102 = zweites Untermenü
// : = : Untermenü
);
Beschreibung
Die Funktion
bae_defmenu startet die Definition eines Standardmenüs im aktuell aktiven BAE-Modul. Der Rückgabewert der Funktion
bae_defmenu ist (-1), wenn ein Fehler aufgetreten ist oder Null andernfalls. Im Anschluss an den Aufruf der Funktion
bae_defmenu sollten durch wiederholten Aufruf der Funktion
bae_defmenutext die einzelnen Menüeinträge definiert werden. Die mit
bae_defmenu eingeleitete Menüdefinition muss durch einen Aufruf der Funktion
bae_endmenu beendet werden. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_defmenuprog,
bae_defmenutext,
bae_endmenu,
bae_redefmenu,
bae_resetmenuprog.
bae_defmenuprog - BAE Menüfunktion programmieren (STD)
Synopsis
int bae_defmenuprog( // Selectionscode or (-1) on error
int [0,999]; // Menünummer
int [0,99]; // Menüzeile
string; // Menütext
string; // User Language-Programmname oder
// # gefolgt von Menünummer (STD4)
int; // Menüeintrag Bearbeitungsschlüssel:
// 8000000h = immer aktivierbar
// 7FFFFFFh = für jeden Elementtyp
// aktivierbar
// sonstige = (kombinierter)
// DDB-Klassen-Schlüssel
);
Beschreibung
Die Funktion
bae_defmenuprog ordnet einem Menüeintrag den spezifizierten Menütext sowie das namentlich angegebene
User Language-Programm bzw. die numerisch spezifizierte BAE-Menüfunktion zu. Die Menünummer gibt die Nummer des Hauptmenüs an, die Menüzeile die Position im zugehörigen Submenü. Durch die Spezifikation eines Leerstrings für den Programmnamen kann die aktuelle Zuordnung zurückgesetzt werden. Der Bearbeitungsschlüssel dient der Konfiguration von sogenannten Ghostmenüs. Hierfür ist ein kodierter Integerwert einzutragen, wie er mit den Funktionen
bae_getclassbitfield oder
bae_getmenubitfield ermittelt bzw. definiert werden kann (im Zweifelsfall empfiehlt sich die Verwendung des Hexadezimalwertes 80000000h, um sicherzustellen, dass die Funktion immer aktivierbar ist). Der Rückgabewert der Funktion
bae_defmenuprog ist ungleich Null, wenn ungültige Parameter übergeben wurden, oder wenn der zurückzusetzende Menüeintrag nicht belegt ist.
Siehe auch
Funktionen
bae_getclassbitfield,
bae_getmenubitfield,
bae_getmenuprog,
bae_getmenutext,
bae_redefmenu,
bae_resetmenuprog.
bae_defmenusel - BAE Menüabfrage Vorauswahl (STD)
Synopsis
void bae_defmenusel(
int [-1,29]; // Menüindex
// oder (-1) für Selektionstextspeicher
);
Beschreibung
Die Funktion
bae_defmenusel setzt die Vorauswahl bzw. Selektionsanzeige für den nächsten Aufruf von
bae_askmenu. Damit lässt sich in Auswahlmenüs die aktuell selektierte Option kennzeichnen. In den BAE-Windowsversionen erfolgt die Selektionsmarkierung durch ein Häkchen, in den Motifversionen durch Grauunterlegung und in den DOS-Versionen bzw. Seitenmenükonfigurationen durch Vorauswahl des über den Funktionsparameter spezifizierten Menüpunkts. Die Anzeige bzw. Auswahl ist nur für den nächsten
bae_askmenu-Aufruf gültig, d.h. nach dem
bae_askmenu-Aufruf ist die Vorauswahl zurügesetzt und ist nach Bedarf mit
bae_defmenusel neu zu setzen.
Siehe auch
Funktion
bae_askmenu.
bae_defmenutext - BAE Menütext definieren (STD)
Synopsis
int bae_defmenutext( // Status
int [0,99]; // Menüzeile
string; // Menütext
int; // Menüeintrag Bearbeitungsschlüssel:
// 8000000h = immer aktivierbar
// 7FFFFFFh = für jeden Elementtyp
// aktivierbar
// sonstige = (kombinierter)
// DDB-Klassen-Schlüssel
);
Beschreibung
Die Funktion
bae_defmenutext kann im Anschluss an den Aufruf einer der Funktionen
bae_defmenu oder
bae_defselmenu wiederholt ausgeführt werden, um an der jeweils angegebenen Menüzeile der aktuellen Menüdefinition den spezifizierten Menütext einzutragen. Ist das erste Zeichen des Menütexts ein Prozentzeichen
(% ), dann wird vor dem zu definierenden Pulldownmenüeintrag eine Menütrennzeile eingefügt. Das kommerzielle Und-Zeichen
& dient der Definition von sogenannten Menübeschleunigern in Pulldownmenüs. Das auf das
& -Zeichen folgende Zeichen definiert dabei eine Taste zur schnellen Selektion des Menüeintrags über die Tastatur. Der Bearbeitungsschlüssel dient der Konfiguration von sogenannten Ghostmenüs. Hierfür ist ein kodierter Integerwert einzutragen, wie er mit den Funktionen
bae_getclassbitfield oder
bae_getmenubitfield ermittelt bzw. definiert werden kann (im Zweifelsfall empfiehlt sich die Verwendung des Hexadezimalwertes 80000000h, um sicherzustellen, dass die Funktion immer aktivierbar ist). Der Funktionsrückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist oder zu Null andernfalls. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_defmenu,
bae_defselmenu,
bae_getclassbitfield,
bae_getmenubitfield,
bae_plainmenutext,
bae_redefmenu,
bae_resetmenuprog.
bae_defselmenu - BAE Submenüdefinition starten (STD)
Synopsis
int bae_defselmenu( // Status
int [0,999]; // Menücode
int [0,999]; // Menübereichscode:
// 1 = Hauptmenü
// 101 = erstes Untermenü
// 102 = zweites Untermenü
// : = : Untermenü
int [0,99]; // Menüstartzeilennummer
);
Beschreibung
Die Funktion
bae_defselmenu startet die Definition eines Untermenüs im aktuell aktiven BAE-Modul. Der Rückgabewert der Funktion
bae_defselmenu ist (-1), wenn ein Fehler aufgetreten ist oder Null andernfalls. Im Anschluss an den Aufruf der Funktion
bae_defselmenu sollten durch wiederholten Aufruf der Funktion
bae_defmenutext die einzelnen Menüeinträge definiert werden. Die mit
bae_defselmenu eingeleitete Menüdefinition muss durch einen Aufruf der Funktion
bae_endmenu beendet werden. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_defmenuprog,
bae_defmenutext,
bae_endmenu,
bae_redefmenu,
bae_resetmenuprog.
bae_dialaddcontrol - BAE Dialogelement definieren (STD)
Synopsis
int bae_dialaddcontrol( // Dialogelementindex oder (-1) im Fehlerfall
int [0,[; // Parametertyp (STD5)
int; // Minimum int -Parameterwert
int; // Maximum int -Parameterwert
int; // Vorgabe int -Parameterwert
double; // Minimum double -Parameterwert
double; // Maximum double -Parameterwert
double; // Vorgabe double -Parameterwert
string; // Vorgabe string -Parameterwert
int [0,[; // Maximallänge string -Parameterwert
double; // Dialogelement X-Position [character-Einheiten]
double; // Dialogelement Y-Position [character-Einheiten]
double; // Dialogelement Dimension [character-Einheiten]
string; // Parameterbezeichnung/Eingabeaufforderung
);
Beschreibung
Die Funktion
bae_dialaddcontrol definiert ein Dialogelement für den angegebenen Parametertyp. Das Dialogelement wird im nachfolgend mit der Funktion
bae_dialaskparams aktivierten Dialog an den angegebenen Koordinaten und in der angegebenen Größe angezeigt und mit dem über den Funktionsparameter für die Parameterbezeichnung spezifierten Text nach Bedarf beschriftet. Die Parameterwertvorgaben für das neue Dialogelement sind über die dem angegebenen Parametertyp entsprechenden Funktionsparameter zu übergeben. Das Funktioneergebnis ergibt sich zu (-1) wenn die Generierung des Dialogelements fehlschlägt. Bei erfolgreicher Generierung des Dialogelements wird ein nichtnegativer Dialogelementindex als Funktionsergebnis zurückgeliefert. Dieser Index ist als Selektionsparameter zur Auswahl des Dialogelements bei nachfolgenden Aufrufen der Funktionen
bae_dialgetdata und
bae_dialsetdata zu verwenden. Mit
bae_dialaddcontrol erzeugte Dialogelemente sind bis zum nächsten Aufruf der Funktion
bae_dialclr gültig bzw. verfügbar.
Siehe auch
Funktionen
bae_dialadvcontrol,
bae_dialaskparams,
bae_dialbmpalloc,
bae_dialboxbufload,
bae_dialboxbufstore,
bae_dialclr,
bae_dialgetdata,
bae_dialsetdata.
bae_dialadvcontrol - Erweitertes BAE-Dialogelement setzen (STD)
Synopsis
int bae_dialadvcontrol( // Returns new dialog control index or (-1) on error
int [0,[; // Parametertyp (STD5)
int; // Minimum int -Parameterwert
int; // Maximum int -Parameterwert
int; // Vorgabe int -Parameterwert
double; // Minimum double -Parameterwert
double; // Maximum double -Parameterwert
double; // Vorgabe double -Parameterwert
string; // Vorgabe string -Parameterwert
int [0,[; // Maximallänge string -Parameterwert
double; // Dialogelement X-Position [character-Einheiten]
double; // Dialogelement Y-Position [character-Einheiten]
double; // Dialogelement Breite [character-Einheiten]
double; // Dialogelement Höhe [character-Einheiten]
string; // Parameterbezeichnung/Eingabeaufforderung
);
Beschreibung
Die Funktion
bae_dialadvcontrol definiert ein erweitertes Dialogelement (mit Elementhöhenangabe) für den angegebenen Parametertyp. Das Dialogelement wird im nachfolgend mit der Funktion
bae_dialaskparams aktivierten Dialog an den angegebenen Koordinaten und in der angegebenen Breite und Höhe angezeigt und mit dem über den Funktionsparameter für die Parameterbezeichnung spezifierten Text nach Bedarf beschriftet. Die Parameterwertvorgaben für das neue Dialogelement sind über die dem angegebenen Parametertyp entsprechenden Funktionsparameter zu übergeben. Das Funktioneergebnis ergibt sich zu (-1) wenn die Generierung des Dialogelements fehlschlägt. Bei erfolgreicher Generierung des Dialogelements wird ein nichtnegativer Dialogelementindex als Funktionsergebnis zurückgeliefert. Dieser Index ist als Selektionsparameter zur Auswahl des Dialogelements bei nachfolgenden Aufrufen der Funktionen
bae_dialgetdata und
bae_dialsetdata zu verwenden. Mit
bae_dialaddcontrol erzeugte Dialogelemente sind bis zum nächsten Aufruf der Funktion
bae_dialclr gültig bzw. verfügbar.
Siehe auch
Funktionen
bae_dialaddcontrol,
bae_dialaskparams,
bae_dialbmpalloc,
bae_dialboxbufload,
bae_dialboxbufstore,
bae_dialclr,
bae_dialgetdata,
bae_dialsetdata.
bae_dialaskcall - BAE Dialog mit Listenboxelement-Callbackfunktion aktivieren (STD)
Synopsis
int bae_dialaskcall( // Positiver Aktionscode, oder
// ( 0) bei Betätigung von , oder
// (-1) bei Betätigung von oder Fehler
string; // Dialogtitel
int [0,3]; // Ausgabeeinheiten für Distanzabfragen:
// 0 = mm
// 1 = Inch
// 2 = mil
// 3 = um
double ]0.0,[; // Dialogbreite [character-Einheiten]
double ]0.0,[; // Dialoghöhe [character-Einheiten]
* int; // Listboxelement-Callbackfunktion
);
Beschreibung
Die Funktion
bae_dialaskcall aktiviert einen Dialog mit den über die Funktion
bae_dialaddcontrol definierten Dialogelementen. In der Titelleiste des Dialogfensters wird der über den ersten Funktionsparameter angegebene Dialogtitel angezeigt. Die Größe des angezeigten Dialogfensters kann über die entsprechenden Funktionsparameter für die Dialogbreite und die Dialoghöhe gesteuert werden. Der Funktionsrückgabewert ergibt sich zu Null wenn die Dialogeingaben über den
-Button bestätigt wurden. Bei Betätigung einer Schaltlfäche mit einem zugewiesenen positiven Aktionscode gibt
bae_dialaskcall den entsprechenden Aktionscode zurück. Im Fehlerfall bzw. bei Betätigung des Buttons
wird der Wert (-1) zurückgegeben. Im Anschluss an einen erfolgreichen Aufruf der Funktion
bae_dialaskcall können die im Dialog gesetzten Parameterwerte mit der Funktion
bae_dialgetdata abgefragt werden. Distanz- bzw. Längenangaben werden dabei automatisch entsprechend dem für die Ausgabeeinheiten spezifizierten Parameter der Funktion
bae_dialaskcall angezeigt bzw. umgerechnet. Der letzte Parameter gestattet die Angabe einer Callbackfunktion die automatisch bei Selektion eines Elements einer im Dialog mit dem Typ
PA_MCALLBACK definierten Listbox aufgerufen wird.
Listboxelement-Callbackfunktion
int callbackfuncname(
int reason, // Grund für Callbackfunktionsaufruf
int boxidx, // Dialog Index
int itemidx, // Listenelement Index
int itemid, // Listenelement Id
string itemstr // Listenelement Text
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert der Callbackfunktion sollte Null sein bei erfolgreicher Abarbeitung. Im Fehlerfall sollte ein Wert ungleich Null zurückgegeben werden.
Siehe auch
Funktionen bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskparams,
bae_dialbmpalloc,
bae_dialboxparam,
bae_dialboxperm,
bae_dialclr,
bae_dialgetdata,
bae_dialsetdata.
bae_dialaskparams - BAE Dialog aktivieren (STD)
Synopsis
int bae_dialaskparams( // Positiver Aktionscode, oder
// ( 0) bei Betätigung von , oder
// (-1) bei Betätigung von oder Fehler
// (-2) bei Dialogdimensionsänderung
string; // Dialogtitel
int [0,3]; // Ausgabeeinheiten für Distanzabfragen:
// 0 = mm
// 1 = Inch
// 2 = mil
// 3 = um
double ]0.0,[; // Dialogbreite [character-Einheiten]
double ]0.0,[; // Dialoghöhe [character-Einheiten]
);
Beschreibung
Die Funktion
bae_dialaskparams aktiviert einen Dialog mit den über die Funktion
bae_dialaddcontrol definierten Dialogelementen. In der Titelleiste des Dialogfensters wird der über den ersten Funktionsparameter angegebene Dialogtitel angezeigt. Die Größe des angezeigten Dialogfensters kann über die entsprechenden Funktionsparameter für die Dialogbreite und die Dialoghöhe gesteuert werden. Der Funktionsrückgabewert ergibt sich zu Null wenn die Dialogeingaben über den
-Button bestätigt wurden. Bei Betätigung einer Schaltlfäche mit einem zugewiesenen positiven Aktionscode gibt
bae_dialaskparams den entsprechenden Aktionscode zurück. Im Fehlerfall bzw. bei Betätigung des Buttons
wird der Wert (-1) zurückgegeben. Bei einer Änderung der Dialoggröße; wird der Wert (-2) zurückgegeben. Im Anschluss an einen erfolgreichen Aufruf der Funktion
bae_dialaskparams können die im Dialog gesetzten Parameterwerte mit der Funktion
bae_dialgetdata abgefragt werden. Distanz- bzw. Längenangaben werden dabei automatisch entsprechend dem für die Ausgabeeinheiten spezifizierten Parameter der Funktion
bae_dialaskparams angezeigt bzw. umgerechnet.
Siehe auch
Funktionen bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskcall,
bae_dialbmpalloc,
bae_dialboxperm,
bae_dialclr,
bae_dialgetdata,
bae_dialsetdata.
bae_dialbmpalloc - BAE Dialogbitmap erzeugen (STD)
Synopsis
int bae_dialbmpalloc( // Nicht-negative Bitmap-Id oder (-1) im Fehlerfall
double ]0.0,[; // Gewünschte Bitmapbreite [character-Einheiten]
double ]0.0,[; // Gewünschte Bitmaphöhe [character-Einheiten]
int [2,31]; // Bitmap-Id
& int; // Erzeugte Bitmapbreite [Pixel]
& int; // Erzeugte Bitmaphöhe [Pixel]
);
Beschreibung
Mit der Funktion
bae_dialbmpalloc können Bitmaps mit den angegebenen Parametern in einer nachfolgend mit
bae_dialaskparams zu aktivierenden Dialogbox angelegt werden. Der Funktionsrückgabewert ist (-1) bei fehlgeschlagener Bitmapgenerierung oder eine nicht-negative Bitmapidentifikationsnummer bei erfolgreicher Bitmapgenerierung (wobei dann auch die tatsächlich erzeugten Bitmapdimensionen über die entsprechenden Parameter zurückgegeben werden). Nach erfolgreicher Generierung der Bitmap kann diese mit der Funktion
bae_popsetarea als Grafikausgabeeinheit für die Funktionen
bae_popdrawtext und
bae_popdrawpoly selektiert werden.
Siehe auch
Funktionen
bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskcall,
bae_dialaskparams,
bae_dialboxperm,
bae_dialclr,
bae_popdrawpoly,
bae_popdrawtext,
bae_popsetarea.
bae_dialboxbufload - BAE Dialogboxdaten aus Buffer holen (STD)
Synopsis
int bae_dialboxbufload( // Status
int [1,[; // Dialogbox Buffer-Id
);
Beschreibung
Die Funktion
bae_dialboxbufload dient dazu, zuvor mit
bae_dialboxbufstore gespeicherte Dialogboxdefinition zu laden. Der Funktionsrückgabewert ist Null wenn der Ladevorgang erfolgreich war oder ungleich Null im Fehlerfall.
Siehe auch
Funktionen bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialboxbufstore,
bae_dialclr.
bae_dialboxbufstore - BAE Dialogboxdaten in Buffer sichern (STD)
Synopsis
int bae_dialboxbufstore( // Dialogbox Id (>0) oder (-1) im Fehlerfall
);
Beschreibung
Die Funktion
bae_dialboxbufstore sichert die aktuellen Dialogboxdefinitionen in einem temporären Speicher. Der Funktionsrückgabewert ist ein positiver Integerwert zur Identifikation des benutzten Zwischenspeichers oder (-1) im Fehlerfall. Diese Identifikationsnummer ist in nachfolgenden
bae_dialboxbufload zum Laden der Dialogboxdaten anzugeben.
Siehe auch
Funktionen bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialboxbufload,
bae_dialclr.
bae_dialboxperm - Eigenständigen BAE Dialog aktivieren (STD)
Synopsis
int bae_dialboxperm( // Positive Dialog-Id, oder
// (-1) wenn Dialoganzeige fehlgeschlagen, oder
// (-2) wenn maximale Dialoganzahl erreicht
string; // Dialogtitel
int [0,3]; // Ausgabeeinheiten für Distanzabfragen:
// 0 = mm
// 1 = Inch
// 2 = mil
// 3 = um
double ]0.0,[; // Dialogbreite [character-Einheiten]
double ]0.0,[; // Dialoghöhe [character-Einheiten]
);
Beschreibung
Die Funktion
bae_dialboxperm aktiviert einen eigenständigen ("modeless") Dialog mit den über die Funktion
bae_dialaddcontrol definierten Dialogelementen. In der Titelleiste des Dialogfensters wird der über den ersten Funktionsparameter angegebene Dialogtitel angezeigt. Die Größe des angezeigten Dialogfensters kann über die entsprechenden Funktionsparameter für die Dialogbreite und die Dialoghöhe gesteuert werden. Bei erfolgreicher Generierung der Dialogbox gibt die Funktion die positive Identifikationsnummer für diesen Dialog zurück.
Im Fehlerfall wird ein negativer Wert zurückgegeben.
Im Anschluss an einen erfolgreichen Aufruf der Funktion
bae_dialboxperm können (nach Aktivierung dieses Dialogs mit
bae_dialsetcurrent) die im Dialog gesetzten Parameterwerte mit der Funktion
bae_dialgetdata abgefragt werden. Distanz- bzw. Längenangaben werden dabei automatisch entsprechend dem für die Ausgabeeinheiten spezifizierten Parameter der Funktion
bae_dialboxperm angezeigt bzw. umgerechnet.
Siehe auch
Funktionen bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskcall,
bae_dialaskparams,
bae_dialbmpalloc,
bae_dialclr,
bae_dialgetdata,
bae_dialsetcurrent,
bae_dialsetdata.
bae_dialclr - BAE Dialogelemente löschen (STD)
Synopsis
int bae_dialclr( // Status
);
Beschreibung
Die Funktion
bae_dialclr löscht alle zuvor mit
bae_dialaddcontrol erzeugten Dialogelemente. Der Funktionsrückgabewert ist ungleich Null, wenn Dialoge in der aktuellen BAE-Benutzeroberfläche nicht unterstützt werden. Es empfiehlt sich, diese Funktion vor der Neudefinition eines Dialogs auszuführen, um eventuell vorhandene Dialogelemente aus zuvor definierten Dialogen zuverlässig zu löschen. Das Funktionsergebnis sollte ebenfalls geprüft werden, damit bei fehlendem Dialogsupport auf andere interaktive Abfragemechanismen ausgewichen werden kann.
Siehe auch
Funktionen
bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskcall,
bae_dialaskparams,
bae_dialbmpalloc,
bae_dialboxbufload,
bae_dialboxbufstore,
bae_dialboxperm,
bae_dialgetdata,
bae_dialsetdata.
bae_dialgetdata - BAE Dialogelementdaten abfragen (STD)
Synopsis
int bae_dialgetdata( // Status
int [0,[; // Dialogelementindex
& int; // Dialogelement integer-Wert
& double; // Dialogelement double-Wert
& string; // Dialogelement string-Wert
);
Beschreibung
Mit der Funktion
bae_dialgetdata können nach einem erfolgreichen Aufruf der Funktion
bae_dialaskparams, die vom Anwender gesetzten Dialogparameterwerte abgefragt werden. Die Auswahl des abzufragenden Dialogelements erfolgt durch Spezifikation des von
bae_dialaddcontrol, gelieferten Dialogelementindex. Die Rückgabe des ermittelten Parameterwertes erfolgt über den Funktionsparameter, der dem Datentyp des abgefragten Dialogelements entspricht. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterabfrage bzw. ungleich Null bei fehlgeschlagener Abfrage.
Siehe auch
Funktionen
bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskparams,
bae_dialclr,
bae_dialsetdata.
bae_dialgettextlen - BAE Dialogtextlänge abfragen (STD)
Synopsis
double bae_dialgettextlen( // Rückgabe Textlänge [character-Einheiten]
int [0,[; // Dialogtexttyp bzw. Zeichensatztyp
string; // Dialogtextzeichenkette
);
Beschreibung
Die Funktion
bae_dialgettextlen ermittelt den Platzbedarf für den angegebenen Dialogtext.
bae_dialsetcurrent - Aktuelle BAE-Dialogbox setzen (STD)
Synopsis
int bae_dialsetcurrent( // Status
int [0,[; // Dialogbox-Id
);
Beschreibung
Die Funktion
bae_dialsetcurrent aktiviert die über die Identifikationsnummer angebebene (eigenständige) Dialogbox für nachfolgende Dialogboxfunktionen. Bei erfolgreicher Dialogauswahl ergibt sich der Funktionsrückgabewert zu Null. Bei fehlgeschlagener Dialogauswahl wird ein Wert ungleich Null zurückgegeben.#
Siehe auch
Funktionen bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskcall,
bae_dialaskparams,
bae_dialbmpalloc,
bae_dialboxperm,
bae_dialclr,
bae_dialgetdata,
bae_dialsetdata.
bae_dialsetdata - BAE Dialogelementdaten setzen (STD)
Synopsis
int bae_dialsetdata( // Status
int [0,[; // Dialogelement Index
int [0,[; // Dialogelement Parametertyp (STD5)
int; // Dialogelement integer-Wert
double; // Dialogelement double-Wert
string; // Dialogelement string-Wert
);
Beschreibung
Die Funktion
bae_dialsetdata dient dazu, Parametertypen bzw. Parameterwerte für zuvor mit
bae_dialaddcontrol definierte Dialogelemente zu setzen. Die Auswahl des zu ändernden Dialogelements erfolgt durch Spezifikation des von
bae_dialaddcontrol, gelieferten Dialogelementindex. Der neue Parameterwert ist über den dem angegebenen Parametertyp entsprechenden Funktionsparameter zu übergeben. Der Funktionsrückgabewert ist Null bei erfolgreicher Änderung des Dialogelements bzw. ungleich Null im Fehlerfall.
Siehe auch
Funktionen
bae_dialaddcontrol,
bae_dialadvcontrol,
bae_dialaskparams,
bae_dialclr,
bae_dialgetdata.
bae_endmainmenu - BAE Hauptmenüdefinition beenden (STD)
Synopsis
int bae_endmainmenu( // Status
);
Beschreibung
Die Funktion
bae_endmainmenu beendet die im aktuell aktiven BAE-Modul mit der Funktion
bae_redefmainmenu eingeleitete Neudefinition des Hauptmenüs. Der Rückgabewert der Funktion
bae_endmainmenu ist (-1), wenn ein Fehler aufgetreten ist oder Null andernfalls. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_redefmainmenu,
bae_resetmenuprog.
bae_endmenu - BAE Menüdefinition beenden (STD)
Synopsis
int bae_endmenu( // Status
);
Beschreibung
Die Funktion
bae_endmenu beendet die im aktuellen BAE-Modul mit einer der Funktionen
bae_defmenu oder
bae_defselmenu eingeleitete Menüdefinition. Der Rückgabewert der Funktion
bae_endmenu ist (-1), wenn ein Fehler aufgetreten ist oder Null andernfalls. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_defmenu,
bae_defselmenu,
bae_resetmenuprog.
bae_fontcharcnt - BAE Anzahl Zeichensatzzeichen (STD)
Synopsis
int bae_fontcharcnt( // Zeichenanzahl
);
Beschreibung
Der Rückgabewert der Funktion
bae_fontcharcnt entspricht der Anzahl der im aktuell geladenen Zeichensatz definierten Zeichen.
bae_fontname - BAE Zeichensatzname abfragen (STD)
Synopsis
string bae_fontname( // Zeichensatzname
);
Beschreibung
Der Rückgabewert der Funktion
bae_fontname entspricht dem Namen des für das aktuell geladene
AutoEngineer Planelement gültigen Zeichensatzes.
bae_getactmenu - BAE aktives Menü abfragen (STD)
Synopsis
int bae_getactmenu( // Menüfunktion (STD4)
);
Beschreibung
Der Rückgabewert der Funktion
bae_getactmenu entspricht der im
AutoEngineer aktuell aktiven Menüfunktion
(STD4) oder (-1) wenn keine Menüfunktion abgearbeitet wird. Diese Funktion wird benötigt für Programme, die auf Tasten gelegt werden.
bae_getanglelock - BAE Winkelfreigabeflag abfragen (STD)
Synopsis
int bae_getanglelock( // Winkelfreigabe Flag (STD9)
);
Beschreibung
Der Rückgabewert der Funktion
bae_getanglelock entspricht dem im
AutoEngineer aktuell eingestellten Wert des Winkelfreigabeflags
(0=Winkel freigeben, 1=Winkel einhalten).
Siehe auch
Funktion
bae_setanglelock.
bae_getbackgrid - BAE Hintergrundraster abfragen (STD)
Synopsis
void bae_getbackgrid(
& double; // X-Hintergrundraster (STD2)
& double; // Y-Hintergrundraster (STD2)
);
Beschreibung
Die Funktion
bae_getbackgrid gibt in den beiden Parametern die Werte des aktuell im
AutoEngineer eingestellten Hintergrundrasters für X- und Y-Richtung zurück. Werte von Null spezifizieren, dass kein Hintergrundraster angezeigt wird.
Siehe auch
Funktion
bae_setbackgrid.
bae_getcasstime - Zeitpunkt des letzten Projektnetzlistenupdates durch Packager/Backannotation ermitteln (STD)
Synopsis
string bae_getcasstime( // Rückgabe Packager-Netzlistenname
& int; // Rückgabe Zeitangabe Sekunde
& int; // Rückgabe Zeitangabe Minute
& int; // Rückgabe Zeitangabe Stunde
& int; // Rückgabe Datumsangabe Tag
& int; // Rückgabe Datumsangabe Monat
& int; // Rückgabe Datumsangabe Jahr
);
Beschreibung
Mit der Funktion
bae_getcasstime kann der Zeitpunkt des zuletzt durch
Packager bzw.
erfolgten Projektnetzlistenupdates ermittelt werden.
Siehe auch
Funktionen bae_getpackdata,
bae_getpacktime.
bae_getclassbitfield - BAE DDB-Klasse Bearbeitungsschlüssel abfragen (STD)
Synopsis
int bae_getclassbitfield( // Rückgabe Bearbeitungsschlüssel
int ]0,[; // DDB-Datenbankklasse (STD1)
);
Beschreibung
Die Funktion
bae_getclassbitfield ermittelt den Bearbeitungsschlüssel, der der spezifizierten DDB-Datenbankklasse zugewiesen ist. Der Rückgabewert der Funktion
bae_getclassbitfield ist (-1) bei Spezifikation einer ungültigen bzw. unbekannten Datenbankklasse.
Der Bearbeitungsschlüssel ist ein kodierter Integerwert, der innerhalb eines BAE-Moduls für jede bearbeitbare DDB-Klasse eindeutig ist. Durch bitweises Verodern dieser Kodierungen können weitere Bearbeitungsschlüssel generiert und anschließend mit einer der Funktionen
bae_defmenutext,
bae_defmenuprog oder
bae_redefmenu selektiv an Menüeinträge zugewiesen werden. Damit können Menüfunktionen so konfiguriert werden, dass sie nur auf bestimmte Datenbankklassen anwendbar sind.
Siehe auch
Funktionen
bae_defmenuprog,
bae_defmenutext,
bae_getmenubitfield,
bae_redefmenu.
bae_getcmdbuf - BAE Kommandohistorie abfragen (STD)
Synopsis
int bae_getcmdbuf( // Status
int [-50,2099]; // Kommandospeicherindex 0 bis 49
// oder 1000 bis 1099 für Undo-Einträge 1 bis 100
// oder 2000 bis 2099 für Redo-Einträge 1 bis 100
// oder negativer Wert für Meldungshistorie
& string; // Kommando- bzw. Kommandosequenzzeichenkette
& string; // Kommandoanzeigetext
);
Beschreibung
Die Funktion
bae_getcmdbuf dient dazu, die Kommandohistorie für das aktuelle Kontextmenü abzufragen. Dies ist die Liste der zuletzt über die rechte Maustaste aktivierten Kommandos. Der Kommandospeicherindex gibt die Position des abzufragenden Kommandos an (Null ist das zuletzt ausgeführte Kommando). Die Kommando- bzw. Kommandosequenzzeichenkette und der Kommandoanzeigetext (entsprechend der Titelleistenanzeige) werden über den zweiten und dritten Funktionsparameter an den Aufrufer zurückgegeben. Der Funktionsrückgabewert ist 1 wenn die Abfrage erfolgreich war oder Null wenn ein ungültiger Kommandospeicherindex angegeben wurde.
Siehe auch
Funktion bae_storecmdbuf.
bae_getcolor - BAE Farbwert abfragen (STD)
Synopsis
int bae_getcolor( // Farbwert (STD18)
int; // Anzeigeelementtyp (SCM1|LAY9|ICD9)
);
Beschreibung
Die Funktion
bae_getcolor ermittelt den Farbwert für den angegebenen Anzeigeelementtyp. Der Wert für den Anzeigeelementtyp muss entsprechend der aktuellen Interpreterumgebung gesetzt sein.
Siehe auch
Funktion
bae_setcolor.
bae_getcoorddisp - BAE Koordinatenanzeige abfragen (STD)
Synopsis
int bae_getcoorddisp( // Koordinatenanzeigemodus (STD7)
);
Beschreibung
Der Rückgabewert der Funktion
bae_getcoorddisp entspricht dem im AutoEngineer aktuell eingestellten Koordinatenanzeigemodus, wobei der Wert 0 für mm-Einheiten (bzw. Mikrometer-Einheiten im
IC-Design System) und der Wert 1 für Inch-Einheiten (bzw. mil-Einheiten im
IC-Design System) steht.
Siehe auch
Funktion
bae_setcoorddisp.
bae_getdblpar - BAE Doubleparameter abfragen (STD)
Synopsis
int bae_getdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = maximale Dialogboxbreite
// 1 = maximale Dialogboxhöhe
// 2 = Grafikanzeige Zoomfaktor
// 3 = Gummibandeckradius (STD2)
// 4 = Gummiband X-Vektorkoordinate (STD2)
// 5 = Gummiband Y-Vektorkoordinate (STD2)
// 6 = Fixierte X-Pickkoordinate (STD2)
// 7 = Fixierte Y-Pickkoordinate (STD2)
// 8 = Dialogboxbreite
// 9 = Dialogboxhöhe
// 10 = Bildschirmpickbereich (STD2)
// 11 = Elementauswahl relativer Vorschaubereich [0.05, 0.95]
// 12 = Dialogbox X-Einheiten Pixel
// 13 = Dialogbox Y-Einheiten Pixel
& double; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
bae_getdblpar dient der Abfrage von im
Bartels AutoEngineer gesetzten Parametern vom Typ
double . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen bae_getintpar,
bae_getstrpar,
bae_setdblpar,
bae_setintpar,
bae_setstrpar.
bae_getfuncprog - BAE Funktionstastenprogrammierung abfragen (STD)
Synopsis
string bae_getfuncprog( // Programmname
int [1,128]; // Funktionstastennummer
);
Beschreibung
Die Funktion
bae_getfuncprog ermittelt den Namen des
User Language-Programms, welches der angegebenen Standardtaste zugewiesen ist. Ist der Taste eine BAE-Menüfunktion zugewiesen, dann wird die entsprechende BAE-Menüfunktionsnummer mit einem vorangestellten Hashzeichen
(# ) zurückgegeben. Der Funktionsrückgabewert ist ein Leerstring, wenn keine Zuweisung für die Funktionstaste definiert ist bzw. wenn eine ungültige Funktionstastennummer spezifiziert wurde.
Siehe auch
Funktionen
bae_deffuncprog,
bae_resetmenuprog.
bae_getgridlock - BAE Rasterfreigabeflag abfragen (STD)
Synopsis
int bae_getgridlock( // Rasterfreigabe Flag (STD8)
);
Beschreibung
Der Rückgabewert der Funktion
bae_getgridlock entspricht dem im
AutoEngineer aktuell eingestellten Wert des Rasterfreigabeflags (0=Raster freigeben, 1=Raster einhalten).
Siehe auch
Funktion
bae_setgridlock.
bae_getgridmode - BAE Rasterabhängigkeitsmodus abfragen (STD)
Synopsis
int bae_getgridmode( // Rückgabe Modus für automatische Rastereinstellung:
// 0x01: Eingaberaster = 0.25 × Hintergrundraster
// 0x02: Eingaberaster = 0.50 × Hintergrundraster
// 0x04: Eingaberaster = 1.00 × Hintergrundraster
// 0x08: Eingaberaster = 2.00 × Hintergrundraster
// 0x10: Hintergrundraster = 0.25 × Eingaberaster
// 0x20: Hintergrundraster = 0.50 × Eingaberaster
// 0x40: Hintergrundraster = 1.00 × Eingaberaster
// 0x80: Hintergrundraster = 2.00 × Eingaberaster
);
Beschreibung
Die Funktion
bae_getgridmode dient der Abfrage des aktuell aktiven BAE Rasterabhängigkeitsmodus.
Siehe auch
Funktion
bae_setgridmode.
bae_getinpgrid - BAE Eingaberaster abfragen (STD)
Synopsis
void bae_getinpgrid(
& double; // X-Eingaberaster (STD2)
& double; // Y-Eingaberaster (STD2)
);
Beschreibung
Die Funktion
bae_getinpgrid gibt in den beiden Parametern die Werte des aktuell im
AutoEngineer eingestellten Eingaberasters für X- und Y-Richtung zurück.
Siehe auch
Funktion
bae_setinpgrid.
bae_getintpar - BAE Integerparameter abfragen (STD)
Synopsis
int bae_getintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Koordinateneingaben Bereichsprüfung:
// 0 = Bereichsprüfung aktiviert
// 1 = Bereichsprüfung deaktiviert
// 1 = Modulwechsel Autosavemodus:
// 0 = Autosave ohne Benutzerabfrage
// 1 = Benutzerabfrage vor Autosave
// 2 = Anzeigedeaktivierungsmodus:
// 0 = Anzeige aktiviert
// 1 = Anzeige deaktiviert
// 3 = Benutzeroberfläche Menü-/Mausmodus:
// 0 = Seitenmenü-Konfiguration
// 1 = Pulldownmenü, LMB-Kontext
// 2 = Pulldwonmenü, RMB-Kontext
// 4 = Arbeitsbereichstext Farbauswahl:
// 0 = Standardfarben
// 1 = invertierte Standardfarben
// 2 = arbeitsbereichsspezifische Farben
// 5 = Element Laden Anzeigemodus:
// 0 = Übersichtsanzeige nach Laden
// 1 = Anzeige aktiviert durch bae_load
// 6 = Dateiauswahl Dialogmodus:
// 0 = alte BAE-Dateiauswahl
// 1 = Explorer Standardansicht
// 2 = Explorer Listenansicht
// 3 = Explorer Detailansicht
// 4 = Exploreransicht kleine Piktogramme
// 5 = Exploreransicht große Piktogramme
// 6 = Standard-Stil und Standard-Größe benutzen
// 7 = Elementauswahl Dialogmodus:
// 0 = nur Name anzeigen
// 1 = Name und Datum anzeigen
// 8 = Elementauswahl Sortierfunktion:
// 0|1 = Sortierung nach Name
// 2 = Sortierung numerisch
// 3 = Sortierung nach Datum
// 9 = Anzeigemodus Platzierung:
// 0 = platzierte Elemente sichtbar
// 1 = unplatzierte Elemente sichtbar
// 10 = Letzter Dateisystemfehler
// 11 = Kommandohistorie Modus:
// 0 = Kommandohistorie aktiviert
// 1 = Kommandohistorie deaktiviert
// 12 = Popupmenü Mauswarpmodus:
// 0 = Kein Popupmenü Mauswarp
// 1 = Popupmenü Mauswarp erstes Element
// 2 = Popupmenü Mauswarp vorselektiertes Element
// +4 = Mauspositionsrestore-Warp
// +8 = Elementpickpositions-Warp
// 13 = Sicherungsmodus:
// 0 = Sicherung aktiviert
// 1 = Sicherung deaktiviert
// 14 = Minimalgröße Mausrechteck:
// ]0,[ = minimale Mausrechteckgröße
// 15 = Mausinfo-Anzeigemodus:
// 0 = Tooltip-Infoanzeige
// 1 = Kontinuierliche Fadenkreuz-Infoanzeige
// 2 = Fadenkreuz-Infoanzeige mit Strg
// 16 = Nächste Dialogbox-Identifikationsnummer
// 17 = Zuletzt erzeugte Tooltipidentifikationsnummer
// 18 = Polygonverwurfsanzahl
// 19 = Polygonprüfungsabschaltung:
// 0 = Polygonprüfung aktiv
// 1 = Polygonprüfung abgeschaltet
// 20 = Kursortastenrastermodus:
// 0 = Eingaberaster
// 1 = Pixelraster
// 21 = Flag - Element nicht gesichert
// 22 = Elementbatchlademodus:
// 0 = keinen Batch laden
// 1 = Batch laden
// 2 = Batch laden, Zoomfenster restaurieren
// 23 = Rasterlinienanzeige:
// 0 = Punktraster
// 1 = Linienraster
// 24 = Flag - Spiegelungsanzeige
// 25 = Flag - Eingaberasteranzeige
// 26 = Mausfunktionswiederholungsmodus:
// 0 = Menüfunktion wiederholen
// +1 = Tastenfunktion wiederholen
// +2 = Kontextmenüfunktion wiederholen
// 27 = Maximale Undo-Redo-Anzahl
// 28 = Menübaumansichtsmodus:
// 0 = Kein Menübaumfenster
// 1 = Menübaumfenster links
// 2 = Menübaumfenster rechts
// 29 = Menübaumansicht Pixelbreite
// 30 = Flag - Meldungshistorie deaktiviert
// 31 = Elementlademeldungsmodus:
// 0 = Standardmeldung
// 1 = Benutzerspezifische Meldung
// 2 = Benutzerspezifische Fehlermeldung
// 32 = Pickmarkeranzeigemodus:
// 0 = Kreismarker
// 1 = Diamantmarker
// 33 = Mausdrag-Status:
// 0 = Kein Mausdrag
// 1 = Mausdragangeforderung
// 2 = Mausdrag durchgeführt
// 3 = Mausdragfreigabeanforderung
// 34 = Flag - Menüfunktionswiederholung angefordert
// 35 = Flag - Funktion abgebrochen
// 36 = Flag - Planauswahlvorschau
// 37 = Dateizugriffsfehler-Anzeigemodus:
// 0 = Nur Statuszeilenanzeige
// 1 = Bestätigungsabfrage
// 38 = Elementauswahl-Referenzanzeigemodus:
// 0 = Projektdatei-Referenzen anzeigen
// 1 = Bibliotheksdatei-Referenzen anzeigen
// 39 = Maus-Doppelklick-Modus:
// 0 = Doppelklick und Selektion von 0 an rechte Maustaste zuweisen
// 1 = Doppelklick ignorieren
// 2 = Doppelklick an rechte Maustaste zuweisen
// 40 = Mauspick-Doppelklick-Modus:
// 0 = Doppelklick an rechte Maustaste zuweisen
// 1 = Doppelklick ignorieren
// 41 = Flags - Dialogelementunterstützung:
// 0 = Keine Dialogelemente unterstützt
// |1 = Dialogbasiselemente unterstützt
// |2 = Listenanzeige unterstützt
// |4 = Fortschittsanzeige unterstützt
// |8 = Werkzeugleistenschaltfläche unterstützt
// 42 = Fortschrittsanzeigemodus:
// 0 = Keine Fortschrittsanzeige
// 1 = Fortschrittsanzeige
// 43 = Abbruchanforderungsflag für Fortschrittsanzeige
// 44 = Flag - Mittlere Maustaste deaktiviert
// 45 = Anzahl aktueller Undo-Elemente
// 46 = Flag - Datei Drag-und-Drop Operation
// 47 = Flag - Automatische BAE-Fensteraktivierung
// 48 = Anzahl aktive Menüfunktionen
// 49 = Anzahl Punkte in interner Polygonliste
// 50 = Priorit&auuml;t alternative Konfigurationsdatei
// 51 = Sicherungsmodus für Dialogposition:
// 0 = Absolutkoordinaten specihern
// 1 = Hauptfenster-Relativkoordinaten speichern
// 2 = Hauptfenster-Monitorabsolutkoordinaten speichern
// 52 = Message-Box Default-Button-Index:
// (-1) = Kein Default (Abbruch oder No
// 0-2 = Default-Button-Index
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
bae_getintpar dient der Abfrage von im
Bartels AutoEngineer gesetzten Integerparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen bae_getdblpar,
bae_getstrpar,
bae_setdblpar,
bae_setintpar,
bae_setstrpar.
bae_getinvcolor - BAE Farbinvertierungsmodus abfragen (STD)
Synopsis
int bae_getinvcolor( // Rückgabe Farbeinvertierungsmodus
);
Beschreibung
Die Funktion
bae_getinvcolor überprüft, ob die BAE-Systemfarbpalette "invertiert" ist. Die Systemfarbpalette wird als invertiert betrachtet, wenn die dunkelste Farbe in der aktuell (über die Datei
bae.col im BAE-Programmverzeichnis) definierten Systemfarbpalette nicht schwarz ist. Die Funktion gibt einen Wert ungleich Null zurück, wenn die BAE-Systemfarbpalette invertiert ist; andernfalls ist der Funktionsrückgabewert Null.
bae_getmenubitfield - BAE Menüfunktion Bearbeitungschlüssel abfragen (STD)
Synopsis
int bae_getmenubitfield( // Rückgabe Bearbeitungsschlüssel
int [0,999]; // Menücode
int [0,99]; // Menüzeile
);
Beschreibung
Die Funktion
bae_getmenubitfield ermittelt den Bearbeitungsschlüssel, der dem angegebenen Menüeintrag zugewiesen ist. Die Spezifikation des Menüeintrags erfolgt durch die Angabe der Hauptmenünummer über den Parameter für den Menücode sowie durch die Angabe der Menüzeile im zugehörigen Untermenü. Der Rückgabewert der Funktion
bae_getmenubitfield ist (-1), wenn die Spezifikation des Menüeintrags ig ist.
Der Bearbeitungsschlüssel ist ein kodierter Integerwert, der angibt, für welche aktuell geladenen Elemente die Menüfunktion aufgerufen werden kann. Mit Hilfe dieses Schlüssels können Menüeinträge im
Bartels AutoEngineer in Abhängigkeit vom Typ des aktuell geladenen Elements wahlweise aktiviert bzw. deaktiviert werden. Dieser Mechanismus kommt insbesondere bei der Konfiguration der sogenannten Ghostmenüs in den Windows-Versionen der BAE-Software zur Anwendung. Ist der Bearbeitungschlüssel mit dem Hexadezimalwert 80000000h kodiert, dann kann die entsprechende Funktion immer (d.h. auch wenn kein Element geladen ist) aktiviert werden. Der Hexadezimalwert 7FFFFFFFh gibt an, dass die Funktion für jeden beliebigen geladenen Elementtyp aufgerufen werden kann. Weitere Kodierungen sind in den einzelnen BAE-Modulen in Abhängigkeit von den bearbeitbaren DDB-Datenbankklassen definiert. Die Kodierung für jede einzelne Datenbankklasse kann mit der Funktion
bae_getclassbitfield ermittelt werden. Durch bitweises Verodern dieser Kodierungen können weitere Bearbeitungsschlüssel generiert und anschließend mit einer der Funktionen
bae_defmenutext,
bae_defmenuprog oder
bae_redefmenu selektiv an Menüeinträge zugewiesen werden. Damit ist die Konfiguration benutzerdefinierter Ghostmenüs möglich.
Siehe auch
Funktionen
bae_defmenuprog,
bae_defmenutext,
bae_getclassbitfield,
bae_redefmenu.
bae_getkeyprog - BAE Standardtastenprogrammierung abfragen (STD)
Synopsis
string bae_getkeyprog( // Programmname
int; // Tastenzeichen
);
Beschreibung
Die Funktion
bae_getkeyprog ermittelt den Namen des
User Language-Programms, welches der angegebenen Standardtaste zugewiesen ist. Ist der Taste eine BAE-Menüfunktion zugewiesen, dann wird die entsprechende BAE-Menüfunktionsnummer mit einem vorangestellten Hashzeichen
(# ) zurückgegeben. Der Funktionsrückgabewert ist ein Leerstring, wenn keine Zuweisung für die Standardtaste definiert ist bzw. wenn ein iges Tastenzeichen spezifiziert wurde.
Siehe auch
Funktionen
bae_defkeyprog,
bae_resetmenuprog.
bae_getmenuitem - BAE Menüeintrag abfragen (STD)
Synopsis
int bae_getmenuitem( // Status
& int; // Menücode
& string; // Menütext(e)
& string; // Menükommando
);
Beschreibung
Die Funktion
bae_getmenuitem ermöglicht die Anwahl einer BAE-Menüfunktion zur Abfrage der Eigenschaften des selektierten Menüeintrags. Im Menücodeparameter wird der Aufrufcode für den selektierten Menüeintrag zurückgeliefert. Im Parameter für den Menütext werden getrennt durch
-> die zur Selektion des Menüeintrags angewählten Menütext(e) der hierarchischen Menüstruktur zurückgeliefert. Im Parameter für das Menükommando wird die dem Menüeintrag zugewiesene Menükommandosequenz zurückgeliefert. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage, oder ungleich Null bei fehlgeschlagener bzw. abgebrochener Abfrage.
Siehe auch
Funktionen
bae_callmenu,
bae_defmenuprog,
bae_getmenuprog,
bae_getmenutext.
bae_getmenuprog - BAE Menüprogrammierung abfragen (STD)
Synopsis
string bae_getmenuprog( // Programmname
int [0,999]; // Menücode
int [0,99]; // Menüzeile
);
Beschreibung
Die Funktion
bae_getmenuprog ermittelt den Namen des
User Language-Programms, welches dem angegebenen Menüeintrag zugewiesen ist. Ist dem Menüeintrag eine BAE-Menüfunktion zugewiesen, dann wird die entsprechende BAE-Menüfunktionsnummer mit einem vorangestellten Hashzeichen
(# ) zurückgegeben. Der Menücode gibt die Nummer des Hauptmenüs an, die Menüzeile die Position im zugehörigen Submenü. Der Funktionsrückgabewert ist ein Leerstring, wenn keine Zuweisung für den Menüeintrag definiert ist bzw. wenn die Spezifikation des Menüeintrags ig ist.
Siehe auch
Funktionen
bae_defmenuprog,
bae_getmenuitem,
bae_getmenutext,
bae_resetmenuprog.
bae_getmenutext - BAE Menütext abfragen (STD)
Synopsis
string bae_getmenutext( // Menütext
int [0,999]; // Menücode
int [0,99]; // Menüzeile
);
Beschreibung
Die Funktion
bae_getmenutext ermittelt den Anzeigetext, der dem angegebenen Menüeintrag zugewiesen ist. Der Menücode gibt die Nummer des Hauptmenüs an, die Menüzeile die Position im zugehörigen Submenü. Der Funktionsrückgabewert ist ein Leerstring, wenn die Spezifikation des Menüeintrags ig ist bzw. der spezifizierte Menüeintrag nicht existiert.
Siehe auch
Funktionen
bae_defmenuprog,
bae_getmenuitem,
bae_getmenuprog,
bae_plainmenutext,
bae_resetmenuprog.
bae_getmoduleid - BAE Modulbezeichnung abfragen (STD)
Synopsis
string bae_getmoduleid( // Modulbezeichnung
);
Beschreibung
Die Funktion
bae_getmoduleid ermittelt die (mit
bae_setmoduleid gesetzte) Bezeichnung des aktuell aktiven BAE-Programmmoduls.
Siehe auch
Funktion
bae_setmoduleid.
bae_getmsg - BAE HighEnd Message empfangen (STD/HighEnd)
Synopsis
string bae_getmsg( // Rückgabe Messagestring
);
Beschreibung
Die Funktion
bae_getmsg ist nur in
BAE HighEnd verfügbar. Mit
bae_getmsg können Nachrichten empfangen werden, die zuvor mit der Funktion
bae_sendmsg an die anderen Module eine
BAE HighEnd-Sitzung abgesendet wurden. Zu einer Sitzung gehören alle Programminstanzen, die ausgehend von einem BAE-Aufruf über die Funktion
aus dem BAE-Hauptmenü oder dem
Schaltplaneditor gestartet wurden. In den addressierten Modulen wird bei Ankunft einer Nachricht automatisch das
User Language-Programm bae_msg gestartet. Ist
bae_msg nicht verfügbar, dann erfolgt der Aufruf eines
User Language-Programms mit modulspezifischem Namen
(scm_msg im Schaltplaneditor,
ged_msg im Layouteditor,
ar_msg im Autorouter, etc.). Das automatisch gestartete
User Language-Programm muss die Nachrichtmit der Funktion
bae_getmsg entgegennehmen. Die Nachricht steht nur während der Dauer dieses Programmaufrufs zur Verfügung. Wird die Nachricht von dem
*_msg-Programm nicht angenommen, dann geht sie verloren. Der Inhalt der Nachricht kann dazu benutzt werden, eine spezielle Aktion im empfangenden Modul auszulösen.
Siehe auch
Funktion
bae_sendmsg.
bae_getpackdata - Daten des letzten Projekt-Packagerlaufs abfragen (STD)
Synopsis
int bae_getpackdata( // Status
string; // Projektdateiname
& string; // Rückgabe Layoutbibliotheksdatei
& string; // Rückgabe Netzlistenname
);
Beschreibung
Die Funktion
bae_getpackdata ermittelt die Parameter Layoutbibliotheksdateiname und Netzlistename des für die angebene Projektdatei zuletzt durchgeführten
Packager-Laufs. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder ungleich Null wenn die Parameterdaten nicht gefunden werden konnten.
Siehe auch
Funktionen bae_getcasstime,
bae_getpacktime.
bae_getpacktime - Datum/Uhrzeit des letzten Projekt-Packagerlaufs abfragen (STD)
Synopsis
int bae_getpacktime( // Status
string; // Projektdateiname
& int; // Rückgabe Zeitangabe Sekunde
& int; // Rückgabe Zeitangabe Minute
& int; // Rückgabe Zeitangabe Stunde
& int; // Rückgabe Datumsangabe Tag
& int; // Rückgabe Datumsangabe Monat
& int; // Rückgabe Datumsangabe Jahr
);
Beschreibung
Die Funktion
bae_getpacktime ermittelt das Datum und die Uhrzeit des für die angebene Projektdatei zuletzt durchgeführten
Packager-Laufs. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder ungleich Null wenn die Zeitangaben nicht ermittelt werden konnten.
Siehe auch
Funktionen bae_getcasstime,
bae_getpackdata.
bae_getpolyrange - Bereich der internen BAE-Polygonpunktliste abfragen (STD)
Synopsis
int bae_getpolyrange( // Status
& double; // Rückgabe linke Polygongrenze
& double; // Rückgabe untere Polygongrenze
& double; // Rückgabe rechte Polygongrenze
& double; // Rückgabe obere Polygongrenze
);
Beschreibung
Die Funktion
bae_getpolyrange dient der Abfrage der Ausdehnung bzw. Begrenzung des mit
bae_storepoint definierten internen Polypons. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder ungleich Null im Fehlerfall.
Siehe auch
Funktionen
bae_clearpoints,
bae_storepoint.
bae_getstrpar - BAE Stringparameter abfragen (STD)
Synopsis
int bae_getstrpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Aktueller Element-Kommentartext
// 1 = Aktuelle Element-Spezifikation
// 2 = Letzte Dateizugriffsfehler-Datei
// 3 = Letztes Dateizugriffsfehler-Element
// [ 4 = Systemparameter - kein Lesezugriff ]
// [ 5 = Systemparameter - kein Lesezugriff ]
// 6 = zuletzt geladene Farbtabelle
// 7 = Menütext der zuletzt aufgerufenen Funktion
// 8 = Aktueller Menüitemelementtext
// 9 = Aktuelle benutzerspezifische Elementlademeldung
// 10 = Zwischenablage-Textstring
// 11 = Modulaufruf nächstes Dateiargument
// 12 = Modulaufruf nächstes Elementargument
// 13 = Modulaufruf nächstes Kommando-/Typargument
// 14 = Letzter Ausgabedateiname
// 15 = Hostname
// [ 16 = Systemparameter - kein Lesezugriff ]
// 17 = Datenverzeichnis für alle Benutzer
// 18 = Datenverzeichnis für aktuellen Benutzer
// 19 = Alternatives Verzeichnis für Konfigrationsdaten
// 20 = Spalte lokale Daten
// 21 = Spalt globale Daten
& string; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
bae_getstrpar dient der Abfrage von im
Bartels AutoEngineer gesetzten Stringparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen bae_getdblpar,
bae_getintpar,
bae_setdblpar,
bae_setintpar,
bae_setstrpar.
bae_inittextscreen - BAE Textbildschirm initialisieren/löschen (STD)
Synopsis
void bae_inittextscreen(
);
Beschreibung
Die Funktion
bae_inittextscreen löscht den Grafikarbeitsbereich für die Textausgabe. Der Textausgabecursor wird auf die linke obere Ecke gesetzt.
bae_inpoint - BAE Eingabe Punkt mit Maus (STD)
Synopsis
int bae_inpoint( // Status
double; // Start X-Koordinate (STD2)
double; // Start Y-Koordinate (STD2)
& double; // Rückgabe X-Koordinate (STD2)
& double; // Rückgabe Y-Koordinate (STD2)
int; // Zeichenmodus:
// 0 = keine Anzeige
// 1 = dynamische Rahmenanzeige
// 2 = dynamische Linienanzeige
// 3 = dynamische Kreisanzeige
// 4 = Gummibandabstandsanzeige
// 5 = Gummibandzoomfensteranzeige
// 6 = Gummibandquadratanzeige
// 7 = Gummibandquadratanzeige zentriert
// 8 = Gummibandfensteranzeige zentriert
// 9 = Gummibandpolygonlinienanzeige
// 10 = Gummibandumrandungspolygonanzeigey
// 11 = Gummibandkreisanzeige zentriert
// 12 = Gummiband fixiert
// 13 = Gummiband zentriertes Zoomfenster
// 14 = Keine Fensteranzeige, RMB unmittelbarer Abbruch
// 15 = Anzeige mit festem Offset
);
Beschreibung
Die Funktion
bae_inpoint dient zur Wahl von Koordinaten mit der Maus. Die beiden Startkoordinaten definieren den Ausgangspunkt für
Kommandos. In den beiden Rückgabeparametern wird das mit Maustastendruck gewählte Koordinatenpaar zurückgegeben. Ist der Zeichenmodus 1, dann wird bei der Koordinatenwahl dynamisch ein Rahmen von den Startkoordinaten zu den aktuellen Mauskoordinaten gezeichnet.
Ist der Zeichenmodus 2, dann wird während der Koordinatenwahl dynamisch eine Linie von den Startkoordinaten zu den aktuellen Mauskoordinaten gezeichnet. Der Rückgabewert ist (-1) beim Abbruch der Eingabe oder Null wenn ein Koordinatenpaar gewählt wurde.
Siehe auch
Funktion
bae_inpointmenu.
bae_inpointmenu - BAE Eingabe Punkt mit Maus und Callbackfunktion für rechte Maustaste (STD)
Synopsis
int bae_inpointmenu( // Status
double; // Start X-Koordinate (STD2)
double; // Start Y-Koordinate (STD2)
& double; // Rückgabe X-Koordinate (STD2)
& double; // Rückgabe Y-Koordinate (STD2)
int; // Zeichenmodus:
// 0 = keine Anzeige
// 1 = dynamische Rahmenanzeige
// 2 = dynamische Linienanzeige
// 3 = dynamische Kreisanzeige
// 4 = Gummibandabstandsanzeige
// 5 = Gummibandzoomfensteranzeige
// 6 = Gummibandquadratanzeige
// 7 = Gummibandquadratanzeige zentriert
// 8 = Gummibandfensteranzeige zentriert
// 9 = Gummibandpolygonlinienanzeige
// 10 = Gummibandumrandungspolygonanzeigey
// 11 = Gummibandkreisanzeige zentriert
// 12 = Gummiband fixiert
// 13 = Gummiband zentriertes Zoomfenster
// 14 = nicht benutzt
// 15 = Anzeige mit festem Offset
* int; // Callbackfunktion für rechte Maustaste
);
Beschreibung
Die Funktion
bae_inpointmenu dient zur Wahl von Koordinaten mit der Maus. Die beiden Startkoordinaten definieren den Ausgangspunkt für
Kommandos. In den beiden Rückgabeparametern wird das mit Maustastendruck gewählte Koordinatenpaar zurückgegeben. Ist der Zeichenmodus 1, dann wird während der Koordinatenwahl dynamisch ein Rahmen von den Startkoordinaten zu den aktuellen Mauskoordinaten gezeichnet. Ist der Zeichenmodus 2, dann wird während der Koordinatenwahl dynamisch eine Linie von den Startkoordinaten zu den aktuellen Mauskoordinaten gezeichnet. Der letzte Funktionsparameter ermöglicht die Spezifikation einer Callbackfunktion zur Aktivierung beim Drücken der rechten Maustasten (z.B. zur Anzeige spezifischer Optionsmenüs). Der Rückgabewert ist (-1) beim Abbruch der Eingabe oder Null wenn ein Koordinatenpaar gewählt wurde.
Definition der Callkbackfunktion für die rechte Maustaste
int callbackfunction( // Status
double x // Aktuelle Eingabe-X-Koordinate
double y // Aktuelle Eingabe-Y-Koordinate
)
{
// Verarbeitungsprogramm
:
return(status);
}
Der Rückgabewert der Callbackfunktion sollte 0 sein zur Signalisierung der Komplettierung der Eingabe, 1 wenn die Eingabe fortzusetzen ist, oder ein beliebiger anderer Wert bei Abbruch der Eingabe. Bei Komplettierung der Eingabe (Rückgabewert 0) können geänderte Parameterwerte für die X- und Y-Koordinaten zurückgegeben werden.
Siehe auch
Funktion
bae_inpoint.
bae_language - BAE Benutzeroberfläche Landessprache abfragen (STD)
Synopsis
string bae_language( // Rückgabe Landessprachencode:
// DE = deutsch
// EN = englisch
// für künftige Anwendungen
// FR = französisch
// IT = italienisch
// SP = spanisch
// SV = schwedisch
);
Beschreibung
Die Funktion
bae_language gibt einen Code zur Identifikation der in der BAE-Benutzeroberfläche verwendeten Landessprache zurück. Diese Information kann dazu verwendet werden, Meldungen und Menüs dynamisch an die jeweilige Landessprache anzupassen.
bae_loadcoltab - BAE Farbtabelle laden (STD)
Synopsis
int bae_loadcoltab( // Status
string; // Farbtabellenname
);
Beschreibung
Mit der Funktion
bae_loadcoltab wird die in der übergebenen Zeichenkette angegebene Farbtabelle geladen. Der Rückgabewert ist ungleich Null, wenn der Ladevorgang nicht erfolgreich war.
bae_loadelem - BAE Element laden (STD)
Synopsis
int bae_loadelem( // Status
string; // Elementdateiname
string; // Elementname
int [100,[; // Elementklasse (STD1)
);
Beschreibung
Die Funktion
bae_loadelem lädt im
AutoEngineerr ein Planelement in den Speicher. Im
Schaltplaneditor sind die möglichen Werte für die Klassenangabe gegeben durch 800, 801, 802 oder 803 für SCM Stromlaufblatt, SCM Symbol, SCM Marker oder SCM Label. In den Layoutmodulen sind die zulässigen Werte für die Klassenangabe gegeben durch 100, 101, 102 oder 103 für Layout, Layout Bauteil, Layout Padstack oder Layout Pad. Im
IC-Design System sind die zulässigen Werte für die Klassenangabe gegeben durch 1000, 1001 oder 1002 für IC-Layout, IC-Zelle oder IC-Pin. Der Rückgabewert ist Null, wenn keine Fehler aufgetreten sind, (-2) bei ungültiger Elementklassenangabe, (-1) bei Dateizugriffsfehlern, 1 wenn der Zeichensatz nicht geladen werden konnte, 2 wenn einzelne referenzierte Makros (Bibliothekselemente) nicht geladen werden konnten, oder 3 bei unplatzierten Bauteilen bzw. fehlenden Pins, d.h. wenn auf einem Layoutplan platzierte Gehäusetypen nicht mit den in der Netzliste eingetragenen Typen übereinstimmen.
Bei Angabe der Elementklasse 100 für Layouts kann wahlweise ein Leerstring für den Elementnamen übergeben werden. In diesem Fall wird automatisch das Layoutelement mit dem im System eingestellten Default-Layoutelementnamen geladen (siehe hierzu Kommando
LAYDEFELEMENT für
bsetup).
Beim Laden von Stromlaufblättern in den
Schaltplaneditor führt
bae_loadelem automatisch eine
Backannotation durch sofern dies aufgrund vorheriger Netzlistenmodifikationen im Layout erforderlich ist.
Warnung
Diese Funktion ändert sämtliche im Speicher vorhandenen Elementdaten und damit die Gültigkeit der Indexvariablen und sollte daher nur außerhalb jeglicher Programmblöcke mit Zugriff auf Indexvariablen (forall-Schleifen) aufgerufen werden. Vor Aufruf dieser Funktion sollte auf jeden Fall mit
bae_plannotsaved nachgeprüft werden, ob das aktuelle Element mit allen Änderungen gesichert ist, da ein
nach
bae_loadelem nicht möglich ist.
bae_loadfont - BAE Zeichensatz laden (STD)
Synopsis
int bae_loadfont( // Status
string; // Zeichensatzname
);
Beschreibung
Mit der Funktion
bae_loadfont wird der Zeichensatz mit dem in der übergebenen Zeichenkette spezifizierten Namen geladen. Der Rückgabewert ist ungleich Null, wenn der Ladevorgang nicht erfolgreich war.
bae_menuitemhelp - Onlinehilfe zu BAE-Menüelement anzeigen (STD)
Synopsis
int bae_menuitemhelp( // Status
int [0,9999]; // Menücode (STD4)
string; // Help-Dateiname (Windows .hlp -Datei)
);
Beschreibung
Die Funktion
bae_menuitemhelp zeigt die Onlinehilfe zu dem über den Menücode angegebenen Topic an. Der Rückgabewert ist ungleich Null, wenn ungültige Parameter spezifiziert wurden.
Einschränkungen
bae_menuitemhelp ist nur unter Windows funktionsfähig.
bae_msgbox - BAE Info-Popup aktivieren (STD)
Synopsis
void bae_msgbox(
int; // Info-Popup Stil/Piktogramm:
// 0 = Info (Information)
// 1 = Warnung (Ausrufezeichen)
// 2 = Fehler (Fragezeichen)
// 3 = Fataler Fehler (Stoppzeichen)
// sonst = kein Piktogramm
string; // Info-Popup Text
string; // Info-Popup Titel
);
Beschreibung
Die Funktion
bae_msgbox aktiviert ein Info-Popupfenster mit einer Bestätigungsabfrage (Schaltfläche
). Auf das Erscheinungsbild des Info-Fensters kann über den ersten Parameter Einfluss genommen werden. Der angegeben Text wird innerhalb des Popupfensters angezeigt. Der Titel erscheint als Überschrift in der Titelleiste des Popupfensters. Das Erscheinungsbild bzw. das Layout des Popupfensters (Fensterposition, Titelanzeige, Schaltflächensymbole, Textausrichtung, Zeilenumbruch, usw.) kann je nach Betriebssystemplattform variieren.
Siehe auch
Funktionen
bae_msgboxverify,
bae_msgboxverifyquit.
bae_msgboxverify - BAE Info-Popup Ja/Nein-Abfrage aktivieren (STD)
Synopsis
int bae_msgboxverify( // Rückgabe Antwortcode:
// 1 = Ja
// 0 = Nein (Default)
string; // Info-Popup Text
string; // Info-Popup Titel
);
Beschreibung
Die Funktion
bae_msgboxverify aktiviert ein Info-Popupfenster mit einer Ja/Nein-Abfrage. Der Funktionsrückgabewert ergibt sich zu 1 bei Eingabe bzw. Selektion von "Ja" und zu Null bei allen anderen Eingaben. Der angegeben Text wird innerhalb des Popupfensters angezeigt. Der Titel erscheint als Überschrift in der Titelleiste des Popupfensters. Das Erscheinungsbild bzw. das Layout des Popupfensters (Fensterposition, Titelanzeige, Schaltflächensymbole, Textausrichtung, Zeilenumbruch, usw.) kann je nach Betriebssystemplattform variieren.
Siehe auch
Funktionen
bae_msgbox,
bae_msgboxverifyquit.
bae_msgboxverifyquit - BAE Info-Popup mit Ja/Nein/Abbruch-Abfrage aktivieren (STD)
Synopsis
int bae_msgboxverifyquit( // Rückgabe Antwortcode:
// 1 = Ja
// 0 = Nein
// sonst = Abbruch (Default)
string; // Info-Popup Text
string; // Info-Popup Titel
);
Beschreibung
Die Funktion
bae_msgboxverifyquit aktiviert ein Info-Popupfenster mit einer Ja/Nein/Abbruch-Abfrage. Der Funktionsrückgabewert ergibt sich zu 1 bei Eingabe bzw. Selektion von
und zu Null bei Eingabe bzw. Selektion von
. Alle anderen Eingaben werden als Abbruchanforderung interpretiert. Der angegeben Text wird innerhalb des Popupfensters angezeigt. Der Titel erscheint als Überschrift in der Titelleiste des Popupfensters. Das Erscheinungsbild bzw. das Layout des Popupfensters (Fensterposition, Titelanzeige, Schaltflächensymbole, Textausrichtung, Zeilenumbruch, usw.) kann je nach Betriebssystemplattform variieren.
Siehe auch
Funktionen
bae_msgbox,
bae_msgboxverify.
bae_msgprogressrep - BAE-Fortschrittsanzeige aktivieren/aktualisieren (STD)
Synopsis
int bae_msgprogressrep( // Rückgabe Status
string; // Fortschrittsanzeige Text
int [0,258]; // Fortschrittsanzeige Typ:
// 1 : Prozentualer Fortschritt
// 2 : Fortschrittsschiebebalken
// |256 : Abbruchschaltfläche anzeigen
int [0,10000]; // Fortschrittsanzeige Komplettierungsstatus [%*100]
int [0,[; // Fortschrittsanzeige Minimalbreite [in Zeichen]
);
Beschreibung
Die Funktion bae_msgprogressrep aktiviert bzw. aktualisiert die BAE-Fortschrittsanzeige mit den angegebenen Parametern. Der Funktionsrückgabewert ist Null, wenn die Funktion erfolgreich ausgeführt wurde, oder ungleich Null im Fehlerfall (bei Spezifikation ungültiger Parameter). Eine mit bae_msgprogressrep kann mit bae_msgprogressterm wieder beendet werden.
Siehe auch
Funktion bae_msgprogressterm.
bae_msgprogressterm - BAE-Fortschrittsanzeige beenden (STD)
Synopsis
void bae_msgprogressterm(
);
Beschreibung
Die Funktion bae_msgprogressterm beendet die mit bae_msgprogressrep aktivierte BAE-Fortschrittsanzeige.
Siehe auch
Funktion bae_msgprogressrep.
bae_mtpsize - BAE Popup Anzeigebereichsdimensionen abfragen (STD)
Synopsis
void bae_mtpsize(
& int; // Rückgabe Popupmenü Textspaltenanzahl
& int; // Rückgabe Popupmenü Textzeilenanzahl
);
Beschreibung
Die Funktion
bae_mtpsize ermittelt die Größe des maximal verfügbaren Anzeigebereichs zur Definition von Popupmenüs oder Toolbars mit Hilfe der Funktionen
bae_popshow und
bae_settbsize. Die Breite des Anzeigebereichs wird im Parameter für die Textspaltenanzahl zurückgegeben, während die Höhe des Anzeigebereichs im Parameter für die Textzeilenanzahl zurückgegeben wird. Mit Hilfe der Funktion
bae_charsize können diese Werte in Standardlängeneinheiten umgerechnet werden.
Siehe auch
Funktionen
bae_charsize,
bae_popshow,
bae_settbsize,
bae_twsize.
bae_nameadd - BAE Namensauswahlliste Element hinzufügen (STD)
Synopsis
int bae_nameadd( // Namenslistenindex/ID oder (-1) im Fehlerfall
string; // Name
string; // Datumsstring
string; // Datumssortierstring
int; // Sortiermodus:
// 0 = anfügen (keine Sortierung)
// 1 = Sortierung alphanumerisch
// 2 = Sortierung numerisch
// 3 = Sortierung nach Datum
// 4 = Sortierung für ID-Generierung
);
Beschreibung
Die Funktion
bae_nameadd fügt einen Eintrag in die interne BAE-Namensauswahlliste ein. Diese Liste wird von der Funktion
bae_askname zur Aktivierung von Namensauswahldialogen benutzt. Die Funktion
bae_nameclr kann bzw. sollte vor dem ersten Aufruf von
bae_nameadd benutzt werden, um eventuell von vorhergehenden Applikationen vorhandene Namenseinträge aus der Namensauswahlliste zu entfernen. Die Funktion gibt den ermittelten Namenslistenindex bzw. eine ID zurück wenn die Operation erfolgreich oder (-1) im Fehlerfall.
Siehe auch
Funktionen bae_askname,
bae_nameclr,
bae_nameget.
bae_nameclr - BAE Namensauswahlliste löschen (STD)
Synopsis
void bae_nameclr(
);
Beschreibung
Die Funktion
bae_nameclr löscht die aktuell mit
bae_nameadd definierte Namensliste aus dem Arbeitsspeicher.
Siehe auch
Funktionen bae_askname,
bae_nameadd,
bae_nameget.
bae_nameget - BAE Namensauswahlliste Element abfragen (STD)
Synopsis
int bae_nameget( // Status
int; // Namenslistenindex
& string; // Rückgabe Name
& string; // Rückgabe Datumsstring
& string; // Rückgabe Datumssortierstring
& string; // Rückgabe Kommentar
& int; // Rückgabe Namenseintraganzahl oder Namens-ID
);
Beschreibung
Die Funktion
bae_nameget dient der Abfrage von zuvor mit
bae_nameadd definierten Einträgen in der BAE-Namensauswahlliste. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder ungleich Null im Fehlerfall.
Siehe auch
Funktionen bae_askname,
bae_nameadd,
bae_nameclr.
bae_numstring - Numerische Zeichenkette erzeugen (STD)
Synopsis
string bae_numstring( // Rückgabe numerische Zeichenkette
double; // Eingabewert
int [0,[; // Maximale Genauigkeit/Nachkommastellen
);
Beschreibung
Die Funktion
bae_numstring konvertiert den Eingabewert in eine numerische Zeichenkette mit der über die maximale Genauigkeit angegebenen Zahl von Nachkommastellen.
bae_peekiact - BAE Interaktionsvorgaben abfragen (STD)
Synopsis
int bae_peekiact( // Rückgabe Interaktionsstatus/-modus:
// 0 = Keine automatische Interaktion anstehend
// 1 = Mausinteraktion anstehend
// 2 = Textinteraktion anstehend
// 3 = Menüinteraktion anstehend
// 4 = Tastaturinteraktion anstehen
);
Beschreibung
Mit der Funktion
bae_peekiact können die aktuellen Interaktionsvorgaben überprüft werden.
Der Funktionsrückgabewert ist der Typcode der nächsten anstehenden automatischen Interaktion oder Null wenn keine automatisch Interaktion ansteht.
Siehe auch
Funktionen
bae_storekeyiact,
bae_storemenuiact,
bae_storemouseiact,
bae_storetextiact.
bae_plainmenutext - BAE Menütext konvertieren (STD)
Synopsis
string bae_plainmenutext( // Zeichenkette
string; // Menütext
);
Beschreibung
Die Funktion
bae_plainmenutext wandelt den über den Funktionsparameter übergebenen Menütext in normalen Text ohne Sonderzeichen für Menütrennzeilen
(% ), Beschleuniger
(& ), usw. um. Die resultierende Zeichenkette wird als Funktionsergebnis an den Aufrufer zurückgegeben.
Siehe auch
Funktionen
bae_defmenutext,
bae_getmenutext.
bae_planddbclass - BAE Elementklasse abfragen (STD)
Synopsis
int bae_planddbclass( // Elementklasse (STD1)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planddbclass entspricht der Datenbankklasse des aktuell geladenen Elements. Die im
Schaltplaneditor möglichen Rückgabewerte 800, 801, 802 und 803 stehen für SCM Stromlaufblatt, SCM Symbol, SCM Marker und SCM Label. Die in den Layoutmodulen möglichen Rückgabewerte 100, 101, 102 und 103 stehen für Layout, Layout Bauteil, Layout Padstack und Layout Pad. Die im
IC-Design möglichen Rückgabewerte 1000, 1001 und 1002 stehen für IC-Layout, IC-Zelle und IC-Pin. Der Rückgabewert (-1) gibt an, dass kein Element geladen ist.
bae_planename - BAE Elementname abfragen (STD)
Synopsis
string bae_planename( // Elementname
);
Beschreibung
Der Rückgabewert der Funktion
bae_planename entspricht dem Elementnamen des aktuell geladenen Elements oder der Nullzeichenkette, wenn kein Element geladen ist.
Siehe auch
Funktion
bae_plansename.
bae_planfname - BAE Dateiname abfragen (STD)
Synopsis
string bae_planfname( // Element Dateiname
);
Beschreibung
Der Rückgabewert der Funktion
bae_planfname entspricht dem Dateinamen des aktuell geladenen Elements oder der Nullzeichenkette, wenn kein Element geladen ist.
Siehe auch
Funktionen
bae_plansfname,
bae_setplanfname.
bae_plannotsaved - BAE Element ungesichert Flag abfragen (STD)
Synopsis
int bae_plannotsaved( // Element ungesichert Flag:
// 0 = Element gesichert
// 1 = Element nicht gesichert
);
Beschreibung
Der Rückgabewert der Funktion
bae_plannotsaved gibt an, ob das aktuell geladene Element gesichert ist. Der Wert ist ungleich Null, wenn seit dem letzten Speichern des aktuellen Elements Änderungen an diesem vorgenommen wurden.
bae_plansename - BAE Zielelementname abfragen (STD)
Synopsis
string bae_plansename( // Zielelementname
);
Beschreibung
Der Rückgabewert der Funktion
bae_plansename entspricht dem Zielelementnamen des aktuell geladenen Elements oder der Nullzeichenkette, wenn kein Element geladen ist. Diese Funktion kann für Elementnamensabfragen während der Ausführung der Funktion
benutzt werden.
Siehe auch
Funktion
bae_planename.
bae_plansfname - BAE Zieldateiname abfragen (STD)
Synopsis
string bae_plansfname( // Zieldateiname
);
Beschreibung
Der Rückgabewert der Funktion
bae_plansfname entspricht dem Zieldateinamen des aktuell geladenen Elements oder der Nullzeichenkette, wenn kein Element geladen ist. Diese Funktion kann für Elementdateinamensabfragen während der Ausführung der Funktion
benutzt werden.
Siehe auch
Funktion
bae_planfname.
bae_planwslx - BAE Element linke Elementgrenze abfragen (STD)
Synopsis
double bae_planwslx( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planwslx entspricht der linken Begrenzungskoordinate des aktuell geladenen Elements.
bae_planwsly - BAE Element untere Elementgrenze abfragen (STD)
Synopsis
double bae_planwsly( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planwsly entspricht der untereb Begrenzungskoordinate des aktuell geladenen Elements.
bae_planwsnx - BAE Element X-Bezugskoordinate abfragen (STD)
Synopsis
double bae_planwsnx( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planwsnx entspricht dem X-Koordinatenbezugspunkt des aktuell geladenen Elements.
bae_planwsny - BAE Element Y-Bezugskoordinate abfragen (STD)
Synopsis
double bae_planwsny( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planwsny entspricht dem Y-Koordinatenbezugspunkt des aktuell geladenen Elements.
bae_planwsux - BAE Element rechte Elementgrenze abfragen (STD)
Synopsis
double bae_planwsux( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planwsux entspricht der rechten Begrenzungskoordinate des aktuell des aktuell geladenen Elements.
bae_planwsuy - BAE Element obere Elementgrenze abfragen (STD)
Synopsis
double bae_planwsuy( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_planwsuy entspricht der oberen Begrenzungskoordinate des aktuell geladenen Elements.
bae_popareachoice - BAE Popupmenü Selektionsbereich definieren (STD)
Synopsis
int bae_popareachoice( // Status
double [0.0,[; // Startzeilennummer
double [0.0,[; // Startspaltennummer
double [0.0,[; // Endzeilennummer
double [0.0,[; // Endspaltennummer
string; // Antwort-Zeichenkette
);
Beschreibung
Die Funktion
bae_popareachoice definiert einen rechteckförmigen Selektionsbereich innerhalb des aktuell aktiven Popupmenübereichs. Der aktive Popupmenübereich wird mit der Funktion
bae_popsetarea selektiert und ist entweder der mit
bae_popshow definierte Popupmenübereich oder der mit
bae_settbsize definierte Toolbarbereich. Der Selektionsbereich wird mit den Funktionsparametern für die Zeilen- bzw. Spaltenbereiche definiert, wobei Zeilen von oben nach unten und Spalten von links nach rechts gezählt werden. Mit der Funktion
bae_tbsize kann die aktuelle Toolbargröße ermittelt werden. Mit Hilfe der Funktion
bae_charsize können Textkoordinaten in Standardlängeneinheiten konvertiert werden. Der Parameter für die Anwort-Zeichenkette definiert den Text, der später bei Selektionen im definierten Selektionsbereich durch die Funktion
bae_readtext zurückzugeben ist. Der Rückgabewert der Funktion
bae_popareachoice ist (-1) im Fehlerfall, 1 bei erfolgreicher Generierung einer Schaltfläche, oder Null bei erfolgreicher Definition des Selektionsbereichs.
Siehe auch
Funktionen bae_charsize,
bae_popcolbar,
bae_popcolchoice,
bae_popsetarea,
bae_popshow,
bae_poptext,
bae_poptextchoice,
bae_readtext,
bae_settbsize,
bae_tbsize.
bae_popcliparea - BAE Popupmenü Clippingbereich definieren (STD)
Synopsis
void bae_popcliparea(
int [0,1]; // Clippingmodus:
// 0 = Clipping deaktivieren
// 1 = Clipping aktivieren
double [0.0,[; // Startzeilennummer
double [0.0,[; // Startspaltennummer
double [0.0,[; // Endzeilennummer
double [0.0,[; // Endspaltennummer
);
Beschreibung
Die Funktion
bae_popcliparea aktiviert (Clippingmodus 1) bzw. deaktiviert (Clippingmodus 0) das sogenannte Clipping innerhalb des aktuell aktiven Popupmenübereichs. Der aktive Popupmenübereich wird mit der Funktion
bae_popsetarea selektiert und ist entweder der mit
bae_popshow definierte Popupmenübereich oder der mit
bae_settbsize definierte Toolbarbereich. Mit dem Clippingverfahren können Grafikausgaben in den Popupmenüs bzw. Toolbars automatisch auf spezielle Teilbereiche der Anzeige beschränkt werden, was insbesondere bei der Generierung von Ausschnittszeichnungen mit Hilfe der Funktion
bae_popdrawpoly von besonderem Nutzen ist. Der Clippingbereich wird mit den Funktionsparametern für die Zeilen- bzw. Spaltenbereiche definiert, wobei Zeilen von oben nach unten und Spalten von links nach rechts gezählt werden. Mit Hilfe der Funktion
bae_charsize können Textkoordinaten in Standardlängeneinheiten konvertiert werden.
Siehe auch
Funktionen
bae_charsize,
bae_popdrawpoly,
bae_popsetarea,
bae_popshow,
bae_settbsize.
bae_popclrtool - BAE Toolbar-Popupmenübereich löschen (STD)
Synopsis
void bae_popclrtool(
);
Beschreibung
Mit der Funktion
bae_popclrtool können sämtliche Anzeigen im aktuellen Toolbarbereich gelöscht bzw. deaktiviert werden.
Siehe auch
Funktionen
bae_popsetarea,
bae_settbsize.
bae_popcolbar - BAE Popupmenü Farbbalkenanzeige definieren (STD)
Synopsis
int bae_popcolbar( // Status
double [0.0,[; // Startzeilennummer
double [0.0,[; // Startspaltennummer
double [0.0,[; // Endzeilennummer
double [0.0,[; // Endspaltennummer
int [0,[; // Farbwert (STD18)
);
Beschreibung
Die Funktion
bae_popcolbar definiert einen nicht selektierbaren Farbbalken innerhalb des zuvor mit
bae_popshow aktivierten Popupmenüs. Die Größe und die Position für die Anzeige des Farbbalkens ergeben sich aus den übergebenen Zeilen- und Spaltenparametern; die Koordinate [0,0] bezieht sich dabei auf die linke obere Ecke des Popupbereiches. Der Farbwert-Parameter definiert die Farbe des Farbbalkens. Der Rückgabewert der Funktion ist ungleich Null, wenn fehlerhafte Parameter übergeben wurden.
Siehe auch
Funktionen
bae_popareachoice,
bae_popcolchoice,
bae_popshow,
bae_poptext,
bae_poptextchoice.
bae_popcolchoice - BAE Popupmenü Farbbalkenselektion definieren (STD)
Synopsis
int bae_popcolchoice( // Status
double [0.0,[; // Startzeilennummer
double [0.0,[; // Startspaltennummer
double [0.0,[; // Endzeilennummer
double [0.0,[; // Endspaltennummer
int [0,[; // Farbwert (STD18)
string; // Antwort-Zeichenkette
);
Beschreibung
Die Funktion
bae_popcolchoice definiert einen maus-selektierbaren Farbbalken innerhalb des zuvor mit
bae_popshow aktivierten Popupmenüs. Die Größe und die Position für die Anzeige des Farbbalkens ergeben sich aus den übergebenen Zeilen- und Spaltenparametern; die Koordinate [0,0] bezieht sich dabei auf die linke obere Ecke des Popupbereiches. Der Farbwert-Parameter definiert die Farbe des Farbbalkens. Der Rückgabewert der Funktion ist ungleich Null, wenn fehlerhafte Parameter übergeben wurden. Die Selektion des mit
bae_popcolchoice definierten Farbbalkens ist nach einer Aktivierung der Funktion
bae_readtext möglich. Durch die Selektion des Farbbalkens wird die Funktion
bae_readtext beendet; der Rückgabewert von
bae_readtext ergibt sich dabei automatisch aus der Antwort-Zeichenkette, die beim Aufruf der Funktion
bae_popcolchoice angegeben wurde.
Siehe auch
Funktionen
bae_popareachoice,
bae_popcolbar,
bae_popshow,
bae_poptext,
bae_poptextchoice,
bae_readtext.
bae_popdrawpoly - BAE Popupmenü Polygon-/Grafikanzeige (STD)
Synopsis
int bae_popdrawpoly( // Status
int [0,[; // Polygon Farbe (STD18)
int [0,3]; // Polygon Zeichenmodus (STD19)
int [0,15]; // Polygon Füllmodus (STD20)
);
Beschreibung
Die Funktion
bae_popdrawpoly bildet das mit
bae_storepoint generierte interne Polygon in der angegebenen Farbe und unter Berücksichtigung der spezifizierten Parameter für den Zeichen- und Füllmodus im aktuell aktiven Popupmenübereich ab. Der aktive Popupmenübereich wird mit der Funktion
bae_popsetarea selektiert und ist entweder der mit
bae_popshow definierte Popupmenübereich oder der mit
bae_settbsize definierte Toolbarbereich. Die Polygonanzeige kann mit Hilfe der Funktion
bae_popcliparea auf einen speziellen Teilbereich des Popupmenüs beschränkt werden. Mit Hilfe der Funktion
bae_popareachoice können ein oder mehrere Teilbereiche der Polygonanzeige für eine spätere Selektion durch die Funktion
bae_readtext vorgesehen werden. Zur Vorbereitung der Definition neuer Polygone kann das aktuell generierte, interne Polygon mit der Funktion
bae_clearpoints gelöscht werden. Die Basislänge für die Ausgabe gestrichelter Linienzüge kann mit Hilfe der Funktion
bae_setpopdash gesetzt werden. Der Rückgabewert der Funktion
bae_popdrawpoly ist Null, wenn die Polygongenerierung erfolgreich durchgeführt wurde, oder ungleich Null im Fehlerfall.
Siehe auch
Funktionen
bae_clearpoints,
bae_dialbmpalloc,
bae_popareachoice,
bae_popcliparea,
bae_popcolbar,
bae_popcolchoice,
bae_popdrawtext,
bae_popsetarea,
bae_popshow,
bae_readtext,
bae_setpopdash,
bae_settbsize,
bae_storepoint.
bae_popdrawtext - BAE Popupmenü Textanzeige (STD)
Synopsis
int bae_popdrawtext( // Status
int; // Text Zeile
int; // Text Spalte
int [0,[; // Text Farbe (STD18)
int [0,[; // Text Hintergrundfarbe (STD18)
string; // Text String
);
Beschreibung
Die Funktion
bae_popdrawtext zeigt den angegebenen Text an den spezifizierten Zeilen- und Spaltenkoordinaten im aktuell aktiven Popupmenübereich an, wobei zur Darstellung die angegebenen Farben für den Text bzw. den Texthintergrund verwendet werden. Der aktive Popupmenübereich wird mit der Funktion
bae_popsetarea selektiert und ist entweder der mit
bae_popshow definierte Popupmenübereich oder der mit
bae_settbsize definierte Toolbarbereich. Mit Hilfe der Funktion
bae_charsize können Textkoordinaten in Standardlängeneinheiten konvertiert werden. Mit Hilfe der Funktion
bae_popareachoice können ein oder mehrere Teilbereiche der Textanzeige für eine spätere Selektion durch die Funktion
bae_readtext vorgesehen werden. Der Rückgabewert der Funktion
bae_popdrawtext ist Null, wenn die Textgenerierung erfolgreich durchgeführt wurde, oder ungleich Null im Fehlerfall.
Siehe auch
Funktionen
bae_charsize,
bae_dialbmpalloc,
bae_popareachoice,
bae_popdrawpoly,
bae_popsetarea,
bae_popshow,
bae_readtext,
bae_settbsize.
bae_popmouse - BAE Popup/Toolbar Mausposition abfragen (STD)
Synopsis
void bae_popmouse(
& double; // Rückgabe Maus-X-Koordinate/Spalte
& double; // Rückgabe Maus-Y-Koordinate/Reihe
& int; // Rückgabe Mausstatus:
// Bit 1 : linke Maustaste gedrückt
// Bit 2 : rechte Maustaste gedrückt
// Bit 3 : mittlere Maustaste gedrückt
);
Beschreibung
Mit der Funktion
bae_popmouse können die aktuellen Mauskoordinaten (Spalte und Reihe) innerhalb des Popup- bzw. Toolbarbereichs ermittelt werden. Der Parameter zur Rückgabe des Mausstatus gibt an, welche Maustasten gerade gedrückt sind.
Siehe auch
Funktion
bae_wsmouse.
bae_poprestore - BAE Popupmenübereich reaktivieren (STD)
Synopsis
void bae_poprestore(
);
Beschreibung
Die Funktion
bae_poprestore deaktiviert das zuvor mit
bae_popshow aktivierte Popupmenü und reaktiviert ggf. wieder die Anzeige des durch das Popupmenü überdeckten Grafikarbeitsbereiches.
Siehe auch
Funktion
bae_popshow.
bae_popsetarea - BAE Toolbar-Popupmenübereich löschen (STD)
Synopsis
void bae_popsetarea(
int // Popupbereich:
// 0 = Popupmenübereich
// 1 = Toolbarbereich
// 2..31 = Dialogbitmapbereich
);
Beschreibung
Die Funktion
bae_popsetarea dient dazu, wahlweise das Standard-Popupmenü (Popupbereich 0), die Toolbar (Popupbereich 1) oder eine Dialogbitmap (Popupbereich bzw. Popupbitmapnummer 2 bis 31) für nachfolgende Popupoperationen wie z.B.
bae_popareachoice,
bae_popcliparea,
bae_popdrawpoly oder
bae_popdrawtext zu aktivieren. Die Definition bzw. Anzeige des Standard-Popupmenübereichs erfolgt mit Hilfe der Funktion
bae_popshow. Die Definition bzw. Anzeige des Toolbar-Popupmenübereichs erfolgt mit Hilfe der Funktion
bae_settbsize. Wenn mit
bae_popsetarea kein Popupmenübereich explizit aktiviert wurde, dann ist zunächst das Standard-Popupmenü für Popupoperationen selektiert.
Siehe auch
Funktionen
bae_dialbmpalloc,
bae_popareachoice,
bae_popcliparea,
bae_popdrawpoly,
bae_popdrawtext,
bae_popshow,
bae_settbsize.
bae_popshow - BAE Popupmenü aktivieren (STD)
Synopsis
int bae_popshow( // Status
& double [0.0,[; // Popup-Zeilenanzahl
& double [0.0,[; // Popup-Spaltenanzahl
& double [0,1.0]; // Linke Popup-Begrenzung
& double [0,1.0]; // Untere Popup-Begrenzung
& double [0,1.0]; // Rechte Popup-Begrenzung
& double [0,1.0]; // Obere Popup-Begrenzung
);
Beschreibung
Die Funktion
bae_popshow erzeugt ein Popupmenü in der angegebenen Größe. Die Position sowie die maximale Ausdehnung des Popupmenüs ergeben sich aus den Popup-Begrenzungsparametern; die angegebenen Werte verstehen sich dabei als Relativwerte in Bezug auf die Größe des zur Verfügung stehenden Grafikarbeitsbereiches; der Wert 0.0 steht dabei für Minimalgröße, der Wert 1.0 für Maximalgröße. Die Anzahl der maximal anzeigbaren Spalten und Zeilen kann mit der Funktion
bae_mtpsize ermittelt werden. Die Parameter für die Popupzeilen- und Popupspaltenanzahl definieren als Eingabeparameter die gewünschte Größe des Popupmenüs. Die innerhalb der angegebenen Popupbegrenzung tatsächlich darstellbaren Zeilen und Spalten werden durch die Funktion
bae_popshow automatisch berechnet und in den entsprechenden Parametern an den Aufrufer wieder zurückgegeben. Der Rückgabewert der Funktion
bae_popshow ist ungleich Null, wenn ungültige oder sich widersprechende Parameter übergeben wurden. Die Menüfarben für Texte, Hintergrund und Rahmen des Popups ergeben sich aus den mit dem Utilityprogramm
bsetup im BAE Setup entsprechend eingetragenen Farbwerten. Nach dem Aufruf der Funktion
bae_popshow können mit den Funktionen
bae_popareachoice,
bae_popcolbar,
bae_popcolchoice,
bae_popdrawpoly,
bae_popdrawtext,
bae_poptext und
bae_poptextchoice selektierbare und nicht selektierbare Farbbalken, Anzeigetexte, Grafiken und Selektionsbereiche definiert werden. Die Popupmenüauswahl kann anschließend mit der Funktion
bae_readtext aktiviert werden.
Warnung
Zur Freigabe eines durch ein Popupmenü belegten Grafikarbeitsbereiches ist die Funktion
bae_poprestore zu benutzen.
Siehe auch
Funktionen
bae_mtpsize,
bae_popareachoice,
bae_popcliparea,
bae_popcolbar,
bae_popcolchoice,
bae_popdrawpoly,
bae_popdrawtext,
bae_poprestore,
bae_popsetarea,
bae_poptext,
bae_poptextchoice,
bae_readtext,
bae_settbsize sowie BAE Utilityprogramm
bsetup.
bae_poptext - BAE Popupmenü Textanzeige definieren (STD)
Synopsis
int bae_poptext( // Status
double [0.0,[; // Zeilennummer
double [0.0,[; // Spaltennummer
string; // Anzeige-Zeichenkette
);
Beschreibung
Die Funktion
bae_poptext definiert einen nicht selektierbaren Text innerhalb des zuvor mit
bae_popshow aktivierten Popupmenüs. Die Position für die Anzeige des Textes ergibt sich aus den übergebenen Zeilen- und Spaltenparametern; die Koordinate [0,0] bezieht sich dabei auf die linke obere Ecke des Popupbereiches. Der im Popupmenü anzuzeigende Text wird durch die Anzeige-Zeichenkette definiert. Der Rückgabewert der Funktion ist ungleich Null, wenn fehlerhafte Parameter übergeben wurden.
Siehe auch
Funktionen
bae_popcolbar,
bae_popcolchoice,
bae_popshow,
bae_poptextchoice.
bae_poptextchoice - BAE Popupmenü Textselektion definieren (STD)
Synopsis
int bae_poptextchoice( // Status
double [0.0,[; // Zeilennummer
double [0.0,[; // Spaltennummer
string; // Anzeige-Zeichenkette
string; // Antwort-Zeichenkette
);
Beschreibung
Die Funktion
bae_poptextchoice definiert einen maus-selektierbaren Text innerhalb des zuvor mit
bae_popshow aktivierten Popupmenüs. Die Position für die Anzeige des Textes ergibt sich aus den übergebenen Zeilen- und Spaltenparametern; die Koordinate [0,0] bezieht sich dabei auf die linke obere Ecke des Popupbereiches. Der im Popupmenü anzuzeigende Text wird durch die Anzeige-Zeichenkette definiert. Der Rückgabewert der Funktion ist ungleich Null, wenn fehlerhafte Parameter übergeben wurden. Die Selektion der mit
bae_poptextchoice definierten Textanzeige ist nach einer Aktivierung der Funktion
bae_readtext möglich. Durch die Selektion des Anzeigetextes wird die Funktion
bae_readtext beendet; der Rückgabewert von
bae_readtext ergibt sich dabei automatisch aus der Antwort-Zeichenkette, die beim Aufruf der Funktion
bae_poptextchoice angegeben wurde.
Siehe auch
Funktionen
bae_popcolbar,
bae_popcolchoice,
bae_popshow,
bae_poptext,
bae_readtext.
bae_postprocess - BAE Postprozessorlauf (STD)
Synopsis
void bae_postprocess(
);
Beschreibung
Die Funktion
bae_postprocess führt einen BAE-Prostprozesslauf für das aktuell geladene Element durch. Auf Layoutebene wird damit die eine Aktualisierung der Connectivity und eine Prüfung der Designregeln erzwungen.
bae_progdir - BAE Programmverzeichnis ermitteln (STD)
Synopsis
string bae_progdir( // BAE-Programmverzeichnis-Name
);
Beschreibung
Der Rückgabewert der Funktion
bae_progdir entspricht dem aktuell gültigen Namen für das BAE-Programmverzeichnis. Diese Information ist insbesondere dann von Nutzen, wenn auf spezielle Daten aus dem BAE-Programmverzeichnis zugegriffen werden soll (z.B. zum Laden von Farbtabellen, für den Zugriff auf Blendentabellen, usw.).
bae_prtdialog - BAE Dialogtextausgabe in Statuszeile (STD)
Synopsis
void bae_prtdialog(
string; // Anzeige-Zeichenkette
);
Beschreibung
Die Funktion
bae_prtdialog gibt die übergebene Anzeige-Zeichenkette in der Statuszeile der BAE-Benutzeroberfläche aus.
Siehe auch
Funktion
perror.
bae_querydist - BAE Punkt-zu-Polgygon Distanzabfrage (STD)
Synopsis
int bae_querydist( // Status
double; // Abfrage X-Koordinate (STD2)
double; // Abfrage Y=Koordinate (STD2)
& double; // Rückgabe Distanz (STD2)
);
Beschreibung
Mit der Funktion
bae_querydist kann der Abstand zwischen dem über die Parameter für die X- und Y-Koordinaten gegebenen Punkt und das zuvor mit
bae_storedistpoly gespeicherte interne Distanzabfragepolygon ermittelt werden. Die ermittelte Distanz wird im letzten Funktionsparameter zurückgegeben. Positive Werte geben dabei Abstände zu Punkten außerhalb des Distanzabfragepolygons an, negative Werte werden für Abstände zu Punkten innerhalb des Polygons zurückgegeben. Der Funktionsrückgabewert ist Null bei erfolgreicher Distanzabfrage oder ungleich Null wenn ein Fehler aufgetreten ist (fehlendes Distanzabfragepolygon).
Siehe auch
Funktion
bae_storedistpoly.
bae_readedittext - BAE Texteingabe/-anzeige (STD)
Synopsis
string bae_readedittext( // Zeichenkette
string; // Eingabeaufforderung
// ! -Präfix: Mehrzeilentexteingabe
// sonst: Einzelzeilentexteingabe
string; // Default-Rückgabezeichenkette
int [0,[; // Maximale Eingabelänge
);
Beschreibung
Die Funktion
bae_readedittext aktiviert einen Dialog zum Anzeigen und Editieren von Texten. Die über den ersten Funktionsparameter angegebene Eingabeaufforderung wird in der Titelleiste des Dialogs angezeigt. Ist das erste Zeichen der Eingabeaufforderung ein Ausrufungszeichen
(! ), dann wird ein Dialog mit einem mehrzeiligem Editierfenster aktiviert, ansonsten erfolgt die Eingabe über einen Dialog mit einem einzeiligen Editierfenster.
Das Dialogfenster für mehrzeilige Texteingaben ist in der Größe veränderbar.
Nach dem Aufruf der Funktion wird im Editierfenster die angegebene Rückgabezeichenkette angezeigt. Der Dialog enthält Schaltflächen zur Bestätigung
() und zum Abbruch
() der Texteingabe. Im Dialog für die mehrzeilige Texteingabe werden außerdem Schaltflächen zum Laden des Inhalts einer selektierbaren Datei
() und zum Speichern des aktuell editierten Texts in eine Ausgabedatei
() angeboten. Der Rückgabewert dieser Funktion entspricht der vom Benutzer editierten Zeichenkette wenn die Eingabe mit
bestätigt wurde. Dabei ist die eingebbare maximale Länge der Antwortzeichenkette durch den entsprechenden Funktionsparameter festgelegt. Bei Betätigung von
wird die Default-Rückgabezeichenkette an den Aufrufer zurückgegeben.
Warnung
Unter
BAE Demo steht die Option zum Speichern des aktuell bearbeiteten Texts nicht zur Verfügung, und die üblicherweise über die rechte Maustaste unter Windows verfügbare Funktion zum Kopieren des aktuell bearbeiteten Texts in das Clipboard ist ebenfalls deaktiviert.
Siehe auch
Funktion
bae_readtext.
bae_readtext - BAE Texteingabe mit optionalem Popupmenü (STD)
Synopsis
string bae_readtext( // Zeichenkette
string; // Eingabeaufforderung
int; // Maximale Eingabelänge
);
Beschreibung
Die Funktion
bae_readtext fordert den Benutzer in der Eingabezeile mit der übergebenen Promptzeichenkette zur Eingabe einer Zeichenkette auf. Der Rückgabewert dieser Funktion entspricht der vom Benutzer eingegebenen Zeichenkette, wobei die über Tastatur eingebbare maximale Länge der Antwortzeichenkette durch den entsprechenden Funktionsparameter definiert wird. Wurde vor dem
bae_readtext-Aufruf mit
bae_setmousetext die Möglichkeit der Textübergabe per Mausklick aktiviert, dann ist parallel zur Tastatureingabe die Betätigung einer Maustaste möglich; der Rückgabewert der Funktion
bae_readtext ergibt sich dann aus der mit
bae_setmousetext definierten Antwortzeichenkette. Nach Ablauf der Funktion
bae_readtext wird die mit
bae_setmousetext definierte Möglichkeit der Mausklickeingabe wieder deaktiviert. Wurde vor dem
bae_readtext-Aufruf mit
bae_popshow ein Popupmenü aktiviert (ohne dass eine Mausklickeingabe mit
bae_setmousetext aktiviert wurde), dann ist parallel zur Tastatureingabe die Mausselektion eines der innerhalb des Popupmenüs mit
bae_popcolchoice bzw. mit
bae_poptextchoice definierten Selektionselemente (Farbbalken bzw. Texte) möglich, wobei sich dann die entsprechend definierten Zeichenketten-Rückgabewerte ergeben.
Warnung
Die Funktion
bae_readtext deaktiviert alle zuvor mit
bae_popcolchoice,
bae_poptextchoice und
bae_setmousetext aktivierten Selektionsalternativen.
Siehe auch
Funktionen
bae_popcolchoice,
bae_popshow,
bae_poptextchoice,
bae_readedittext,
bae_setmousetext.
bae_redefmainmenu - BAE Hauptmenüdefinition starten (STD)
Synopsis
int bae_redefmainmenu( // Status
);
Beschreibung
Die Funktion
bae_redefmainmenu startet die (Neu-)Definition des Hauptmenüs im aktuell aktiven BAE-Modul. Der Rückgabewert der Funktion
bae_redefmainmenu ist (-1), wenn ein Fehler aufgetreten ist oder Null andernfalls. Im Anschluss an den Aufruf der Funktion
bae_redefmainmenu sollten über die Funktion
bae_defmenu (zu beenden mit
bae_endmenu) zumindest die Hauptmenüeinträge definiert werden. Wahlweise können anschließend auch die Untermenüs über die Funktion
bae_defselmenu (zu beenden mit
bae_endmenu) konfiguriert werden. Zwischen den Funktionsaufrufen für
bae_defmenu bzw.
bae_defselmenu einerseits und der Funktion
bae_endmenu sind mit durch wiederholten Aufruf der Funktion
bae_defmenutext die einzelnen Menüeinträge zu definieren. Die Definition des Hauptmenüs muss mit der Funktion
bae_endmainmenu beendet werden. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_defmenu,
bae_defmenuprog,
bae_defmenutext,
bae_defselmenu,
bae_endmainmenu,
bae_endmenu,
bae_redefmenu,
bae_resetmenuprog.
bae_redefmenu - BAE Menüfunktion umprogrammieren (STD)
Synopsis
int bae_redefmenu( // Status
int [0,999]; // Menünummer
int [0,99]; // Menüzeile
string; // Menütext
int; // BAE-Menüfunktion (STD4)
int; // Menüeintrag Bearbeitungsschlüssel:
// 8000000h = immer aktivierbar
// 7FFFFFFh = für jeden Elementtyp
// aktivierbar
// sonstige = (kombinierter)
// DDB-Klassen-Schlüssel
);
Beschreibung
Die Funktion
bae_redefmenu ordnet einem Menüeintrag den angegebenen Menütext sowie die numerisch spezifizierte BAE-Menüfunktion zu. Die Menünummer gibt die Nummer des Hauptmenüs an, die Menüzeile die Position im zugehörigen Submenü. Der Bearbeitungsschlüssel dient der Konfiguration von sogenannten Ghostmenüs. Hierfür ist ein kodierter Integerwert einzutragen, wie er mit den Funktionen
bae_getclassbitfield oder
bae_getmenubitfield ermittelt bzw. definiert werden kann (im Zweifelsfall empfiehlt sich die Verwendung des Hexadezimalwertes 80000000h, um sicherzustellen, dass die Funktion immer aktivierbar ist). Der Rückgabewert der Funktion
bae_redefmenu ist (-1), wenn ein Fehler aufgetreten ist oder Null andernfalls. Mit der Funktion
bae_resetmenuprog können sämtliche Menübelegungen wieder zurückgesetzt werden.
Siehe auch
Funktionen
bae_defmenuprog,
bae_getclassbitfield,
bae_getmenubitfield,
bae_resetmenuprog.
bae_resetmenuprog - BAE Menüprogrammierung zurücksetzen (STD)
Synopsis
void bae_resetmenuprog(
);
Beschreibung
Die Funktion
bae_resetmenuprog setzt sämtliche mit
bae_deffuncprog,
bae_defkeyprog,
bae_defmenuprog,
bae_redefmainmenu,
bae_defmenu,
bae_defselmenu,
bae_defmenutext,
bae_redefmenu vorgenommenen Tasten- und Menüdefinitionen zurück und versetzt das System so in den Default Anfangszustand.
Siehe auch
Funktionen
bae_deffuncprog,
bae_defkeyprog,
bae_defmenu,
bae_defmenuprog,
bae_defmenutext,
bae_defselmenu,
bae_redefmainmenu,
bae_redefmenu.
bae_sendmsg - BAE HighEnd Message senden (STD/HighEnd)
Synopsis
int bae_sendmsg( // Status
string; // Meldung Textstring
int [0,1]; // Flag - projektspezifische Nachricht
);
Beschreibung
Die Funktion
bae_sendmsg ist nur in
BAE HighEnd verfügbar. Wenn die Funktion nicht in
BAE HighEnd aufgerufen wird, oder wenn Parameterangaben ungültig oder unvollständig sind, dann wird ein Wert ungleich Null zurückgegeben. Mit
bae_sendmsg wird ein Messagestring an die anderen Module eine
BAE HighEnd-Sitzung übermittelt. Dabei kann über den zweiten Funktionsparameter angegeben werden, ob alle Module die Nachricht erhalten sollen, oder ob die Nachricht nur an die Module geschickt werden soll, in denen gerade Elemente derselben DDB-Datei bearbeitet werden. Zu einer Sitzung gehören alle Programminstanzen, die ausgehend von einem BAE-Aufruf über die Funktion
aus dem BAE-Hauptmenü oder dem
Schaltplaneditor gestartet wurden. In den addressierten Modulen wird bei Ankunft einer Nachricht automatisch das
User Language-Programm
bae_msg gestartet. Ist
bae_msg nicht verfügbar, dann erfolgt der Aufruf eines
User Language-Programms mit modulspezifischem Namen
(scm_msg im Schaltplaneditor,
ged_msg im Layouteditor,
ar_msg im Autorouter, etc.). Das automatisch gestartete
User Language-Programm muss die Nachricht mit der Funktion
bae_getmsg entgegennehmen. Die Nachricht steht nur während der Dauer dieses Programmaufrufs zur Verfügung. Wird die Nachricht von dem
*_msg-Programm nicht angenommen, dann geht sie verloren. Der Inhalt der Nachricht kann dazu benutzt werden, eine spezielle Aktion im empfangenden Modul auszulösen.
Siehe auch
Funktion
bae_getmsg.
bae_setanglelock - BAE Winkelfreigabeflag setzen (STD)
Synopsis
int bae_setanglelock( // Status
int [0,1]; // Winkelfreigabe Flag (STD9)
);
Beschreibung
Die Funktion
bae_setanglelock setzt den Wert des Winkelfreigabeflags im
AutoEngineer (0=Winkel freigeben, 1=Winkel einhalten). Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Flagwert angegeben wurde.
Siehe auch
Funktion
bae_getanglelock.
bae_setbackgrid - BAE Hintergrundraster setzen (STD)
Synopsis
int bae_setbackgrid( // Status
double [0.0,[; // X-Hintergrundraster (STD2)
double [0.0,[; // Y-Hintergrundraster (STD2)
);
Beschreibung
Die Funktion
bae_setbackgrid setzt die Werte für das Hintergrundraster im
AutoEngineer. Werte von Null spezifizieren, dass kein Hintergrundraster angezeigt werden soll. Es wird ein Wert ungleich Null zurückgegeben, wenn ungültige Rasterwerte spezifiziert wurden.
Siehe auch
Funktion
bae_getbackgrid.
bae_setclipboard - Textstring in (Windows-)Zwischenablage speichern (STD)
Synopsis
int bae_setclipboard( // Status
string; // Textstring
);
Beschreibung
Die Funktion
bae_setclipboard speichert den ügergebenen Textstring in der Windows-Zwischenablage. Der Funktionsrückgabewert ist Null bei erfolgreicher Ausführung der Funktion oder ungleich Null im Fehlerfall.
bae_setcolor - BAE Farbwert setzen (STD)
Synopsis
int bae_setcolor( // Status
int; // Anzeigeelementtyp (SCM1|LAY9|ICD9)
int; // Farbwert (STD18)
);
Beschreibung
Die Funktion
bae_setcolor setzt den Farbwert für den angegebenen Anzeigeelementtyp. Der Wert für den Anzeigeelementtyp muss entsprechend der aktuellen Interpreterumgebung gesetzt sein. Der Rückgabewert ist ungleich Null, wenn der Farbwert nicht gesetzt werden konnte.
Warnung
Um beim Umdefinieren von Farbtabellen unnötige Bildneuaufbauten zu vermeiden, führt die Funktion
bae_setcolor keinen automatischen Bildneuaufbau durch. Es liegt somit in der Verantwortung des Aufrufers, den erforderlichen Bildneuaufbau nach einer mit
bae_setcolor durchgeführten Farbtabellendefinitionssequenz auszulösen.
Siehe auch
Funktion
bae_getcolor.
bae_setcoorddisp - BAE Koordinatenanzeige setzen (STD)
Synopsis
int bae_setcoorddisp( // Status
int [0,1]; // Koordinatenanzeigemodus (STD7)
);
Beschreibung
Die Funktion
bae_setcoorddisp setzt den Koordinatenanzeigemodus im
AutoEngineer, wobei der Wert 0 für mm-Einheiten (bzw. Mikrometer-Einheiten im
IC-Design System) und der Wert 1 für Inch-Einheiten (bzw. mil-Einheiten im
IC-Design System) anzugeben ist. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Modus angegeben wurde.
Siehe auch
Funktion
bae_getcoorddisp.
bae_setdblpar - BAE Doubleparameter setzen (STD)
Synopsis
int bae_setdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = maximale Dialogboxbreite
// 1 = maximale Dialogboxhöhe
// 2 = Grafikanzeige Zoomfaktor
// 3 = Gummibandeckradius (STD2)
// 4 = Gummiband X-Vektorkoordinate (STD2)
// 5 = Gummiband Y-Vektorkoordinate (STD2)
// 6 = Fixierte X-Pickkoordinate (STD2)
// 7 = Fixierte Y-Pickkoordinate (STD2)
// [ 8 = Systemparameter - kein Schreibzugriff ]
// [ 9 = Systemparameter - kein Schreibzugriff ]
// 10 = Bildschirmpickbereich (STD2)
// 11 = Elementauswahl relativer Vorschaubereich [0.05, 0.95]
// [ 12 = Systemparameter - kein Schreibzugriff ]
// [ 13 = Systemparameter - kein Schreibzugriff ]
double; // Parameterwert
);
Beschreibung
Die Funktion
bae_setdblpar dient dazu, Systemparameter vom Typ
double im
Bartels AutoEngineer zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
bae_setdblpar gesetzten Systemparametern können mit der Funktion
bae_getdblpar abgefragt werden.
Siehe auch
Funktionen
bae_getdblpar,
bae_getintpar,
bae_getstrpar,
bae_setintpar,
bae_setstrpar.
bae_setgridlock - BAE Rasterfreigabeflag setzen (STD)
Synopsis
int bae_setgridlock( // Status
int [0,1]; // Rasterfreigabe Flag (STD8)
);
Beschreibung
Die Funktion
bae_setgridlock setzt den Wert des Rasterfreigabeflags im
AutoEngineer (0=Raster freigeben, 1=Raster einhalten). Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Flagwert angegeben wurde.
Siehe auch
Funktion
bae_getgridlock.
bae_setgridmode - BAE Rasterabhängigkeitsmodus setzen (STD)
Synopsis
int bae_setgridmode( // Status
int [0,255]; // Modus für automatische Rastereinstellung:
// 0x01: Eingaberaster = 0.25 × Hintergrundraster
// 0x02: Eingaberaster = 0.50 × Hintergrundraster
// 0x04: Eingaberaster = 1.00 × Hintergrundraster
// 0x08: Eingaberaster = 2.00 × Hintergrundraster
// 0x10: Hintergrundraster = 0.25 × Eingaberaster
// 0x20: Hintergrundraster = 0.50 × Eingaberaster
// 0x40: Hintergrundraster = 1.00 × Eingaberaster
// 0x80: Hintergrundraster = 2.00 × Eingaberaster
);
Beschreibung
Die Funktion
bae_setgridmode setzt den BAE Rasterabhängigkeitsmodus. Der Funktionsrückgabewert ist ungleich Null wenn ein ungültiger Rasterabhängigkeitsmodus spezifiziert wurde.
Siehe auch
Funktion
bae_getgridmode.
bae_setinpgrid - BAE Eingaberaster setzen (STD)
Synopsis
int bae_setinpgrid( // Status
double [0.0,[; // X-Eingaberaster (STD2)
double [0.0,[; // Y-Eingaberaster (STD2)
);
Beschreibung
Die Funktion
bae_setinpgrid setzt die Werte für das Eingaberaster im
AutoEngineer. Es wird ein Wert ungleich Null zurückgegeben, wenn ungültige Rasterwerte spezifiziert wurden.
Siehe auch
Funktion
bae_getinpgrid.
bae_setintpar - BAE Integerparameter setzen (STD)
Synopsis
int bae_setintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Koordinateneingaben Bereichsprüfung:
// 0 = Bereichsprüfung aktivieren
// 1 = Bereichsprüfung deaktivieren
// 1 = Modulwechsel Autosavemodus:
// 0 = Autosave ohne Benutzerabfrage
// 1 = Benutzerabfrage vor Autosave
// 2 = Anzeigedeaktivierungsmodus:
// 0 = Anzeige aktiviert Prüfung
// 1 = Anzeige deaktivieren
// [ 3 = Benutzeroberfläche Menü-/Mausmodus: ]
// [ Systemparameter schreibgeschützt ]
// 4 = Arbeitsbereichstext Farbauswahl:
// 0 = Standardfarben
// 1 = invertierte Standardfarben
// 2 = arbeitsbereichsspezifische Farben
// 5 = Element Laden Anzeigemodus:
// 0 = Übersichtsanzeige nach Laden
// 1 = Anzeige aktiviert durch bae_load
// 6 = Dateiauswahl Dialogmodus:
// 0 = alte BAE-Dateiauswahl
// 1 = Explorer Standardansicht
// 2 = Explorer Listenansicht
// 3 = Explorer Detailansicht
// 4 = Exploreransicht kleine Piktogramme
// 5 = Exploreransicht große Piktogramme
// 6 = Standard-Stil und Standard-Größe benutzen
// 7 = Elementauswahl Dialogmodus:
// 0 = nur Name anzeigen
// 1 = Name und Datum anzeigen
// 8 = Elementauswahl Sortierfunktion:
// 0|1 = Sortierung nach Name
// 2 = Sortierung numerisch
// 3 = Sortierung nach Datum
// 9 = Anzeigemodus Platzierung:
// 0 = platzierte Elemente sichtbar
// 1 = unplatzierte Elemente sichtbar
// [ 10 = Letzter Dateisystemfehler: ]
// [ Systemparameter schreibgeschützt ]
// 11 = Kommandohistorie Modus:
// 0 = Kommandohistorie aktiviert
// 1 = Kommandohistorie deaktiviert
// 12 = Popupmenü Mauswarpmodus:
// 0 = Kein Popupmenü Mauswarp
// 1 = Popupmenü Mauswarp erstes Element
// 2 = Popupmenü Mauswarp vorselektiertes Element
// +4 = Mauspositionsrestore-Warp
// +8 = Elementpickpositions-Warp
// 13 = Sicherungsmodus:
// 0 = Sicherung aktiviert
// 1 = Sicherung deaktiviert
// 14 = Minimalgröße Mausrechteck:
// ]0,[ = minimale Mausrechteckgröße
// 15 = Anzeigemodus Mausinfo:
// 0 = keine kontinuierliche Infoanzeige
// 1 = kontinuierliche Infoanzeige
// 16 = Nächste Dialogbox-Identifikationsnummer
// 17 = Zuletzt erzeugte Tooltipidentifikationsnummer
// 18 = Polygonverwurfsanzahl
// 19 = Polygonprüfungsabschaltung:
// 0 = Polygonprüfung aktivieren
// 1 = Polygonprüfung abschalten
// 20 = Kursortastenrastermodus:
// 0 = Eingaberaster
// 1 = Pixelraster
// 21 = Flag - Element nicht gesichert
// 22 = Elementbatchlademodus:
// 0 = keinen Batch laden
// 1 = Batch laden
// 2 = Batch laden, Zoomfenster restaurieren
// 23 = Rasterlinienanzeige:
// 0 = Punktraster
// 1 = Linienraster
// 24 = Flag - Spiegelungsanzeige
// 25 = Flag - Eingaberasteranzeige
// 26 = Mausfunktionswiederholungsmodus:
// 0 = Menüfunktion wiederholen
// +1 = Tastenfunktion wiederholen
// +2 = Kontextmenüfunktion wiederholen
// [ 27 = Maximale Undo-Redo-Anzahl: ]
// [ Systemparameter schreibgeschützt ]
// 28 = Menübaumansichtsmodus:
// 0 = Kein Menübaumfenster
// 1 = Menübaumfenster links
// 2 = Menübaumfenster rechts
// 29 = Menübaumansicht Pixelbreite
// 30 = Flag - Meldungshistorie deaktiviert
// 31 = Elementlademeldungsmodus:
// 0 = Standardmeldung
// 1 = Benutzerspezifische Meldung
// 2 = Benutzerspezifische Fehlermeldung
// 32 = Pickmarkeranzeigemodus:
// 0 = Kreismarker
// 1 = Diamantmarker
// 33 = Mausdrag-Status:
// 0 = Kein Mausdrag
// 1 = Mausdragangeforderung
// 2 = Mausdrag durchgeführt
// 3 = Mausdragfreigabeanforderung
// 34 = Flag - Menüfunktionswiederholung angefordert
// 35 = Flag - Funktion abgebrochen
// 36 = Flag - Planauswahlvorschau
// 37 = Dateizugriffsfehler-Anzeigemodus:
// 0 = Nur Statuszeilenanzeige
// 1 = Bestätigungsabfrage
// 38 = Elementauswahl-Referenzanzeigemodus:
// 0 = Projektdatei-Referenzen anzeigen
// 1 = Bibliotheksdatei-Referenzen anzeigen
// 39 = Maus-Doppelklick-Modus:
// 0 = Doppelklick und Selektion von 0 an rechte Maustaste zuweisen
// 1 = Doppelklick ignorieren
// 2 = Doppelklick an rechte Maustaste zuweisen
// 40 = Mauspick-Doppelklick-Modus:
// 0 = Doppelklick an rechte Maustaste zuweisen
// 1 = Doppelklick ignorieren
// [ 41 = Flags - Dialogelementunterstützung: ]
// [ Systemparameter schreibgeschützt ]
// 42 = Fortschrittsanzeigemodus:
// 0 = Keine Fortschrittsanzeige
// 1 = Fortschrittsanzeige
// 43 = Abbruchanforderungsflag für Fortschrittsanzeige:
// 44 = Flag - Mittlere Maustaste deaktiviert:
// [ 45 = Anzahl aktueller Undo-Elemente: ]
// [ Systemparameter schreibgeschützt ]
// [ 46 = Flag - Datei Drag-und-Drop Operation: ]
// [ Systemparameter schreibgeschützt ]
// 47 = Flag - Automatische BAE-Fensteraktivierung
// [ 48 = Anzahl aktive Menüfunktionen ]
// [ Systemparameter schreibgeschützt ]
// [ 49 = Anzahl Punkte in interner Polygonliste ]
// [ Systemparameter schreibgeschützt ]
// 50 = Priorit&auuml;t alternative Konfigurationsdatei
// 51 = Sicherungsmodus für Dialogposition:
// 0 = Absolutkoordinaten specihern
// 1 = Hauptfenster-Relativkoordinaten speichern
// 2 = Hauptfenster-Monitorabsolutkoordinaten speichern
// 52 = Message-Box Default-Button-Index:
// (-1) = Kein Default (Abbruch oder No
// 0-2 = Default-Button-Index
int; // Parameterwert
);
Beschreibung
Die Funktion
bae_setintpar dient dazu, Systemparameter vom Typ
int im
Bartels AutoEngineer zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
bae_setintpar gesetzten Systemparametern können mit der Funktion
bae_getintpar abgefragt werden.
Siehe auch
Funktionen
bae_getdblpar,
bae_getintpar,
bae_getstrpar,
bae_setdblpar,
bae_setstrpar.
bae_setmoduleid - BAE Modulbezeichnung setzen (STD)
Synopsis
int bae_setmoduleid( // Rückgabe Status
string; // Modulbezeichnung
);
Beschreibung
Die Funktion
bae_setmoduleid setzt die Bezeichnung des aktuell aktiven BAE-Programmmoduls. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung der Modulbezeichnung oder ungleich NUll im Fehlerfall.
Siehe auch
Funktion
bae_getmoduleid.
bae_setmousetext - BAE Mausklick-Eingabetext definieren (STD)
Synopsis
int bae_setmousetext( // Status
string; // Antwort-Zeichenkette
);
Beschreibung
Die Funktion
bae_setmousetext definiert die übergebene Antwort-Zeichenkette als Default-Rückgabewert bei Aktivierung einer Maustaste für einen nachfolgenden Aufruf der Funktion
bae_readtext. Ein Aufruf der Funktion
bae_readtext deaktiviert gleichzeitig auch wieder die zuvor mit
bae_setmousetext definierte Möglichkeit der Mausklick-Eingabe.
Siehe auch
Funktion
bae_readtext.
bae_setplanfname - BAE Projekdateiname setzen (STD)
Synopsis
int bae_setplanfname( // Status
string; // BAE-Projektdateiname
);
Beschreibung
Die Funktion
bae_setplanfname setzt den BAE-Projektdateinamen. Die Dateinamenserweiterung
.ddb wird automatisch angefügt, wenn ein BAE-Projektdateiname ohne Dateinamenserweiterung spezifiziert wurde. Der Rückgabewert der Funktion ergibt sich zu Null, wenn der BAE-Projektdateiname erfolgreich gesetzt wurde, zu 1 bei fehlendem bzw. falschem Funktionsparameter oder zu 2, wenn durch ein geladenes Element bereits ein BAE-Projektdateiname definiert ist.
Siehe auch
Funktion
bae_planfname.
bae_setpopdash - BAE Popup/Toolbar Parameter für gestrichelte Linien setzen (STD)
Synopsis
void bae_setpopdash(
double ]0.0,[; // Basisstrichlinie (STD2)
double ]-0.5,0.5[; // Relativer Strichabstand
);
Beschreibung
Die Funktion
bae_setpopdash setzt die Basislänge und den relativen Strichabstand für die Ausgabe gestrichelter Linien in Popupmenüs bzw. Toolbars.
Siehe auch
Funktion
bae_popdrawpoly.
bae_setstrpar - BAE Stringparameter setzen (STD)
Synopsis
int bae_setstrpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Aktueller Element-Kommentartext
// 1 = Aktuelle Element-Spezifikation
// [ 2 = Systemparameter - kein Schreibzugriff ]
// [ 3 = Systemparameter - kein Schreibzugriff ]
// 4 = Fadenkreuz-Infotext
// 5 = Tooltip text
// [ 6 = Systemparameter - kein Schreibzugriff ]
// 7 = Menütext der aktuell aktiven Funktion
// 8 = Aktueller Menüitemelementtext
// 9 = Aktuelle benutzerspezifische Elementlademeldung
// 10 = Zwischenablage-Textstring
// 11 = Modulaufruf nächstes Dateiargument
// 12 = Modulaufruf nächstes Elementargument
// 13 = Modulaufruf nächstes Kommando-/Typargument
// 14 = Letzter Ausgabedateiname
// [ 15 = Systemparameter - kein Schreibzugriff ]
// 16 = Werkzeugleistenschaltfläche Zeichen/Resourceelement
// [ 17 = Systemparameter - kein Schreibzugriff ]
// [ 18 = Systemparameter - kein Schreibzugriff ]
// 19 = Alternatives Verzeichnis für Konfigrationsdaten
// 20 = Spalte lokale Daten
// 21 = Spalt globale Daten
string; // Parameterwert
);
Beschreibung
Die Funktion
bae_setstrpar dient dazu, Systemparameter vom Typ im
string im
Bartels AutoEngineer zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
bae_setstrpar gesetzten Systemparametern können mit der Funktion
bae_getstrpar abgefragt werden.
Siehe auch
Funktionen
bae_getdblpar,
bae_getintpar,
bae_getstrpar,
bae_setdblpar,
bae_setintpar.
bae_settbsize - BAE Toolbarbereich definieren/anzeigen (STD)
Synopsis
void bae_settbsize(
double [0.0,[; // Toolbargröße
int [0,3]; // Toolbar Anordnung/Ausrichtung:
// 0 = horizontal an unterer
// Arbeitsbereichsbegrenzung
// 1 = vertikal an rechter
// Arbeitsbereichsbegrenzung
// 2 = horizontal an oberer
// Arbeitsbereichsbegrenzung
// 3 = vertikal an linker
// Arbeitsbereichsbegrenzung
);
Beschreibung
Mit der Funktion
bae_settbsize kann eine Werkzeugleiste definiert bzw. angezeigt werden. Der erste Parameter gibt dabei in Abhängigkeit vom zweiten Parameter die gewünschte Größe des Toolbarbereichs an. Bei vertikaler Ausrichtung der Toolbar wird dieser Wert als Spaltenanzahl interpretiert, bei horizontaler Ausrichtung hingegen als Zeilenanzahl. Durch die Angabe des Wertes Null für die Toolbargröße kann eine bereits definierte Toolbar wieder ausgeblendet werden. Die Dimension des verfügbaren Grafikarbeitsbereichs zur Anzeige von Toolbars kann mit der Funktion
bae_mtpsize ermittelt werden. Mit der Funktion
bae_tbsize kann die tatsächliche Größe einer mit
bae_settbsize definierten Toolbar nachträglich abgefragt werden. Die Funktion
bae_popsetarea dient dazu, wahlweise die Toolbar oder das Standard-Popupmenü für nachfolgende Popupoperationen zu aktivieren. Mit der Funktion
bae_popclrtool können sämtliche Anzeigen der aktuellen Toolbar gelöscht bzw. deaktiviert werden.
Siehe auch
Funktionen
bae_mtpsize,
bae_popclrtool,
bae_popsetarea,
bae_tbsize.
bae_storecmdbuf - BAE Kommando in Kommandohistorie speichern (STD)
Synopsis
int bae_storecmdbuf( // Status
int [0,[; // Kommandospeichermodus
// 0 : Kommando an Historie anfügen
string; // Kommando- bzw. Kommandosequenzzeichenkette
string; // Kommandoanzeigetext
);
Beschreibung
Die Funktion
bae_storecmdbuf trägt das angegebene Kommando in die aktuelle Kommandohistorie ein. Über den Kommandospeichermodus wird angegeben wo das Kommando in der Historie einzufügen ist und ob bzw. wie die Kommandohistorie umzuorganisieren ist. Die Kommando- bzw. Kommandosequenzzeichenkette und der Kommandoanzeigetext (entsprechend der Titelleistenanzeige) werden über den zweiten und dritten Funktionsparameter angegeben. Der Funktionsrückgabewert ist Null wenn die Zuweisung erfolgreich war oder ungleich Null im anderen Fall.
Siehe auch
Funktion bae_getcmdbuf.
bae_storedistpoly - Internes BAE Distanzabfragepolygon speichern (STD)
Synopsis
int bae_storedistpoly( // Status
);
Beschreibung
Die Funktion
bae_storedistpoly speichert das aktuell mit
bae_clearpoints und
bae_storepoint erzeugte Polygon als Distanzabfragepolygon. Anschließend kann die Funktion
bae_querydist zur Bestimmung des Abstands eines gegebenen Punktes zum Distanzabfragepolygon verwendet werden. Das mit
bae_storedistpoly gespeicherte Distanzabfragepolygon kann mit der Funktion
bae_cleardistpoly wieder gelöscht werden. Der Rückgabewert der Funktion ist Null, wenn kein Fehler aufgetreten ist, (-1) wenn das interne Distanzabfragepolygon bereits definiert ist oder (-2) bei ungültigen Polygondaten.
Siehe auch
Funktionen
bae_cleardistpoly,
bae_clearpoints,
bae_querydist,
bae_storepoint.
bae_storeelem - BAE Element speichern (STD)
Synopsis
int bae_storeelem( // Status
string; // Dateiname
string; // Elementname
);
Beschreibung
Die Funktion
bae_storeelem speichert das aktuell im
AutoEngineer geladene Element unter dem angegebenen Namen in die Zieldatei. Diese Funktion entspricht der Menüfunktion
, d.h. falls in eine andere Datei geschrieben wird, muss gegebenenfalls
aufgerufen werden. Der Rückgabewert ist Null, wenn keine Fehler aufgetreten sind, (-1) bei Dateizugriffsfehlern, 1 bei ungültigen Parametern und 2 wenn kein Element im Speicher vorhanden ist.
bae_storekeyiact - BAE Tasteneingabe vorgeben (STD)
Synopsis
void bae_storekeyiact(
int [0,3]; // Automatischer Interaktionsmodus (STD21)
int; // Tastenzeichencode (ASCII)
);
Beschreibung
Die Funktion
bae_storekeyiact ermöglicht die Steuerung von Tasteneingaben bei der Ausführung von Menüfunktionen über die Funktion
bae_callmenu. Ist der Interaktionsmodus auf Null gesetzt, so wird die Tasteneingabe vom Benutzer erwartet, ansonsten wird der übergebene Tastencode als Eingabe übernommen. Die Vorgaben werden in einer Queue gespeichert, d.h. es sind mehrere Vorgaben zur Steuerung ganzer Eingabeabläufe möglich.
Siehe auch
Funktionen
bae_peekiact,
bae_storemenuiact,
bae_storemouseiact,
bae_storetextiact.
bae_storemenuiact - BAE Menüwahl vorgeben (STD)
Synopsis
void bae_storemenuiact(
int [0,3]; // Automatischer Interaktionsmodus (STD21)
int; // Menüzeile (0..n-1)
int [1,3]; // Maustaste (STD17)
);
Beschreibung
Die Funktion
bae_storemenuiact ermöglicht die Steuerung von Menüeingaben bei der Ausführung von Menüfunktionen über die Funktion
bae_callmenu. Ist der Interaktionsmodus auf Null gesetzt, so wird die entsprechende Menüwahl vom Benutzer erwartet, ansonsten wird die übergebene Menüzeile als Menüwahl mit der entsprechenden Maustaste übernommen. Die Vorgaben werden in einer Queue gespeichert, d.h. es sind mehrere Vorgaben zur Steuerung ganzer Eingabeabläufe möglich.
Siehe auch
Funktionen
bae_peekiact,
bae_storekeyiact,
bae_storemouseiact,
bae_storetextiact.
bae_storemouseiact - BAE Mauseingabe vorgeben (STD)
Synopsis
void bae_storemouseiact(
int [0,3]; // Automatischer Interaktionsmodus (STD21)
double; // Maus X-Koordinate (STD2)
double; // Maus Y-Koordinate (STD2)
int [0,15]; // Mauskoordinatenmodus:
// 0 = angegebene Koordinaten mit Rasterfang benutzen
// 1 = alte Mauskoordinaten benutzen
// 2 = angegebene Koordinaten rasterfrei benutzen
// +4 = Mauszeiger auf angegebene Position setzen
// +8 = BAE-Fenster aktivieren
int [0,3]; // Maustastencode (STD17)
[]; // Tastatureingabe
);
Beschreibung
Die Funktion
bae_storemouseiact ermöglicht die Steuerung von Mauseingaben bei der Ausführung von Menüfunktionen über die Funktion
bae_callmenu. Ist der Interaktionsmodus auf Null gesetzt, so wird die entsprechende Mauseingabe vom Benutzer erwartet, ansonsten werden die übergebenen Mausdaten als Eingabe übernommen. Bei Übergabe des Maustastencodes Null ist über den Tastatureingabeparameter ein Zeichen zu übergeben. Die Vorgaben werden in einer Queue gespeichert, d.h. es sind mehrere Vorgaben zur Steuerung ganzer Eingabeabläufe möglich.
Siehe auch
Funktionen bae_callmenu,
bae_peekiact,
bae_storekeyiact,
bae_storemenuiact,
bae_storetextiact.
bae_storepoint - Punkt in BAE-Punktliste eintragen (STD)
Synopsis
int bae_storepoint( // Status
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
int [0,2]; // Punkttyp (STD15)
);
Beschreibung
Die Funktion
bae_storepoint trägt den übergebenen Punkt in die interne Punktliste ein. Der Rückgabewert ist ungleich Null, wenn ungültige Punktdaten spezifiziert wurden. Die interne Punktliste wird von den modulspezifischen Funktionen
*_storepoly bzw.
*_storepath oder der Funktion
bae_storedistpoly zur Generierung von Polygonen und Leiterbahnen benötigt und kann mit der Funktion
bae_clearpoints wieder gelöscht werden.
Siehe auch
Funktionen
bae_clearpoints,
bae_getpolyrange,
bae_storedistpoly.
bae_storetextiact - BAE Texteingabe vorgeben (STD)
Synopsis
void bae_storetextiact(
int [0,3]; // Automatischer Interaktionsmodus (STD21)
string; // Eingabetext
);
Beschreibung
Die Funktion
bae_storetextiact ermöglicht die Steuerung von Texteingaben bei der Ausführung von Menüfunktionen über die Funktion
bae_callmenu. Ist der Interaktionsmodus auf Null gesetzt, so wird die entsprechende Texteingabe vom Benutzer erwartet, ansonsten wird die übergebene Zeichenkette als Texteingabe übernommen. Die Vorgaben werden in einer Queue gespeichert, d.h. es sind mehrere Vorgaben zur Steuerung ganzer Eingabeabläufe möglich.
Siehe auch
Funktionen
bae_peekiact,
bae_storekeyiact,
bae_storemenuiact,
bae_storemouseiact.
bae_swconfig - BAE Softwarekonfiguration abfragen (STD)
Synopsis
int bae_swconfig( // Software-Konfigurationscode:
// (-1) = ungültige Konfigurationsklasse,
// für Konfigurationsklasse 0:
// 0 = unbekanntes System
// 1 = Bartels ACAD-PCB
// 2 = BAE Professional
// 3 = BAE HighEnd
// für Konfigurationsklasse 1:
// 0 = nicht BAE Demo
// 1 = BAE Demo
// 2 = BAE FabView
// für Konfigurationsklasse 2:
// ungleich Null = BAE Economy
// für Konfigurationsklasse 3:
// 0 = BAE-Standardmenü-Interface
// 1 = BAE-Standardmenü unter Windows
// 2 = BAE-Pulldownmenü unter Windows
// 3 = BAE-Standardmenü unter Motif
// 4 = BAE-Pulldownmenü unter Motif
// für Konfigurationsklasse 4:
// ungleich Null = BAE Light
// für Konfigurationsklasse 5:
// 0 = keine BAE Schematics Software
// 1 = BAE Schematics
// 2 = BAE HighEnd Schematics
// für Konfigurationsklasse 6:
// Versionsgenerierungsnummer (Build-Nummer)
int; // Software-Konfigurationsklasse:
// 0 = Abfrage BAE Software-System
// 1 = Abfrage BAE Demo
// 2 = Abfrage BAE HighEnd
// 3 = Abfrage BAE User Interface
// 4 = Abfrage BAE Light
// 5 = Abfrage BAE Schematics
// 6 = Abfrage Versionsgenerierungsnummer (Build-Nummer)
);
Beschreibung
Die Funktion
bae_swconfig ermittelt die aktuell aktivierte BAE-Softwarekonfiguration. Diese Information wird z.B. für die Funktionen
bae_defmenuprog,
bae_callmenu und
bae_store*iact zur richtigen Behandlung unterschiedlicher Auswahlmenüs in
BAE Professional,
BAE HighEnd,
BAE Economy und
BAE Light mit den verschiedenen Benutzeroberflächen (BAE-Standard, Windows- bzw. Motif-Pulldownmenüs) benötigt.
Siehe auch
Funktion
bae_swversion.
bae_swversion - BAE Softwareversion abfragen (STD)
Synopsis
string bae_swversion( // Softwareversionsangabe oder Betriebssystemeinstellung
int; // Softwareversionsabfragemodus:
// 0 = Abfrage BAE Versionsnummer
// 1 = Abfrage BAE Freigabejahr (Format YY )
// 2 = Abfrage BAE Freigabejahr (Format YYYY )
// 3 = Abfrage betriebssystemspezifisches
// Muster zur Erkennung beliebiger Zeichenketten
// (z.B. * unter Linux, .* unter MS-DOS)
// 4 = Abfrage betriebssystemspezifisches
// Directorytrennzeichen
// (z.B. / unter Linux, \ unter MS-DOS)
);
Beschreibung
Mit der Funktion
bae_swversion können Angaben zur BAE-Softwareversion oder betriebssystemspezifische BAE-Einstellungen entsprechend dem spezifizierten Abfragemodus abgefragt werden.
Siehe auch
Funktion
bae_swconfig.
bae_tbsize - BAE Toolbardimensionen abfragen (STD)
Synopsis
void bae_tbsize(
& double; // Rückgabe Toolbar Textspaltenanzahl
& double; // Rückgabe Toolbar Textzeilenanzahl
);
Beschreibung
Die Funktion
bae_tbsize ermittelt die Größe der mit
bae_settbsize definierten bzw. angezeigten Werkzeugleiste. Die Toolbarbreite wird im Parameter für die Textspaltenanzahl zurückgegeben, während die Toolbarhöhe im Parameter für die Textzeilenanzahl zurückgegeben wird. Mit Hilfe der Funktion
bae_charsize können diese Werte in Standardlängeneinheiten umgerechnet werden.
Siehe auch
Funktionen
bae_charsize,
bae_mtpsize,
bae_settbsize.
bae_twsize - BAE Textarbeitsbereichsgröße abfragen (STD)
Synopsis
void bae_twsize(
& int; // Rückgabe Anzahl Spalten
& int; // Rückgabe Anzahl Zeilen
);
Beschreibung
Die Funktion
bae_twsize ermittelt die aktuelle Größe des Arbeitsbereiches für Textausgaben. Die Größenangaben werden in den beiden Funktionsparametern zurückgegeben und sind als die Anzahl der Spalten bzw. Zeilen des Arbeitsbereiches zu interpretieren. Mit Hilfe dieser Informationen lassen sich Art und Form der Ausgabe auf den Textausgabebereich dynamisch an die BAE-Grafikumgebung anpassen.
Siehe auch
Funktion
bae_mtpsize.
bae_wswinlx - BAE Arbeitsbereich linke Grenze abfragen (STD)
Synopsis
double bae_wswinlx( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_wswinlx entspricht der linken Begrenzungskoordinate des aktuell sichtbaren grafischen Arbeitsbereichsfensters.
bae_wswinly - BAE Arbeitsbereich untere Grenze abfragen (STD)
Synopsis
double bae_wswinly( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_wswinly entspricht der unteren Begrenzungskoordinate des aktuell sichtbaren grafischen Arbeitsbereichsfensters.
bae_wswinux - BAE Arbeitsbereich rechte Grenze abfragen (STD)
Synopsis
double bae_wswinux( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_wswinux entspricht der rechten Begrenzungskoordinate des aktuell sichtbaren grafischen Arbeitsbereichsfensters.
bae_wswinuy - BAE Arbeitsbereich obere Grenze abfragen (STD)
Synopsis
double bae_wswinuy( // Koordinatenwert (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
bae_wswinuy entspricht der oberen Begrenzungskoordinate des aktuell sichtbaren grafischen Arbeitsbereichsfensters.
bae_wsmouse - BAE Arbeitsbereich Mausposition abfragen (STD)
Synopsis
void bae_wsmouse(
& double; // Rückgabe Maus-X-Koordinate (STD2)
& double; // Rückgabe Maus-Y-Koordinate (STD2)
& int; // Rückgabe Mausstatus:
// Bit 0 : jenseits linker
// Arbeitsbereichsbegrenzung
// Bit 1 : jenseits rechter
// Arbeitsbereichsbegrenzung
// Bit 2 : jenseits unterer
// Arbeitsbereichsbegrenzung
// Bit 3 : jenseits oberer
// Arbeitsbereichsbegrenzung
// Bit 4 : linke Maustaste gedrückt
// Bit 5 : rechte Maustaste gedrückt
// Bit 6 : mittlere Maustaste gedrückt
);
Beschreibung
Mit der Funktion
bae_wsmouse können die aktuellen Mauskoordinaten innerhalb des Grafikarbeitsbereichs ermittelt werden. Der Parameter zur Rückgabe des Mausstatus gibt an, welche Maustasten gerade gedrückt sind bzw. ob sich die Mausposition im Augenblick außerhalb der aktuellen Arbeitsbereichsbegrenzung befindet.
Siehe auch
Funktion
bae_popmouse.
catext - Dateinamenserweiterung an Dateiname anhängen (STD)
Synopsis
void catext(
& string; // Dateiname
string; // Dateinamenserweiterung
);
Beschreibung
Die Funktion
catext hängt die angegebene Dateinamenserweiterung an den über den ersten Funktionsparameter spezifierten Dateinamen an sofern dieser nicht bereits mit dieser Dateinamenserweiterung endet.
Siehe auch
Funktion catextadv.
catextadv - Dateinamenserweiterung optional an Dateiname anhängen (STD)
Synopsis
void catextadv(
& string; // Dateiname
string; // Dateinamenserweiterung
int; // Bearbeitungsmodus:
// 0 = Erweiterung nur wenn Dateiname
// keine Erweiterung besitzt
// 1 = Annahme Dateiname besitzt keine
// oder spezifizierte Erweiterung
// 2 = Spezifizierte Erweiterung erzwingen
);
Beschreibung
Die Funktion
catextadv hängt die angegebene Dateinamenserweiterung optional entsprechend des angegebenen Bearbeitungsmodus an den über den ersten Funktionsparameter spezifierten Dateinamen an.
Siehe auch
Funktion catext.
ceil - Gleitkommazahl aufrunden (STD)
Synopsis
double ceil( // Berechnungsergebnis
double; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
ceil entspricht dem nächsten ganzzahligen Gleitkommawert, dessen Wert größer oder gleich dem des übergebenen Gleitkommawertes ist.
clock - Verbrauchte CPU-Zeit ermitteln (STD)
Synopsis
double clock( // Verbrauchte CPU-Zeit (Sekunden)
);
Beschreibung
Der Rückgabewert der Funktion
clock entspricht der seit dem Start des aktuellen BAE-Programmoduls verbrauchten CPU-Zeit in Sekunden.
con_clear - Interne Logische Netzliste löschen (STD)
Synopsis
void con_clear(
);
Beschreibung
Die Funktion
con_clear löscht die mit den Funktionen
con_storepart und
con_storepin erzeugte Logische Netzliste aus dem Hauptspeicher. Dies ist prinzipiell vor dem ersten Aufruf von
con_storepart notwendig um evtl. vorhandene alte Netzlistendaten zu löschen. Diese Funktion sollte in jedem Fall aber auch dann aktiviert werden, wenn die im Speicher befindliche Netzliste nicht mehr benötigt wird, da andernfalls u.U. später ein Speicherüberlauf auftreten kann.
Siehe auch
Funktionen
con_storepart,
con_storepin,
con_write.
con_compileloglib - Logische Bibliotheksdefinition kompilieren (STD)
Synopsis
int con_compileloglib( // Status
string; // DDB-Zieldateiname
string; // Logische Bibliotheksdefinitionsdatei
string; // Logische Bibliotheksdefinition
);
Beschreibung
Die Funktion
con_compileloglib kompiliert die angegebene(n) logischen Bibliotheksdefinitionen und speichert die kompilierten Loglib-Definitionen in der über den ersten Funktionsparameter spezifizierten DDB-Datei. Die logischen Bibliotheksdefinitionen sind in dem für das Utilityprogramm
loglib festglegten Eingabeformat bereitzustellen. Es kann entweder der Inhalt der über den zweiten Funktionsparameter spezifizierten Loglib-Definitionsdatei oder eine im dritten Funktionsparameter angegebene logische Bibliotheksdefinition kompiliert werden. Wird für einen dieser Parameter das Schlüsselwort
NULL angegeben, dann wird der entsprechende Umsetzungsmodus deaktiviert. Der Funktionsrückgabewert ist Null bei erfolgreicher Umsetzung; im Fehlerfall wird ein Wert ungleich Null zurückgegeben.
Siehe auch
Funktionen
con_deflogpart,
con_getlogpart,
lay_deflibname,
scm_defloglname;
BAE Utilityprogramm
loglib.
con_deflogpart - Logische Bauteildefinition in Bibliothek (STD)
Synopsis
int con_deflogpart( // Status
string; // DDB-Zieldateiname
string; // Logischer Bibliotheksteilname
string[]; // Physikalischer Bibliotheksteilname
int [0,1]; // Flag Defaultzuweisung
);
Beschreibung
Die Funktion
con_deflogpart trägt die übergebene logische Bauteildefinition in die angegebene DDB-Zieldatei ein. Die hiermit definierte Zuweisung eines physikalischen Bibliotheksteils an ein Logikbauteil wird vom
Packager des
AutoEngineers zur Umsetzung logischer in physikalische Netzlisten benötigt. Der mit
con_deflogpart definierte Bibliothekseintrag stellt eine 1:1-Zuweisung dar, d.h. der
Packager wird bei einem derartig definierten Bauteil keine Pinnamensumsetzung vornehmen. Auch können mit
con_deflogpart keine Gatterzuweisungen, Pin/Gate-Swaps, Stromversorgungsanschlüsse oder Attributwertzuweisungen definiert werden. Ist für den physikalischen Bibliotheksteilnamen ein Leerstring angegeben, dann erfolgt die Zuweisung an ein virtuelles Bauteil. Wird eine Liste von Namen für das physikalischen Bibliotheksteil übergeben, dann werden entsprechend dieser Namensliste zulässige Alternativbauformen für die Funktionen zum Gehäusewechsel im Layout eingetragen. Ist das Flag für die Defaultzuweisung gesetzt, dann ist eine explizite Gehäusezuweisung über das Attribut
$plname erlaubt. Der Funktionsrückgabewert ist Null bei erfolgreicher Bauteildefinition, (-1) bei fehlenden bzw. ungültigen Parametern, oder (-2) wenn ein Fehler bei der Bauteildefinition aufgetreten ist.
Siehe auch
Funktionen
con_compileloglib,
con_getlogpart; BAE-Utilityprogramm
loglib.
con_getddbpattrib - Bauteil-/Pinattribut in DDB-Datei abfragen (STD)
Synopsis
int con_getddbpattrib( // Status
string; // DDB-Dateiname
string; // Bauteilname
string; // Pinname
& string; // Attributname
// oder Leerstring für Planname
// oder ! für erstes Attribut
// oder !$attrname für nächstes Attribut
& string; // Attributwert Rückgabe
);
Beschreibung
Die Funktion
con_getddbpattrib ermittelt einen Bauteil- oder Pinattributwert in einer DDB-Datei. Der Funktionsrückgabewert ist 1, wenn der Attributwert gefunden wurde, Null wenn das angegebene Attribut nicht existiert, oder (-1) bei Dateizugriffsfehlern. Wird für den Pinnamen ein Leerstring angegeben, dann erfolgt eine Bauteilattributabfrage, ansonsten wird der Pinattributwert ermittelt.
Bei der Spezifikation von Platzhaltern für den Attributnamen (! bzw. !$attrname ) wird der darüber adressierte Attributname im entsprechenden Funktionsparamter zurückgegeben.
Siehe auch
Funktion
con_setddbpattrib.
con_getlogpart - Logische Bauteildefinition abfragen (STD)
Synopsis
int con_getlogpart( // Status
string; // LOGLIB-Dateiname
string; // Elementname
int; // Anzahl Ausgabespalten
& string; // Definitionsrückgabestring
);
Beschreibung
Die Funktion
con_getlogpart schreibt die logische Bauteildefinition für das angegebene Element formatiert in den Rückgabestring. Der Rückgabewert ist gleich Null, wenn die Loglib-Information erfolgreich gespeichert wurde, (-1) bei fehlenden bzw. ungültigen Parametern, (-2) wenn die Datei nicht gefunden wurde, (-3) wenn das Element nicht in der Datei gefunden wurde oder (-4) wenn die Loglib-Information nicht erfolgreich geladen werden konnte. Für den LOGLIB-Dateinamen wird üblicherweise ein Projektdateiname oder der mit
scm_defloglname abfragbare default Layoutbibliotheksname für den
Packager-Lauf angegeben.
Siehe auch
Funktionen
con_compileloglib,
con_deflogpart,
lay_deflibname,
scm_defloglname; BAE Utilityprogramm
loglib.
con_setddbpattrib - Bauteil-/Pinattribut in DDB-Datei setzen (STD)
Synopsis
int con_setddbpattrib( // Status
string; // DDB-Dateiname
string; // Bauteilname
string; // Pinname
string; // Attributname
string; // Attributwert
);
Beschreibung
Mit der Funktion
con_setddbpattrib kann ein Bauteil- oder Pin-Attributwert in einer DDB-Datei gesetzt werden. Der Rückgabewert der Funktion ist ungleich Null, wenn ein Fehler aufgetreten ist. Die Angabe des Bauteilnamens ist zwingend, das darüber spezifizierte Bauteil muss in der Netzliste der DDB-Datei definiert sein. Die Angabe des Pinnamens ist optional; wird für den Pinnamen ein Leerstring angegeben, dann wird der Attributwert als Bauteilattribut interpretiert, ansonsten erfolgt der Eintrag eines Pinattributs. Weder Bauteil- noch Pinname dürfen Großbuchstaben enthalten. Der Attributname muss mit dem Zeichen
$ beginnen und darf ebenfalls keine Großbuchstaben enthalten. Für den Attributwert darf ein Leerstring zum Zurücksetzen des Wertes angegeben werden; die maximal speicherbare Länge des Attributwert-Strings beträgt 40 Zeichen.
Bei Spezifikation des konstanten Attributwerts
PA_NILVAL wird das Attribut (entsprechend der Schaltfläche
im
Schaltplaneditor) komplett zurückgesetzt.
Siehe auch
Funktion
con_getddbpattrib.
con_storepart - Interne Logische Netzliste Bauteil speichern (STD)
Synopsis
int con_storepart( // Status
string; // Logischer Bauteilname
string; // Logischer Bauteilbibliotheksname
);
Beschreibung
Die Funktion
con_storepart trägt das übergebene Logische Bauteil in die Bauteilliste der aktuell im Hauptspeicher befindlichen internen Logischen Netzliste ein. Der Rückgabewert ist gleich Null, wenn das Bauteil erfolgreich gespeichert wurde, (-1) bei fehlenden bzw. ungültigen Parametern, oder (-2) wenn das Bauteil bereits in der Netzliste definiert ist. Die interne Logische Netzliste kann mit
con_write in einer DDB-Datei abgelegt werden oder mit
con_clear wieder aus dem Hauptspeicher gelöscht werden.
Warnung
Durch die Verwendung der
con_store*-Funktionen wird Hauptspeicher belegt. Wenn die mit diesen Funktionen erzeugten Netzlistendaten nicht mehr benötigt werden, dann sollte in jedem Fall die im Speicher befindliche Netzliste mit
con_write oder mit
con_clear wieder gelöscht werden, um Speicherplatzproblemen vorzubeugen.
Siehe auch
Funktionen
con_clear,
con_storepin,
con_write.
con_storepin - Interne Logische Netzliste Pin speichern (STD)
Synopsis
int con_storepin( // Status
string; // Logischer Bauteilname
string; // Logischer Bauteilpinname
string; // Netzname
);
Beschreibung
Die Funktion
con_storepin trägt den übergebenen Logischen Bauteilpin in die aktuell im Hauptspeicher befindliche Logische Netzliste ein. Voraussetzung hierfür ist, dass ein Bauteil mit dem angegebenen Namen bereits vorher mit
con_storepart definiert wurde. Ist für den Netznamen ein Leerstring angegeben, dann wird der Pin an kein Netz der Netzliste angeschlossen; im anderen Fall wird der angegebene Pin an das entsprechende Netz angeschlossen. Ist in der Netzliste noch kein Netz mit dem angegebenen Name definiert, dann wird dieses automatisch erzeugt. Der Rückgabewert ist gleich Null, wenn der Bauteilpin erfolgreich gespeichert wurde, (-1) bei fehlenden bzw. ungültigen Parametern, (-2) wenn das Bauteil noch nicht definiert ist, (-3) wenn der Pin bereits angeschlossen ist, oder (-4) wenn zu viele Netze definiert wurden.
Warnung
Durch die Verwendung der
con_store*-Funktionen wird Hauptspeicher belegt. Wenn die mit diesen Funktionen erzeugten Netzlistendaten nicht mehr benötigt werden, dann sollte in jedem Fall die im Speicher befindliche Netzliste mit
con_write oder mit
con_clear wieder gelöscht werden, um Speicherplatzproblemen vorzubeugen.
Siehe auch
Funktionen
con_clear,
con_storepart,
con_write.
con_write - Interne Logische Netzliste auf Datei ausgeben (STD)
Synopsis
int con_write( // Status
string; // DDB-Dateiname
string; // Netzlisten-Elementname
);
Beschreibung
Die Funktion
con_write dient dazu, die mit den
con_store*-Funktionen erzeugte, aktuell im Hauptspeicher befindliche Logische Netzliste in der angegebenen DDB-Datei unter dem spezifizierten Elementnamen abzulegen. Darüber hinaus löscht
con_write die interne Netzliste wieder aus dem Hauptspeicher. Der Rückgabewert ist gleich Null, wenn die Netzliste erfolgreich gespeichert wurde, (-1) bei fehlenden bzw. ungültigen Parametern, (-2) wenn keine Netzlistendaten definiert sind, oder (-3) wenn ein Fehler bei der Ausgabe auf die DDB-Datei aufgetreten ist. Das Format der durch
con_write in der DDB-Datei abgelegten Logischen Netzliste entspricht dem Netzlistenformat, wie es durch den
Schaltplaneditor des
Bartels AutoEngineer erzeugt wird, d.h. die mit
con_write generierte Netzliste kann anschließend durch einen
Packager-Lauf in das Layoutsystem des
Bartels AutoEngineer übernommen werden.
Warnung
Die
con_*-Funktionen stellen ein sehr mächtiges Hilfsmittel zur Übernahme von Fremdnetzlisten in den
Bartels AutoEngineer dar. Dennoch bleibt zu beachten, dass eine unsachgerechter Anwendung dieser Funktionen unter Umständen eine inkonsistente und kaum mehr korrigierbare Vermischung von Netzlistendaten verursachen kann. Es wird daher nachdrücklich empfohlen, stets durch eine vorherige Prüfung der in der Zieldatei abgelegten Daten eine kontrollierte, d.h. konfliktfreie Netzlistenübernahme sicherzustellen.
Siehe auch
Funktionen
con_clear,
con_storepart,
con_storepin.
convstring - Zeichenkette konvertieren (STD)
Synopsis
string convstring( // Rückgabe konvertierte Zeichenkette
string; // Eingabezeichenkette
int; // Konvertierungsmodus:
// 0 = Dateiname ohne Namenserweiterung ermitteln
// 1 = Dateiname ohne Verzeichnispfad ermitteln
// 2 = Dateiname ohne Namenserweiterung
// und Verzeichnispfad ermitteln
);
Beschreibung
Die Funktion
convstring wandelt die Eingabezeichenkette entsprechend dem angegebenen Konvertierungsmodus um und gibt das Ergebnis der Zeichenkettenumwandlung als Rückgabewert zuück.
cos - Cosinus berechnen (STD)
Synopsis
double cos( // Berechnungsergebnis
double; // Winkel (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
cos entspricht dem Cosinus des übergebenen Winkels. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
cosh - Hyperbolischen Cosinus berechnen (STD)
Synopsis
double cosh( // Berechnungsergebnis
double; // Winkel (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
cosh entspricht dem hyperbolischen Cosinus des übergebenen Winkels. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
cvtangle - Winkel in andere Einheit umwandeln (STD)
Synopsis
double cvtangle( // Winkel (in Ausgabemaßeinheiten)
double; // Winkel (in Eingabemaßeinheiten)
int [0,3]; // Eingabemaßeinheit
int [0,3]; // Ausgabemaßeinheit
);
Beschreibung
Der Rückgabewert der Funktion
cvtangle entspricht der Konvertierung des übergebenen Winkels von der Eingabe- in die Ausgabemaßeinheit. Mögliche Werte für die Maßeinheiten sind 0 für interne Winkel (Bogenmaß, STD3), 1 für Gradmaß, 2 für Bogenmaß
(STD3) und 3 für Neugrad Winkel.
cvtlength - Länge in andere Einheit umwandeln (STD)
Synopsis
double cvtlength( // Länge (in Ausgabemaßeinheiten)
double; // Länge (in Eingabemaßeinheiten)
int [0,4]; // Eingabemaßeinheit
int [0,4]; // Ausgabemaßeinheit
);
Beschreibung
Der Rückgabewert der Funktion
cvtlength entspricht der Konvertierung der übergebenen Länge von der Eingabe- in die Ausgabemaßeinheit. Mögliche Werte für die Maßeinheiten sind 0 für Meter
(STD2), 1 für Inch, 2 für mm, 3 für mil und 4 für Mikrometer.
ddbcheck - DDB-Element auf verfügbarkeit prüfen (STD)
Synopsis
int ddbcheck( // Rückgabe Abfragestatus
string; // DDB-Dateiname
int; // DDB-Datenbankklasse (STD1)
// bzw. (-1) bei gültiger DDB-Dateiprüfung
string; // Elementname bzw. Leerstring bei Prüfung auf beliebige Klassenelemente
);
Beschreibung
Die Funktion
ddbcheck prüft, ob ein Element der spezifizierten Datenbankklasse mit dem angegebenen Namen in der über den Dateinamen spezifizierten DDB-Datei existiert. Wird anstelle einer gültigen Datenbankklasse der Wert (-1) übergeben, dann prüft
ddbcheck lediglich, ob die angegebene Datei verfügbar und eine DDB-Datei ist. Wird ein Leerstring für den Elementnamen übergeben, dann prüft
ddbcheck lediglich, ob überhaupt Elemente der spezifizierten Datenbankklasse in der angegebenen Datei existieren. Der Funktionsrückgabewert is Null, wenn das spezifizierte DDB-Objekt existiert bzw. gefunden wurde oder (-1) im anderen Fall.
Siehe auch
Funktionen
ddbclassscan,
ddbelemrefcount,
ddbelemrefentry.
ddbclassid - DDB-Elementklasse Bezeichnung abfragen (STD)
Synopsis
string ddbclassid( // Rückgabe DDB-Klassenbezeichnung oder Leerstring
int ]0,[; // DDB-Datenbankklasse (STD1)
);
Beschreibung
Die Funktion
ddbclassid ermittelt die Bezeichnung der spezifizierten Datenbankklasse und übergibt diese mit dem Funktionsrückgabewert. Bei Spezifikation unbekannter bzw. ungültiger DDB-Datenbankklassen wird ein Leerstring zurückgegeben.
ddbclassscan - DDB-Elementklasse abarbeiten (STD)
Synopsis
int ddbclassscan( // Abarbeitungsstatus
string; // DDB-Dateiname
int ]0,[; // Element Datenbankklasse (STD1)
* int; // Elementname Abarbeitungsfunktion
);
Beschreibung
Die Funktion
ddbclassscan arbeitet alle Elemente der spezifizierten Datenbankklasse aus der angegebenen DDB-Datei ab. Dabei wird für jedes Element automatisch eine benutzerdefinierte Abarbeitungsfunktion aufgerufen sofern für den entsprechenden Parameter nicht das Schlüsselwort
NULL eingetragen ist. Der Funktionsrückgabewert gibt entweder die Anzahl der abgearbeiteten bzw. gefundenen Elemente an, oder ergibt sich zu (-1) bei ungültigen Parameterangaben oder bei einem Fehlerstatus aus der Abarbeitungsfunktion.
Abarbeitungsfunktion
int callbackfunction( // Abarbeitungsstatus
string ename // Elementname
)
{
// Verarbeitungsprogramm
:
return(scanstatus);
}
Der Rückgabewert der Abarbeitungsfunktion sollte 1 sein, wenn die Abarbeitung fortgesetzt werden soll, 0 wenn die Abarbeitung beendet werden soll, oder (-1) bei einem (benutzerdefinierten) Fehler.
Siehe auch
Funktionen
ddbcheck,
ddbelemrefcount,
ddbelemrefentry.
ddbcopyelem - DDB-Dateielement kopieren (STD)
Synopsis
int ddbcopyelem( // Status
string; // DDB-Quelldateiname
string; // DDB-Zieldateiname
int ]0,[; // DDB-Datenbankklasse (STD1)
string; // DDB-Elementname
int [0,1]; // Merge Source Flag:
// 0 = existierende Zieldateielemente
// werden nicht überschrieben
// 1 = existierende Zieldateielemente
// werden überschrieben
);
Beschreibung
Die Funktion
ddbcopyelem kopiert das angegebene DDB-Element der spezifizierten DDB-Datenbankklasse mit allen abhängigen bzw. referenzierten Elementen von der DDB-Quelldatei in die DDB-Zieldatei. Der Elementname bleibt beim Kopiervorgang erhalten, d.h. die Quell- und Zieldateien müssen unterschiedlich sein. Der letzte Funktionsparameter gibt an, ob existierende Elemente in der Zieldatei überschrieben werden dürfen (Merge Source; Quelldatei ist Master) oder nicht (Merge Destination; Zieldatei ist Master). Der Funktionsrückgabewert ergibt sich zu Null, wenn der Kopiervorgang erfolgreich war; im anderen Fall (ungültige bzw. unvollständige Parameterangaben oder DDB-Dateizugriff fehlgeschlagen) wird der Wert (-1) zurückgegeben.
Warnungen
Die Funktion
ddbcopyelem unterliegt nicht dem
-Mechanismus, da sie auf DDB-Dateiebene arbeitet. Daher sollte diese Funktion mit größter Vorsicht benutzt werden, um ein versehentliches Überschreiben von BAE-Design- bzw. BAE-Systemdaten zu vermeiden.
Siehe auch
Funktionen ddbdelelem,
ddbrenameelem.
ddbdelelem - DDB-Dateielement löschen (STD)
Synopsis
int ddbdelelem( // Status
string; // DDB-Dateiname
int ]0,[; // DDB-Datenbankklasse (STD1)
string; // DDB-Elementname
);
Beschreibung
Die Funktion
ddbdelelem löscht das angegebene DDB-Element der spezifizierten DDB-Datenbankklasse aus der angegebenen DDB-Datei. Der Funktionsrückgabewert ergibt sich zu Null, wenn der Löschvorgang erfolgreich war; im anderen Fall (ungültige bzw. unvollständige Parameterangaben oder DDB-Dateizugriff fehlgeschlagen) wird der Wert (-1) zurückgegeben.
Warnungen
Die Funktion
ddbdelelem unterliegt nicht dem
-Mechanismus, da sie auf DDB-Dateiebene arbeitet. Daher sollte diese Funktion mit größter Vorsicht benutzt werden, um ein versehentliches Löschen von BAE-Design- bzw. BAE-Systemdaten zu vermeiden.
Siehe auch
Funktionen ddbcopyelem,
ddbrenameelem.
ddbelemrefcount - DDB-Dateielement Referenzanzahl abfragen (STD)
Synopsis
int ddbelemrefcount( // Rückgabe Referenzanzahl oder (-1)
string; // DDB-Dateiname
int ]0,[; // DDB-Datenbankklasse (STD1)
string; // DDB-Elementname
);
Beschreibung
Die Funktion
ddbelemrefcount ermittelt die Anzahl der Bibliothekselemente, die von dem angegebenen DDB-Element referenziert werden. Die Angabe des DDB-Elements erfolgt durch die Spezifikation von DDB-Dateiname, DDB-Datenbankklasse sowie Elementname über die entsprechenden Funktionsparameter. Der Funktionsrückgabewert gibt die Anzahl der referenzierten Bibliothekselemente an bzw. ergibt sich zu (-1), wenn das angegebene DDB-Element nicht existiert bzw. nicht verfügbar ist. Zur selektiven Ermittlung der DDB-Datenbankklassen und der Elementnamen einzelner Bibliotheksreferenzeinträge eines DDB-Elements kann die Funktion
ddbelemrefentry benutzt werden.
Siehe auch
Funktionen
ddbcheck,
ddbclassscan,
ddbelemrefentry.
ddbelemrefentry - DDB-Dateielement Referenzeintrag abfragen (STD)
Synopsis
int ddbelemrefentry( // Rückgabe Abfragestatus
string; // DDB-Dateiname
int ]0,[; // DDB-Datenbankklasse (STD1)
string; // DDB-Elementname
int ]0,[; // Referenzeintrag Index
& int ]0,[; // Referenzeintrag DDB-Klasse (STD1)
& string; // Referenzeintrag Elementname
);
Beschreibung
Die Funktion
ddbelemrefentry ermittelt die Datenbankklasse und den Elementnamen eines durch das angegebene DDB-Element referenzierten Bibliothekselements. Die Angabe des abzufragenden Referenzeintrags erfolgt durch die Spezifikation des DDB-Dateinamens, der DDB-Datenbankklasse und des Namens des DDB-Elements sowie durch die Spezifikation eines Index in die Liste der zu diesem DDB-Element definierten Bibliotheksreferenzen. Die Anzahl der Bibliotheksreferenzen des DDB-Elements kann mit der Funktion
ddbelemrefcount ermittelt werden und bestimmt zugleich die Obergrenze für gültige Indizes in die Referenzliste an. Der Funktionsrückgabewert ergibt sich zu Null, wenn die Abfrage erfolgreich war bzw. zu (-1) im anderen Fall.
Siehe auch
Funktionen
ddbcheck,
ddbclassscan,
ddbelemrefcount.
ddbgetelemcomment - DDB-Dateielement Kommentartext abfragen (STD)
Synopsis
int ddbgetelemcomment( // Status
string; // DDB-Dateiname
int ]0,[, // DDB-Datenbankklasse (STD1)
string; // DDB-Elementname
& string; // Rückgabe Kommentartext
);
Beschreibung
Die Funktion
ddbgetelemcomment dient der Abfrage von mit
ddbsetelemcomment gesetzten Kommentartexten für DDB-Dateielemente.
Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) bei fehlenden oder ungütigen Parametern oder wenn das DDB-Dateielement bzw. der Kommentartext nicht gefunden wurde.
Siehe auch
Funktion ddbsetelemcomment.
ddbgetlaypartpin - DDB-Dateielement Layoutbauteilpindaten abfragen (STD)
Synopsis
int ddbgetlaypartpin( // Rückgabe Abfragestatus:
// ( 0) = kein Fehler, Abfrageergebnis gültig
// (-1) = DDB-Dateizugriffsfehler
// (-2) = Ungültige Parameter
// (-3) = Bauteilsymbol nicht gefunden
// (-4) = Pin nicht definiert
string; // DDB-Dateiname
string; // Layoutbauteilsymbolname
int [0,[; // Pinindex
& string; // Pinname
& string; // Pinsymbolname
& double; // Pin-X-Position (STD2)
& double; // Pin-Y-Position (STD2)
& double; // Pin-Drehwinkel (STD3)
& int; // Pin-Spiegelungsmodus (STD14)
);
Beschreibung
Mit der Funktion
ddbgetlaypartpin können in der angegebenen DDB-Datei Informationen über die auf dem angegebenen Layoutbauteilsymbol definierten Pins abgefragt werden. Zur Abfrage aller Pins eines existierenden Layoutbauteilsymbols kann die Funktion solange mit aufsteigendem Pinindex aufgerufen werden, bis der Funktionsrückgabewert einen nicht definierten Pin signalisiert.
Siehe auch
Funktionen
ddbcheck,
ddbclassscan,
ddbelemrefcount,
ddbelemrefentry.
ddbrenameelem - DDB-Dateielement umbenennen (STD)
Synopsis
int ddbrenameelem( // Status
string; // DDB-Dateiname
int ]0,[, // DDB-Datenbankklasse (STD1)
string; // Alter DDB-Elementname
string; // Neuer DDB-Elementname
);
Beschreibung
Die Funktion
ddbrenameelem ändert den Elementnamen des angegebenen DDB-Dateielements. Der Funktionsrückgabewert ergibt sich zu Null bei erfolgreicher Umbenennung; im anderen Fall (ungültige bzw. unvollständige Parameterangaben oder DDB-Dateizugriff fehlgeschlagen) wird der Wert (-1) zurückgegeben.
Warnungen
Die Funktion
ddbrenameelem unterliegt nicht dem
-Mechanismus, da sie auf DDB-Dateiebene arbeitet. Daher sollte diese Funktion mit größter Vorsicht benutzt werden, um ein versehentliches Umbenennen von BAE-Design- bzw. BAE-Systemdaten zu vermeiden.
Siehe auch
Funktionen ddbcopyelem,
ddbdelelem.
ddbsetelemcomment - DDB-Dateielement Kommentartext setzen (STD)
Synopsis
int ddbsetelemcomment( // Status
string; // DDB-Dateiname
int ]0,[, // DDB-Datenbankklasse (STD1)
string; // DDB-Elementname
string; // Kommentartext
);
Beschreibung
Mit der Funktion
ddbsetelemcomment können Kommentartexte zur späteren Abfrage mit der Funktion
ddbgetelemcomment an DDB-Dateielemente zugewiesen werden.
Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung oder (-1) bei fehlenden oder ungütigen Parametern oder wenn das DDB-Dateielement bzw. der Kommentartext nicht gefunden wurde.
Befindet sich das bearbeitete DDB-Element gerade im Arbeitsspeicher, dann wird die Kommentarzuweisung auch dort durchgeführt.
Siehe auch
Funktion ddbgetelemcomment.
ddbupdtime - DDB-Dateielement Änderungsdatum abfragen (STD)
Synopsis
int ddbupdtime( // Status
string; // Dateiname
int [100,[; // Elementklasse (STD1)
string; // Elementname
& int; // Rückgabe Sekunden nach Minutenanfang
& int; // Rückgabe Minuten nach Stundenanfang
& int; // Rückgabe Stunden nach Mitternacht
& int; // Rückgabe Tage nach Monatsanfang
& int; // Rückgabe Monate nach Jahresanfang
& int; // Rückgabe Jahr
);
Beschreibung
Die Funktion
ddbupdtime gibt in den Rückgabeparametern Datum und Zeit der letzten Änderung, die an dem angegebenen Datanbankelement durchgeführt wurde, zurück. Der Rückgabewert ist 1 wenn keine Fehler aufgetreten sind, 0 wenn das angegebene Element nicht in der Datenbankdatei vorhanden ist und (-1) wenn beim Dateizugriff Fehler aufgetreten sind oder die übergebenen Parameter ungültig sind.
dirscan - Dateiverzeichniseinträge abarbeiten (STD)
Synopsis
int dirscan( // Abarbeitungsstatus
string; // Verzeichnispfadname
string; // Dateinamenserweiterung:
// .EXT = Namensendung .EXT
// .* = alle Dateien/Verzeichnisse
* int; // Dateiname Abarbeitungsfunktion
);
Beschreibung
Die Funktion
dirscan arbeitet alle Dateinamen mit der spezifizierten Dateinamenserweiterung aus dem angegebenen Verzeichnis ab. Dabei wird für jeden Dateinamen automatisch eine benutzerdefinierte Abarbeitungsfunktion aufgerufen sofern für den entsprechenden Parameter nicht das Schlüsselwort NULL eingetragen ist. Der Funktionsrückgabewert gibt entweder die Anzahl der abgearbeiteten bzw. gefundenen Dateinamen an, oder ergibt sich zu (-1) bei ungültigen Parameterangaben oder bei einem Fehlerstatus aus der Abarbeitungsfunktion.
Abarbeitungsfunktion
int callbackfunction( // Abarbeitungsstatus
string fname // Dateiname
)
{
// Verarbeitungsprogramm
:
return(scanstatus);
}
Der Rückgabewert der Abarbeitungsfunktion sollte 1 sein, wenn die Abarbeitung fortgesetzt werden soll, 0 wenn die Abarbeitung beendet werden soll, oder (-1) bei einem (benutzerdefinierten) Fehler.
existddbelem - DDB-Dateielement Existenz prüfen (STD)
Synopsis
int existddbelem( // Status
string; // Dateiname
int [100,[; // Elementklasse (STD1)
string; // Elementname
);
Beschreibung
Der Rückgabewert der Funktion
existddbelem gibt an, ob das angegebene Element nicht in der Datenbankdatei vorhanden ist. Der Rückgabewert ist 1 wenn das Element gefunden wurde, 0 wenn das angegebene Element nicht in der Datenbankdatei vorhanden ist und (-1) wenn beim Dateizugriff Fehler aufgetreten sind oder die übergebenen Parameter ungültig sind.
exit - Programm verlassen (STD)
Synopsis
void exit(
int; // Rückgabe Status
);
Beschreibung
Die Funktion
exit beendet das aktuelle
User Language-Programm mit dem übergebenen Status.
Warnung
Der Rückgabestatus wird derzeit nicht von der Interpreterumgebung ausgewertet.
Siehe auch
Funktion ulsystem_exit.
exp - Exponentialfunktion (STD)
Synopsis
double exp( // Berechnungsergebnis
double; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
exp entspricht dem Wert der Exponentialfunktion für den übergebenen Gleitkommawert.
fabs - Absolutwert eines Gleitkommawertes (STD)
Synopsis
double fabs( // Berechnungsergebnis
double; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
fabs entspricht dem Absolutwert des übergebenen Gleitkommawertes.
fclose - Datei schließen (STD)
Synopsis
int fclose( // Status
int; // Dateideskriptor
);
Beschreibung
Die Funktion
fclose schließt die durch den Dateideskriptor beschriebene Datei. Der Rückgabewert ist ungleich Null, wenn beim Schließen der Datei ein Fehler aufgetreten ist.
fcloseall - Alle offenen Dateien schließen (STD)
Synopsis
int fcloseall( // Status
);
Beschreibung
Die Funktion
fcloseall schließt alle durch das aktuelle
User Language-Programm geöffneten Dateien. Der Rückgabewert ist ungleich Null, wenn beim Schließen der Dateien ein Fehler aufgetreten ist.
feof - Prüfen ob Dateiende erreicht (STD)
Synopsis
int feof( // Status
int; // Dateideskriptor
);
Beschreibung
Der Rückgabewert der Funktion
feof ist ungleich Null, wenn das Ende der durch den Dateideskriptor beschriebenen Datei erreicht ist.
fgetc - Zeichen aus Datei einlesen (STD)
Synopsis
int fgetc( // Zeichencode (oder -1 bei EOF)
int; // Dateideskriptor
);
Beschreibung
Die Funktion
fgetc liest ein Zeichen aus der durch den Dateideskriptor beschriebenen Datei. Der Rückgabewert der Funktion entspricht dem gelesenen Zeichen oder (-1), wenn beim Lesen ein Fehler aufgetreten ist, oder wenn das Dateiende erreicht ist. Bei einem Rückgabewert von (-1) sollte also in jedem Fall (mit der Funktion
feof) überprüft werden, ob das Dateiende erreicht ist. Hierzu ist vorher der Fehlerbehandlungsmodus für die Dateizugriffsfunktionen entsprechend zu setzen (siehe Funktion
fseterrmode).
fgets - Zeichenkette aus Datei einlesen (STD)
Synopsis
int fgets( // Status
& string; // Rückgabe Zeichenkette
int; // Maximale Einleselänge
int; // Dateideskriptor
);
Beschreibung
Die Funktion
fgets liest eine Zeichenkette aus der durch den Dateideskriptor beschriebenen Datei. Der Rückgabewert der Funktion ist ungleich Null, wenn beim Lesen ein Fehler aufgetreten ist, oder wenn das Dateiende erreicht ist. Bei einem Rückgabewert von (-1) sollte also in jedem Fall (mit der Funktion
feof) überprüft werden, ob das Dateiende erreicht ist. Hierzu ist vorher der Fehlerbehandlungsmodus für die Dateizugriffsfunktionen entsprechend zu setzen (siehe Funktion
fseterrmode).
filemode - Dateimodus abfragen (STD)
Synopsis
int filemode( // Dateimodus
string; // Dateiname
);
Beschreibung
Die Funktion
filemode ermittelt den Dateimodus bzw. die Zugriffsberechtigung für die angegebene Datei. Der Funktionsrückgabewert ist 0 bei Schreibzugriff, 1 bei Lesezugriff oder (-1), wenn der Zugriff auf die Datei fehlgeschlagen ist.
Siehe auch
Funktionen filesize,
filetype.
filesize - Dateigröße abfragen (STD)
Synopsis
int filesize( // Dateigröße in Bytes oder (-1) bei Fehler
string; // Dateiname
);
Beschreibung
Die Funktion
filesize ermittelt die Dateigröße der angegebenen Datei. Der Funktionsrückgabewert gibt entweder die ermittelte Dateigröße in Bytes an oder ergibt sich zu (-1), wenn der Zugriff auf die Datei fehlgeschlagen ist.
Siehe auch
Funktionen filemode,
filetype.
filetype - Dateityp abfragen (STD)
Synopsis
int filetype( // Rückgabe Dateityp:
// (-1) = Dateizugriff fehlgeschlagen
// ( 0) = Verzeichnis
// ( 1) = Reguläre Datei
// ( 2) = Textdatei
string; // Dateiname
);
Beschreibung
Die Funktion
filetype ermittelt den Typ der angegebenen Datei. Der Funktionsrückgabewert gibt entweder den ermittelten Dateityp an oder ergibt sich zu (-1), wenn der Zugriff auf die Datei fehlgeschlagen ist.
Siehe auch
Funktionen filemode,
filesize.
floor - Gleitkommawert abrunden (STD)
Synopsis
double floor( // Berechnungsergebnis
double; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
floor entspricht dem nächsten ganzzahligen Gleitkommawert, dessen Wert kleiner oder gleich dem des übergebenen Gleitkommawertes ist.
fmod - Gleitkommadivision Rest berechnen (STD)
Synopsis
double fmod( // Berechnungsergebnis
double; // Dividend
double; // Divisor
);
Beschreibung
Der Rückgabewert der Funktion
fmod entspricht dem Rest der Division von Dividend und Divisor.
fopen - Datei öffnen (STD)
Synopsis
int fopen( // Status
string; // Dateiname
int [0,14]; // Zugriffsmodus:
// 0 = r Lesen (einzig gültiger BAE Demo Zugriffsmodues ohne |8 )
// 1 = w Schreiben
// 2 = a Anfügen
// 3 = rb Lesen binär
// 4 = wb Schreiben binär
// 5 = ab Anfügen binär
// |8 = Datei automatisch schließen (für BAE Demo Schreibtests)
);
Beschreibung
Die Funktion
fopen öffnet die angegebene Datei zur Bearbeitung mit dem gewünschten Zugriffsmodus. Bei Schreibzugriff wird die Datei gegebenenfalls neu erzeugt. Der Rückgabewert der Funktion beträgt (-1), wenn beim Öffnen/Erzeugen der Datei ein Fehler aufgetreten ist, oder entspricht dem zur weiteren Bearbeitung benötigten Dateideskriptor.
Einschränkung
In den Demo-Konfigurationen der BAE-Software kann mit
fopen nur lesend auf Dateien zugegriffen werden.
fprintf - Formatierte Ausgabe auf Datei (STD)
Synopsis
int fprintf( // Status
int; // Dateideskriptor
string; // Formatzeichenkette
[] // Parameterliste
);
Beschreibung
Die Funktion
fprintf schreibt die in der Parameterliste enthaltenen Daten formatiert in die durch den Dateideskriptor beschriebene Datei. Die Formatzeichenkette enthält Informationen, wie die Formatierung stattzufinden hat. Der Rückgabewert der Funktion ist ungleich Null, wenn beim Schreiben ein Fehler aufgetreten ist.
Formatzeichenkette
Mit Hilfe der Formatzeichenkette wandelt die Funktion nachfolgende Parameterwerte um und gibt sie entsprechend formatiert aus. Die Formatzeichenkette kann gewöhnliche Zeichen und Formatelemente enthalten. Gewöhnliche Zeichen werden unverändert ausgegeben, während Formatelemente jeweils die Umwandlung und formatierte Ausgabe des nächstfolgenden Parameterwertes veranlassen. Jedes Formatelement beginnt mit dem Prozentzeichen
% und wird durch ein Formatkontrollzeichen abgeschlossen. Gültige Formatkontrollzeichen sind:
Zeichen | Ausgabedatentyp |
d | Dezimal-Darstellung |
o | Oktal-Darstellung |
x | Hexadezimal-Darstellung (Kleinschreibung) |
X | Hexadezimal-Darstellung (Großschreibung) |
u | Vorzeichenlose Dezimal-Darstellung |
c | Zeichen |
s | Zeichenkette |
e | Fließkomma-Darstellung (Kleinschreibung) |
E | Fließkomma-Darstellung (Großschreibung) |
f | Festkomma-Darstellung |
g | e oder f , jeweils kürzere Darstellungsform |
G | E oder f , jeweils kürzere Darstellungsform |
% | Ausgabe des Prozentzeichens % |
Zwischen dem Prozentzeichen und dem Formatkontrollzeichen können der Reihe nach noch folgende Angaben eingetragen sein (n = Zahlenwert):
Zeichen | Ausgabeformat |
- | Linksbündigkeit (default: rechtsbündig) |
+ | Vorzeichenausgabe auch bei positivem numerischen Wert |
SPACE | Ausgabe eines Leerzeichens bei positivem Wert |
# | oktale Ausgabe mit führender 0 bzw. hexadezimale Ausgabe mit führendem 0x oder 0X bzw. Ausgabe mit Dezimalpunkt bei e , E , f , g , G bzw. Nachkommanullen bei g , G |
0 | Ausgabe führender Nullen bei numerischen Werten |
n | Feldlänge; d.h. minimale Ausgabelänge |
.n | Genauigkeit; d.h. Anzahl anzuzeigender Zeichen (bei s ) bzw. Anzahl Nachkommastellen (bei f , g , G ) |
l | long int Dezimal-Darstellung (bei d , o , X , X ) |
Bei
e ,
E ,
f ,
g und
G werden per Default sechs Nachkommastellen ausgegeben. Ist anstelle der numerischen Angabe für die Feldlänge bzw. für die Genauigkeit das Zeichen
* angegeben, dann wird der entsprechende Wert aus dem nächsten noch nicht abgearbeiteten Funktionsparameter übernommen. Die Ausgabe eines Prozentzeichens kann durch die Angabe
%% veranlasst werden. Durch Backslash
\ gekennzeichnete Steuerzeichen werden wie gewöhnliche Zeichen behandelt.
Warnung
Die Anzahl und der Typ der dem Formatstring nachfolgenden Parameterwerte muss mit der Anzahl der Paare der Prozent- und Formatkontrollzeichen im Formatstring übereinstimmen. Andernfalls wird "Speichermüll" ausgegeben.
Siehe auch
Funktionen
printf,
sprintf.
fputc - Zeichen in Datei schreiben (STD)
Synopsis
int fputc( // Status
char; // Zeichen
int; // Dateideskriptor
);
Beschreibung
Die Funktion
fputc schreibt das übergebene Zeichen in die durch den Dateideskriptor beschriebene Datei. Der Rückgabewert der Funktion ist ungleich Null, wenn beim Schreiben ein Fehler aufgetreten ist.
fputs - Zeichenkette in Datei schreiben (STD)
Synopsis
int fputs( // Status
string; // Zeichenkette
int; // Dateideskriptor
);
Beschreibung
Die Funktion
fputs schreibt die übergebene Zeichenkette in die durch den Dateideskriptor beschriebene Datei. Der Rückgabewert der Funktion ist ungleich Null, wenn beim Schreiben ein Fehler aufgetreten ist.
frexp - Exponentialdarstellung ermitteln (STD)
Synopsis
double frexp( // Berechnungsergebnis
double; // Eingabewert
& int; // Exponentrückgabe
);
Beschreibung
Der Rückgabewert der Funktion
frexp ist die Mantisse der Exponentialdarstellung der übergebenen Gleitkommazahl. Der Exponent wird über Parameter zurückgegeben.
fseterrmode - Dateifehler-Behandlungsmodus setzen (STD)
Synopsis
int fseterrmode( // Status
int [0,1]; // Fehlermodus
);
Beschreibung
Die Funktion
fseterrmode setzt den Fehlerbehandlungsmodus für Dateizugriffsfehler. Wenn der Modus auf eins gesetzt ist, wird bei Dateizugriffsfehlern das
User Language-Programm von der aktuellen Interpreterumgebung mit einer entsprechenden Fehlermeldung abgebrochen. Bei einem Modus von Null geben die Dateizugriffsfunktionen einen entsprechenden Fehlercode zurück; die Fehlerbehandlung ist in diesem Fall durch das
User Language-Programm selbst durchzuführen. Die Defaulteinstellung für den Fehlerbehandlungsmodus ist eins.
Warnung
Bei der Verwendung von Dateizugriffsfunktionen, deren Rückgabestatus entweder als Dateizugriffs-Fehler oder z.B. als Dateiende interpretiert werden kann (siehe Funktionen
fgetc,
fgets), sollte in jedem Fall der Fehlerbehandlungsmodus auf Null gesetzt werden, um zu verhindern, dass die Interpreterumgebung das
User Language-Programm beim Erreichen des Dateiendes mit einem Fehler abbricht.
get_date - Systemdatum ermitteln (STD)
Synopsis
void get_date(
& int; // Tag (1..31)
& int; // Monat (0..11)
& int; // Jahre seit 1900
);
Beschreibung
Die Funktion
get_date gibt in den Parametern das aktuelle Systemdatum zurück.
get_time - Systemuhrzeit ermitteln (STD)
Synopsis
void get_time(
& int; // Stunden seit Mitternacht (0..23)
& int; // Minuten seit Stundenanfang (0..59)
& int; // Sekunden seit Minutenanfang (0..59)
);
Beschreibung
Die Funktion
get_time gibt in den Parametern die aktuelle Systemuhrzeit zurück.
getchr - Zeichen einlesen (STD)
Synopsis
char getchr( // Zeichen
);
Beschreibung
Die Funktion
getchr liest ein Zeichen von der Tastatur ein. Der Rückgabewert der Funktion entspricht dem gelesenen Zeichen.
getcwd - Pfadname des Arbeitsverzeichnisses abfragen (STD)
Synopsis
string getcwd( // Rückgabe Pfadname
);
Beschreibung
Die Funktion
getcwd ermittelt den Pfadnamen des Arbeitsverzeichnisses übergibt diesen als Funktionsrückgabewert.
getenv - Umgebungsvariable abfragen (STD)
Synopsis
int getenv( // Status
string; // Variablenname
& string; // Variablenwert
);
Beschreibung
Die Funktion
getenv durchsucht die Liste der Betriebssystemumgebungsvariablen nach dem angegebenen Variablennamen und übergibt den zugehörigen Variablenwert im entsprechenden Parameter. Der Funktionsrückgabewert ist Null, wenn die Variable gefunden wurde bzw. ungleich Null, wenn keine Umgebungsvariable mit dem angegebenen Namen definiert ist (in diesem Fall bleibt der Parameter für den Variablenwert unverändert).
Siehe auch
Funktion putenv.
getextprog - Dateitypspezifische Applikation ermitteln (STD)
Synopsis
int getextprog( // Status
string; // Dateinamenserweiterung
& string; // Kommandozeichenkette
);
Beschreibung
Die Funktion
getextprog ermittelt die Applikation bzw. das Kommando zum Öffnen des durch die angegene Dateinamenserweiterung spezifizierten Dateityps. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) wenn keine Applikation für die angegebene Dateinamenserweiterung ermittelt werden konnte.
getstr - Zeichenkette einlesen (STD)
Synopsis
int getstr( // Status
& string; // Rückgabe Zeichenkette
int; // Maximale Zeichenkettenlänge
);
Beschreibung
Die Funktion
getstr liest Zeichen von der Tastatur in die übergebene Zeichenkette ein, bis die Return- bzw. Eingabetaste gedrückt wird oder die maximale Anzahl Zeichen erreicht ist. Der Rückgabewert ist ungleich Null, wenn ungültige Parameter übergeben wurden.
isalnum - Prüfen ob Zeichen alphanumerisch (STD)
Synopsis
int isalnum( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isalnum gibt an, ob es sich bei dem übergebenen Zeichen um ein alphanumerisches Zeichen (Buchstabe oder Ziffer) handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isalpha - Prüfen ob Zeichen Buchstabe (STD)
Synopsis
int isalpha( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isalpha gibt an, ob es sich bei dem übergebenen Zeichen um einen Buchstaben handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
iscntrl - Prüfen ob Zeichen Kontrollzeichen (STD)
Synopsis
int iscntrl( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
iscntrl gibt an, ob es sich bei dem übergebenen Zeichen um ein Kontrollzeichen handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isdigit - Prüfen ob Zeichen Ziffer (STD)
Synopsis
int isdigit( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isdigit gibt an, ob es sich bei dem übergebenen Zeichen um eine Ziffer handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isgraph - Prüfen ob Zeichen sichtbares Zeichen (STD)
Synopsis
int isgraph( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isgraph gibt an, ob es sich bei dem übergebenen Zeichen um ein Zeichen mit sichtbarer Bilddarstellung handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
islower - Prüfen ob Zeichen Kleinbuchstabe (STD)
Synopsis
int islower( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
islower gibt an, ob es sich bei dem übergebenen Zeichen um einen Kleinbuchstaben handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isprint - Prüfen ob Zeichen druckbares Zeichen (STD)
Synopsis
int isprint( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isprint gibt an, ob es sich bei dem übergebenen Zeichen um ein druckbares Zeichen handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
ispunct - Prüfen ob Zeichen Satzzeichen (STD)
Synopsis
int ispunct( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
ispunct gibt an, ob es sich bei dem übergebenen Zeichen um ein Satzzeichen handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isspace - Prüfen ob Zeichen Zwischenraumzeichen (STD)
Synopsis
int isspace( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isspace gibt an, ob es sich bei dem übergebenen Zeichen um ein Zwischenraumzeichen handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isupper - Prüfen ob Zeichen Großbuchstabe (STD)
Synopsis
int isupper( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isupper gibt an, ob es sich bei dem übergebenen Zeichen um einen Großbuchstaben handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
isxdigit - Prüfen ob Zeichen Hex-Ziffer (STD)
Synopsis
int isxdigit( // Bool'sches Prüfergebnis
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
isxdigit gibt an, ob es sich bei dem übergebenen Zeichen um eine Hexadezimalziffer handelt. Der Wert ist ungleich Null, wenn die Bedingung erfüllt ist und Null wenn nicht.
kbhit - Prüfen ob Taste betätigt (STD)
Synopsis
int kbhit( // Tastaturstatus
);
Beschreibung
Der Rückgabewert der Funktion
kbhit gibt den aktuellen Status der Tastatureingabe an. Ein Rückgabewert von 0 bedeutet es wurde keine Taste gedrückt. Eine 1 bedeutet, dass ein Taste gedrückt wurde. Der Tastencode verbleibt dabei im Tastaturpuffer und kann mit
getchr oder anderen Tastatureingabefunktionen eingelesen werden.
Siehe auch
Funktion kbstate.
kbstate - Umschalt-/Steuerungs-Tastenstatus abfragen (STD)
Synopsis
int kbstate( // Tastaturstatus (Bitwerte):
// 0x***1 = Umschalttaste gedrückt
// 0x***2 = Steuerungstaste gedrückt
// 0x**1* = Linke Alt-Taste gedrückt
// 0x**2* = Rechte Alt-Taste gedrückt
);
Beschreibung
Mit der Funktion
kbstate kann abgefragt werden, ob die Umschalttaste
Shift, die Steuerungstaste
Ctrl bzw. die
Alt-Tasten gerade gedrückt sind.
Siehe auch
Funktion kbhit.
launch - Betriebssystemkommando absetzen ohne die Ausführung abzuwarten (STD)
Synopsis
int launch( // Status
string; // Kommando
);
Beschreibung
Die Funktion
launch aktiviert das als Zeichenkette übergebene Kommando auf Betriebssystemebene. Das übergebene Kommando wird als Aufruf zum Start bzw. zur Ausführung einer Applikation bzw. eines Programms interpretiert, und die Ablaufkontrolle wird unmittelbar nach Absetzen des Kommandos wieder an BAE zurückgegeben (die aktivierte Applikation läuft dann unabhängig von BAE). Der Rückgabewert der Funktion ergibt sich zu Null, wenn das Kommando erfolgreich abgesetzt wurde; andernfalls wird ein Wert ungleich Null zurückgegeben.
Einschränkungen
Die Funktion
launch kann nicht in der
BAE Demo-Software angewendet werden.
Unter MS-DOS benötigt der
Phar Lap 386|DOS Extender ausreichend konventionellen Speicher zur Ausführung von (Child-)Prozessen. Die Größe des zur Verfügung stehenden konventionellen Speichers wird mit den Optionen
-MINREAL und
-MAXREAL des
Phar Lap 386|DOS Extenders festgelegt. Zur Ausführung von
User Language-Programmen, die die
launch-Funktion benutzen, sind die
User Language-Interpreterumgebungen mit Hilfe des mit der BAE-Software ausgelieferten CFIG386-Tools von Phar Lap wie folgt umzukonfigurieren:
> cfig386 <EXEFILE> -maxreal 0ffffh 
Für
<EXEFILE> ist jeweils der Name des
User Language Interpreters
(scm.exe ,
ged.exe ,
neurrut.exe ,
cam.exe ,
gerview.exe bzw.
ced.exe ) einzusetzen.
Warnungen
Beachten Sie, dass die
launch-Funktion grundlegende Mehrprozess- bzw. Multitasking-Techniken voraussetzt, die auf PC-basierenden Systemen u.U. nicht ausreichend unterstützt werden, oder die in Rechnernetzwerken (abhängig vom auszuführenden Kommando) Probleme bereiten können.
Es wird dringend empfohlen, die Standardausgabe von DOS-Kommandos auf temporäre Dateien umzulenken und zur Anzeige eine
User Language-Funktion zur Dateibetrachtung zu verwenden, da andernfalls die BAE-Grafikoberfläche von der Standardausgabe der mit
launch abgesetzten DOS-Kommandos überschrieben wird.
Die Fehlerausgabe von DOS-Kommandos erfolgt grundsätzlich auf den Bildschirm, wodurch die BAE-Grafikoberfläche überschrieben wird. Da unter DOS prinzipiell keine Möglichkeit zur Umlenkung der Fehlerausgabe besteht, ist dieses Problem nur dadurch zu umgehen, dass z.B. durch eine Konsistenzprüfung vor dem Aufruf der
launch-Funktion die Aktivierung fehlerhafter DOS-Kommandos unterdrückt wird.
Da von der BAE-Grafikoberfläche keine Benutzereingaben an DOS-Kommandos übergeben werden können, ist dringend davon abzuraten, interaktive DOS-Kommandos bzw. Grafikapplikationen mit der
launch-Funktion abzusetzen (andernfalls "hängt sich das System auf"). Unter UNIX lässt sich dieses Problem u.U. dadurch umgehen, dass interaktive Kommandos wie z.B.
more oder
vi in Hintergrundprozessen (&) aktiviert werden (was allerdings im Remote Login zu Problemen beim Terminalzugriff führen kann).
Siehe auch
Funktion
system.
ldexp - Gleitkommamultiplikation mit 2^n (STD)
Synopsis
double ldexp( // Berechnungsergebnis
double; // Eingabewert
& int; // Exponent
);
Beschreibung
Der Rückgabewert der Funktion
ldexp entspricht dem Produkt von Eingabewert und der durch den Exponenten spezifizierten Potenz von zwei.
localtime - Systemdatum und Systemzeit abfragen (STD)
Synopsis
double localtime( // CPU-Zeit (Sekunden)
& int; // Sekunden seit Minutenanfang (0..59)
& int; // Minuten seit Stundenanfang (0..59)
& int; // Stunden seit Mitternacht (0..23)
& int; // Tag (1..31)
& int; // Monat (0..11)
& int; // Jahre seit 1900
& int; // Tage seit Sonntag (0..6)
& int; // Tage seit Jahresanfang (0..365)
);
Beschreibung
Die Funktion
localtime gibt in den Parametern die aktuelle Systemzeit mit Datumsangabe zurück. Der Rückgabewert der Funktion entspricht der verbrauchten CPU-Zeit in Sekunden.
log - Logarithmus zur Basis e (STD)
Synopsis
double log( // Berechnungsergebnis
double ]0.0,[; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
log entspricht dem natürlichen Logarithmus (Basis e) des übergebenen Gleitkommawertes.
log10 - Logarithmus zur Basis 10 (STD)
Synopsis
double log10( // Berechnungsergebnis
double ]0.0,[; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
log10 entspricht dem dekadischen Logarithmus (Basis 10) des übergebenen Gleitkommawertes.
mkdir - Dateiverzeichnis anlegen (STD)
Synopsis
int mkdir( // Status
string; // Verzeichnispfadname
);
Beschreibung
Die Funktion
mkdir legt ein Dateiverzeichnis mit dem angegebenen Verzeichnispfadnamen an. Der Funktionsrückgabewert ist Null wenn das Verzeichnis erfolgreich erzeugt wurde oder (-1) bei fehlenden oder falschen Parametern oder bei Verzeichniszugriffsfehlern.
modf - Gleitkommazahl Vor- und Nachkommastellen (STD)
Synopsis
double modf( // Rückgabe Nachkommawert
double; // Eingabewert
& double; // Rückgabe Vorkommawert
);
Beschreibung
Die Funktion
modf teilt eine Gleitkommazahl in Vor- und Nachkommastellen auf. Der Rückgabewert der Funktion entspricht den Nachkommastellen. Die Vorkommastellen werden im entsprechenden Parameter zurückgegeben.
namestrcmp - Namensvergleich (STD)
Synopsis
int namestrcmp( // Vergleichsergebnis
string; // Erster Name
string; // Zweiter Name
);
Beschreibung
Die Funktion
namestrcmp vergleicht die beiden übergebenen Zeichenketten. Der Vergleich wird Zeicehn für Zeichen und ohne Unterscheidung von Groß- und Kleinschreibung vorgenommen. Der Rückgabewert ist Null bei Gleichheit, (-1) wenn die erste Zeichenkette kleiner als die zweite Zeichenkette ist und 1 wenn die erste Zeichenkette größer als die zweite Zeichenkette ist.
Siehe auch
Funktionen numstrcmp,
strcmp.
numstrcmp - Numerischer Zeichenkettenvergleich (STD)
Synopsis
int numstrcmp( // Vergleichsergebnis
string; // Erste Zeichenkette
string; // Zweite Zeichenkette
);
Beschreibung
Die Funktion
numstrcmp vergleicht die beiden übergebenen Zeichenketten. Der Rückgabewert beträgt Null bei Gleichheit, (-1) wenn die erste Zeichenkette kleiner als die zweite Zeichenkette ist und ansonsten eins. Die Berechnung erfolgt für nicht Ziffern Zeichen für Zeichen durch numerischen Vergleich des ASCII-Wertes der verglichenen Zeichen. Bei Ziffern werden Zifferngruppen zu Zahlen zusammengefasst und diese Zahlen miteinander verglichen. Dadurch wird bei Sortierungen eine Reihenfolge von z.B. R1, R2, .. R10, R11 erreicht.
Siehe auch
Funktionen namestrcmp,
strcmp.
perror - Fehlermeldung in Statuszeile ausgeben (STD)
Synopsis
void perror(
string; // Zeichenkette
);
Beschreibung
Die Funktion
perror zeigt die übergebene Zeichenkette in der Statuszeile der BAE-Benutzeroberfläche an. Es erfolgt hierbei eine kurzzeitig invertierte Darstellung (einfaches Blinken), um den Anwender auf die Dringlichkeit der Meldung aufmerksam zu macheb. Bei Übergabe eines Leerstrings wird der Inhalt der Statuszeile gelöscht.
Siehe auch
Funktion
bae_prtdialog.
pow - Potenzfunktion x^y (STD)
Synopsis
double pow( // Berechnungsergebnis
double; // Basis
double; // Exponent
);
Beschreibung
Der Rückgabewert der Funktion
pow entspricht dem Wert der mit dem Exponenten potenzierten Basis.
printf - Formatierte Ausgabe (STD)
Synopsis
void printf(
string; // Formatzeichenkette
[] // Parameterliste
);
Beschreibung
Die Funktion
printf gibt die in der Parameterliste enthaltenen Daten formatiert im Arbeitsbereich des Bildschirms aus. Die Formatzeichenkette enthält Informationen, wie die Formatierung stattzufinden hat (siehe hierzu Beschreibung der Funktion
fprintf).
Siehe auch
Funktionen
fprintf,
sprintf.
programid - Programmname abfragen (STD)
Synopsis
string programid( // Programmname
);
Beschreibung
Der Rückgabewert der Funktion
programid entspricht dem Namen des gerade abgearbeiteten Programmes.
putchr - Zeichen ausgeben (STD)
Synopsis
int putchr( // Status
char; // Zeichen
);
Beschreibung
Die Funktion
putchr gibt das übergebene Zeichen im Arbeitsbereich des Bildschirms aus. Der Rückgabewert der Funktion ist ungleich Null, wenn bei der Ausgabe ein Fehler aufgetreten ist.
putenv - Umgebungsvariable setzen (STD)
Synopsis
int putenv( // Status
string; // Variablenname
string; // Variablenwert
);
Beschreibung
Die Funktion
putenv weist der angegebenen Betriebssystemumgebungsvariablen einen Wert zu. Der Funktionsrückgabewert ist Null, wenn die Zuweisung erfolgreich war bzw. (-1) wenn die angegebene Variable nicht gefunden wurde.
Siehe auch
Funktion getenv.
puts - Zeichenkette mit Zeilenabschluss ausgeben (STD)
Synopsis
int puts( // Status
string; // Zeichenkette
);
Beschreibung
Die Funktion
puts gibt die übergebene Zeichenkette im Arbeitsbereich des Bildschirms mit anschließendem Zeilenvorschub aus. Der Rückgabewert der Funktion ist ungleich Null, wenn bei der Ausgabe ein Fehler aufgetreten ist.
putstr - Zeichenkette ausgeben (STD)
Synopsis
int putstr( // Status
string; // Zeichenkette
);
Beschreibung
Die Funktion
putstr gibt die übergebene Zeichenkette im Arbeitsbereich des Bildschirms aus. Der Rückgabewert der Funktion ist ungleich Null, wenn bei der Ausgabe ein Fehler aufgetreten ist.
quicksort - Indexliste sortieren (STD)
Synopsis
int quicksort( // Status
& void; // Indexliste (Integer-Array)
int; // Indexanzahl
* int; // Elementvergleichsfunktion
);
Beschreibung
Die Funktion
quicksort sortiert die übergebene Indexliste nach dem Quicksortverfahren. Der Rückgabewert ergibt sich zu Null bei erfolgreicher Sortierung oder zu (-1) im Fehlerfall.
Elementvergleichsfunktion
int sortfuncname(
int idx1, // Index 1
int idx2, // Index 2
)
{
// Compare index 1 to index 2
:
return(compareresult);
}
Der Rückgabewert der Elementvergleichsfunktion sollte (-1) sein wenn der erste Indexwert kleiner ist als der zweite Indexwert, 1 wenn der erste Indexwert größer als der zweite ist, oder Null wenn beide Indexwerte gleich sind.
remove - Datei oder Verzeichnis löschen (STD)
Synopsis
int remove( // Status
string; // Pfadname
);
Beschreibung
Die Funktion
remove löscht die Datei oder das Verzeichnis mit dem spezifizierten Pfadnamen. Der Rückgabewert der Funktion ist ungleich Null, wenn beim Löschen ein Fehler aufgetreten ist.
rename - Datei umbenennen (STD)
Synopsis
int rename( // Status
string; // Alter Name
string; // Neuer Name
);
Beschreibung
Die Funktion
rename ändert den Namen einer Datei. Der Rückgabewert der Funktion ist ungleich Null, wenn bei der Namensänderung ein Fehler aufgetreten ist.
rewind - Auf Dateianfang positionieren (STD)
Synopsis
void rewind(
int; // Dateideskriptor
);
Beschreibung
Die Funktion
rewind positioniert den Dateizeiger der durch den Dateideskriptor beschriebenen Datei auf den Dateianfang.
rulecompile - Regeldefinition kompilieren (STD)
Synopsis
int rulecompile( // Status
string; // Zieldateiname
string; // Regelname
string; // Regelcode
);
Beschreibung
Die Funktion
rulecompile kompiliert den übergebenen Regelcode und speichert die kompilierte Regel unter dem angegebenen Regelnamen in der Zieldatei ab. Der Rückgabewert ist Null bei erfolgreicher Kompilierung oder ungleich Null wenn ein Fehler aufgetreten ist.
Siehe auch
Funktion
rulesource.
rulesource - Regeldefinitionsquellcode abfragen (STD)
Synopsis
int rulesource( // Returns status
string; // Regeldatenbankdateiname
string; // Regelname
& string; // Regelquellcode
);
Beschreibung
Die Funktion
rulesource ermittelt den Quellcode der durch Regeldatenbankdateiname und Regelname angegebenen Regeldefinition. Der Quellcode der Regeldefinition wird über einen entsprechenden Parameter als Zeichenkette an den Aufrufer zurückgegeben. Der Funktionsrückgabewert ist Null wenn die Abfrage erfolgreich war, (-1) bei fehlenden oder ungültigen Parametern, (-2) wenn die Regeldatenbank nicht gefunden/geöffnet werden konnte, (-3) wenn die Regeldefinition nicht gefunden wurde oder (-5) wenn die Regeldefinition nicht geladen werden konnte.
Siehe auch
Funktion
rulecompile.
scanddbenames - Inhalt Datenbank abfragen (STD)
Synopsis
int scanddbenames( // Scan Status
string; // Dateiname
int [100,[; // Elementklasse (STD1)
int [0,[; // Elementklasse (STD1) oder Null zum Auslesen des Cache
& string; // Elementname Ein-/Ausgabe
);
Beschreibung
Die Funktion
scanddbenames sucht den dem übergebenen Feldnamen folgenden Elementeintrag der gegebenen Klasse in der Datenbankdatei und übergibt den Namen im Namensparameter. Bei Eingabe einer Leerzeichenkette wird das erste Element aus der Datenbank zurückgegeben. Der Rückgabewert ist 1 wenn ein Element gefunden wurde, 0 wenn kein weiteres Element in der Datenbankdatei vorhanden ist und (-1) wenn beim Dateizugriff Fehler aufgetreten sind oder die übergebenen Parameter ungültig sind.
scandirfnames - Inhalt Dateiverzeichnis abfragen (STD)
Synopsis
int scandirfnames( // Scan Status
string; // Verzeichnispfadname
string; // Dateinamenserweiterung:
// .EXT = Namensendung .EXT
// .* = alle Dateien/Verzeichnisse
& string; // Datei-/Verzeichnisname Ein-/Ausgabe
);
Beschreibung
Die Funktion
scandirfnames sucht den auf den übergebenen Namen folgenden Namenseintrag mit der gegebenen Endung im angegebenen Verzeichnis und übergibt den Namen im Namensparameter. Bei Eingabe einer Leerzeichenkette wird der erste Verzeichniseintrag zurückgegeben. Der Rückgabewert ist 1 wenn eine Datei bzw. ein Unterverzeichnis gefunden wurde, 0 wenn kein weiterer Eintrag im Verzeichnis vorhanden ist und (-1) wenn beim Verzeichniszugriff Fehler aufgetreten sind oder die übergebenen Parameter ungültig sind.
setprio - BAE Prozesspriorität setzen (STD)
Synopsis
void setprio(
int; // Prozessprioritätswert
// - Unix/Linux:
// nice -Prioritätswert
// - Windows:
// <0 = HIGH_PRIORITY_CLASS
// 0 = NORMAL_PRIORITY_CLASS
// >0 = IDLE_PRIORITY_CLASS
// - andernfalls ignoriert
);
Beschreibung
Die Funktion
setprio setzt die Priorität des aktuellen BAE-Prozesses entsprechend dem angegebenen Prozessprioritätswert.
sin - Sinus berechnen (STD)
Synopsis
double sin( // Berechnungsergebnis
double; // Eingabewert (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
sin entspricht dem Sinus des übergebenen Winkels. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
sinh - Hyperbolischen Sinus berechnen (STD)
Synopsis
double sinh( // Berechnungsergebnis
double; // Eingabewert (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
sinh entspricht dem hyperbolischen Sinus des übergebenen Winkels. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
sprintf - Formatierte Ausgabe auf String (STD)
Synopsis
int sprintf( // Anzahl dekodierte Zeichen
& string; // Ausgabezeichenkette
string; // Formatzeichenkette
[] // Parameterliste
);
Beschreibung
Die Funktion
sprintf gibt die in der Parameterliste enthaltenen Daten formatiert auf die Ausgabezeichenkette aus, d.h. mit dieser Funktion lässt sich eine Formatumwandlung im Speicher durchführen. Die Formatzeichenkette enthält Informationen, wie die Formatierung stattzufinden hat (siehe hierzu Beschreibung der Funktion
fprintf). Der Rückgabewert der Funktion entspricht der Anzahl der umgewandelten Zeichen, d.h. die resultierende Länge der Ausgabezeichenkette.
Siehe auch
Funktionen
fprintf,
printf.
sqlcmd - SQL Kommando ausführen (STD)
Synopsis
int sqlcmd( // Status
string; // Datenbankdateiname
string; // SQL-Kommando
* int; // Datenrückgabefunktion
);
Beschreibung
Über die Funktion
sqlcmd kann mit Hilfe einer Zugriffsprache der Datentransfer von und zu einer mit
sqlinit initialisierten relationalen Datenbank gesteuert werden. Der erste Parameter der Funktion
sqlcmd gibt den Namen der Datenbankdatei an, die für die Bearbeitung geöffnet werden soll. Im zweiten Parameter ist das auszuführende SQL-Kommando für den Datenzugriff zu spezifizieren. Die selektierten Datenfelder werden dem Aufrufer über die im dritten Parameter referenzierte Datenrückgabefunktion übergeben. Soll keine Datenrückgabefunktion aktiviert werden, dann ist für den entsprechenden Funktionsparameter das Schlüsselwort
NULL einzutragen. Der Rückgabewert der Funktion
sqlcmd ist ungleich Null bei fehlenden oder ungültigen Parametern oder wenn ein SQL-Datenbankfehler aufgetreten ist; die genaue Fehlerursache lässt sich im Falle eines SQL-Datenbankfehlers anschließend mit Hilfe der Funktion
sqlerr bestimmen.
SQL-Kommandos
Die durch
sqlcmd interpretierbare Datenbank-Zugriffssprache lehnt sich in ihrer Befehlssyntax an die Structured Query Language (SQL) für relationale Datenbanken an. Es werden die folgenden Grundbefehle angeboten:
create table |
drop table |
insert into table values |
quickinsert into table values |
index table |
select from table |
delete from table |
help |
Zur Repräsentation von Daten stehen die folgenden Datentypen zur Verfügung:
Schlüsselwort | Datentyp |
integer | Ganze Zahlen im Bereich [-2147483648, 2147483647] |
float | Fließpunktzahlen im Bereich [-10^308, 10^308] mit einer Genauigkeit von ca. 15 führenden Stellen |
string | Zeichenketten (in einfachen Anführungszeichen) |
boolean | Logical value (FALSE oder TRUE ) |
date | Datum; Eingabe dd/mm/yyyy , Ausgabe yyyymmdd |
Kommando create table
Mit dem
create -Kommando wird eine Tabellenstruktur in der Datenbank hinterlegt. Dazu ist neben dem Tabellennamen eine Liste der Feldnamen mit den entsprechenden Datentypen der Feldelemente aufzuführen. Die in der Auflistung verwendete Reihenfolge wird auch bei der Datenausgabe verwendet, sofern keine explizite Angabe von Ausgabefeldern erfolgt. Die Syntax des
create -Kommandos lautet:
create table tablename ( name1 type1, ..., namen typen ) ;
Für jedes Datenfeld einer Tabelle wird automatisch ein Index erstellt. Die Indizes werden bei der Bearbeitung von Datenbankabfragen - soweit dies sinnvoll ist - automatisch herangezogen. Der Benutzer braucht sich daher über deren optimale Verwendung keine Gedanken zu machen. Bei Stringvariablen werden nur die ersten 39 Zeichen für den Index berücksichtigt.
Kommando drop table
Mit dem
drop -Kommando wird eine Tabellenstruktur aus der Datenbankdatei entfernt. Dabei werden die Struktur der Tabelle sowie alle in der Tabelle gespeicherten Einträge gelöscht. Die Syntax des
drop -Kommandos lautet:
drop table tablename ;
Kommando insert into
Mit dem
insert -Kommando wird ein Datensatz in eine Tabelle eingetragen. Die angegebenen Werte müssen in Anzahl und Typabfolge mit der Tabellendefinition übereinstimmen. Die Syntax des
insert -Kommandos lautet:
insert into tablename values ( val1, ..., valn ) ;
Kommando quickinsert insert into
Das Kommando
quickinsert entspricht dem Kommando
insert mit dem Unterschied, dass
quickinsert im Gegensatz zu
insert nach der Eintragung der Daten keinen automatischen Update der Feldindizes durchführt.
Zur Aktualisierung der Feldindizes ist nach der (wiederholten) Anwendung des Kommandos
quickinsert das Kommando
index table auszuführen.
quickinsert und
index table eignen sich insbesondere zum schnellen Eintragen zahlreicher Datensätze in einer Tabelle, da die
der einmalige Indizierungsprozess mit
index table sehr viel schneller ist als die wiederholte Indizierung mit
insert .
Zu beachten ist dabei allerdings, dass mit
quickinsert eingefügte Datensätze solange nicht in Abfrageergebnissen aufscheinen bis ein
index table -Aufruf durchgeführt wurde.
Kommando index table
Das Kommando
index table dient dazu, zuvor mit
quickinsert (siehe oben) in eine Tabelle eingespielten Datensätze zu indizieren. Die Syntax des
index -Kommandos lautet:
index table tablename ;
Kommando select from
Mit dem
select -Kommando können Datenbankinhalte abgefragt werden. Dabei kann über einen optional angebbaren
where -Ausdruck die Ausgabemenge auf Datensätze beschränkt werden, für die die in diesem Ausdruck angegebenen Bedingungen erfüllt sind. Ist kein
where -Ausdruck angegeben, dann erfolgt die Ausgabe sämtlicher Datensätze. Die Syntax des
select -Kommandos lautet:
select [ field1, ..., fieldn ] from table1, ..., tablen
[ where ... ] ;
Die Spezifikation der Ausgabefelder ist optional. Sind keine Ausgabefelder spezifiziert, dann werden sämtliche Ausgabefelder entsprechend der Reihenfolge ihrer Definition ausgegeben. Ist ein Ausgabefeldname in mehreren der angegebenen Tabellen definiert, so muss diese Mehrdeutigkeit durch eine Angabe des Feldnamens in der Form
table.field aufgelöst werden. Dies gilt in gleicher Weise für die Referenzierung von Feldern innerhalb des
where -Ausdrucks. Der
where -Ausdruck setzt sich aus Vergleichen zusammen, die mit den logischen Operatoren
AND (logisch Und),
OR (logisch oder) und
NOT (logisch nicht) verknüpft werden können. Die Vergleichsoperatoren
= (gleich),
<> (ungleich),
> (größer),
>= (größer gleich),
< (kleiner) und
<= (kleiner gleich) stehen für alle Datentypen zur Verfügung. Für den Stringdatentyp stehen darüber hinaus noch die Operatoren
PREVTO (selektieren vorherigen Eintrag),
NEXTTO (selektieren nächsten Eintrag) und
LIKE (Stringmustervergleich) zur Verfügung; auf der rechten Seite dieser Operatoren kann ein Testpatternstring angegeben werden, der die Wildcardzeichen
% (für beliebige Zeichenkette) und
? (für beliebiges Einzelzeichen) enthalten darf. Bei Vergleichen müssen die Terme links und rechts der Vergleichsoperatoren typkompatibel, d.h. vom gleichen Datentyp sein; eine Ausnahme hiervon bildet lediglich die Datentypkombination
integer -float . Terme können aus Operatoren und dadurch verknüpften Datenfeldreferenzen und Konstanten aufgebaut werden. Hierfür stehen die Operatoren
+ (Addition),
- (Subtraktion),
* (Multiplikation),
/ (Division),
% (Rest nach Division),
UPPER (Umwandlung in Großschreibung) und
LOWER (Umwandlung in Kleinschreibung) zur Verfügung. Die Zulässigkeit der verwendbaren Operatoren hängt gemäß folgender Auflistung von den Datentypen der referenzierten Feldelemente bzw. Konstanten ab:
Operator | Datentyp |
+ | integer , float , string |
- | integer , float |
* | integer , float |
/ | integer , float |
% | integer , float |
UPPER() | string |
LOWER() | string |
Auf die Datentypen
date und
boolean kann keiner der definierten Operatoren angewendet werden.
Kommando delete from
Mit dem
delete -Kommando werden Datensätze aus einer Tabellenstruktur entfernt. Die Syntax des
delete -Kommandos lautet:
delete from tablename [ where ... ] ;
Die optional angebbare
where -Bedingung entspricht in ihrer Syntax der
where -Bedingung des
select -Kommandos. Das
delete -Kommando entfernt diejenigen Datensätze aus der angegebenen Tabelle, die der angegebenen
where -Bedingung entsprechen; ist keine
where -Bedingung angegeben, dann werden alle Datensätze aus der Tabelle entfernt.
Kommando cache
Das
cache -Kommando dient dazu, die SQL-Datenbankdatei über mehrere Kommandos hinweg zum Lesen oder Schreiben geöffnet zu halten. Das Öffnen und Schliessen von SQL-Datenbankdateien ist insbesondere beim Zugriff auf Netzlaufwerke der zeitintensivste Teil bei Abfragen. Anwendungen die eine Vielzahl von Einzelkommandozugriffen auf eine SQL-Datenbank durchführen, können bei Verwendung dieser neuen Kommandos auf Netzlaufwerken um mehrere Größenordnungen schneller ablaufen. Die Syntax des
cache -Kommandos unterstützt die folgenden Befehle:
cache read on ;
cache write on ;
cache off ;
Kommando help
Das
help -Kommando dient dazu, Informationen über die in einer Datenbank definierten Tabellenstrukturen einzuholen. Die Syntax des
help -Kommandos lautet:
help [ tablename ] ;
Die durch das
help -Kommando ermittelten Daten werden über die Datenrückgabefunktion an den Aufrufer zurückgegeben. Die Angabe des Tabellennamens ist optional. Wird kein Tabellenname spezifiziert, dann liefert das
help -Kommando die Namen der in der Datenbank definierten Tabellen im entsprechenden Parameter der Datenrückgabefunktion zurück, d.h. pro Tabellendefinition erfolgt ein Aufruf der Datenrückgabefunktion. Ist ein Tabellenname angegeben, dann liefert das
help -Kommando die Namen der in dieser Tabelle definierten Datenfelder mit den entsprechenden Datentypangaben in den korrespondierenden Parametern der Datenrückgabefunktion zurück, d.h. pro Datenfeld der spezifizierten Tabelle erfolgt ein Aufruf der Datenrückgabefunktion.
Datenrückgabefunktion
int datafunc(
string dstr, // Zeichenkette oder Datum
int dint, // Ganzzahliger oder Logischer Wert
double ddbl, // Fließkommazahl
int dval, // Datengültigkeitskennzeichen:
// 0 = ungültige Daten
// 1 = gültige Daten
int dtype, // Datenfeld Typ:
// 2 = Ganzzahliger Wert
// 3 = Fließkommazahl
// 4 = Zeichenkette
// 5 = Datum (Format "yyyymmdd")
// 6 = Logischer Wert (0=FALSE,1=TRUE)
string dtable, // Tabellenname
string dfield, // Datenfeld Name
int didx // Datenausgabefeld Index
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Die Datenrückgabefunktion dient dazu, dem Aufrufer die selektierten Datenfelder zu übergeben. Die Funktion wird für jedes selektierte Datenfeld einzeln aufgerufen. Diese Funktion wird demnach bei z.B. 10 selektierten Datensätzen mit je 5 Datenfeldern 50 mal aufgerufen. Der Index des Datenausgabefeldes gibt an, das wievielte Datenfeld des aktuellen Datensatzes übergeben wird. Er nimmt Werte von 1 bis zur Anzahl der aktuell definierten Datenausgabefelder an. Der Rückgabewert der Datenrückgabefunktion sollte Null sein, wenn kein (semantischer) Fehler im Verarbeitungsprogramm der Funktion aufgetreten ist; im Fehlerfall sollte ein Wert ungleich Null zurückgegeben werden, um die Datenbankabfrage abzubrechen.
Warnung
Da die Funktion
sqlcmd direkt auf den Datenbankdateiebene arbeitet, unterliegt sie - ebenso wie alle Dateizugriffsfunktionen des
AutoEngineers - nicht dem -Mechanismus.
Siehe auch
Funktionen
sqlerr,
sqlinit.
Beispiel
Erzeugen der Tabelle
partdata mit den Datenfelddefinitionen
symname (String),
val (String) und
partno (String) in der Datenbankdatei
partdata.dat :
if (sqlinit("partdata.dat",1)!=0)
{
perror("SQL Init error!");
exit(0);
}
if (sqlcmd("partdata.dat",
"create table partdata (symname string,val string,partno string);",
NULL)!=0)
{
perror("SQL Query error!");
exit(0);
}
Eintragen von Daten in die Datenbank:
if (sqlcmd("partdata.dat",
"insert into partdata values ('r','470','STK100470');",
NULL)!=0)
{
perror("SQL Data input error!");
exit(0);
}
Abfragen von Daten:
if (sqlcmd("partdata.dat",
"select partno from partdata where symname='r' AND val='470';",
datafunc)!=0)
{
perror("SQL Query error!");
exit(0);
}
:
int datafunc(dstr,dint,ddbl,dval,dtype,dtable,dfield,didx)
string dstr;
int dint;
double ddbl;
int dval,dtype;
string dtable,dfield;
int didx;
{
printf("Part Number : %s\n");
}
Löschen von Daten:
if (sqlcmd("partdata.dat",
"delete from partdata where symname='r';",NULL)!=0)
{
perror("SQL Delete error!");
exit(0);
}
sqlerr - SQL Fehlerstatus abfragen (STD)
Synopsis
void sqlerr(
& int; // Fehlercode
& string; // Fehlerstring
);
Beschreibung
Die Funktion
sqlerr dient der genauen Bestimmung der Fehlerursache nach einem erfolglosen Aufruf der Funktion
sqlcmd.
Diagnose
Zur Bestimmung der Fehlerursache sind die durch
sqlerr zurückgegebenen Parameterwerte heranzuziehen. Der zurückgegebene Fehlerstring identifiziert ggf. das fehlerverursachende Element. Die möglichen Werte, die der Fehlercode durch die Ausführung eines SQL-Kommandos annehmen kann, haben folgende Bedeutung:
Fehlercode | Bedeutung |
0 | SQL-Kommando fehlerfrei ausgeführt |
1 | SQL-Kommando Lesefehler (intern) |
2 | SQL-Kommando zu komplex (über 200 Terme) |
3 | Ungültiger numerischer Ausdruck |
4 | SQL-Kommandodatei nicht gefunden (intern) |
5 | SQL-Kommandoelement zu lang (über 200 Zeichen) |
6 | SQL-Kommando Syntaxfehler bei <c> |
7 | Allgemeiner SQL-Kommando-Parserfehler |
8 | Fehler beim Erzeugen der Datenbank |
9 | Dateizugriffsfehler |
10 | Zu viele offene Dateien |
11 | Datei <d> ist keine Datenbank |
12 | Datenbankstruktur beschädigt |
13 | Datenbankdateiaufbau fehlerhaft |
14 | Schlüsselbegriff <k> nicht gefunden |
15 | Schlüsselbegriff <k> existiert bereits |
16 | Datei <d> nicht gefunden |
17 | Ungültiger Datentyp für Tabellenelement <t>.<f> |
18 | Zu viele Tabellenelemente |
19 | Dateneintrag zu lang |
20 | Bedingte Löschung nur für eine Tabelle erlaubt |
21 | Term/Vergleich enthält unzulässige Typkombination |
22 | Ausgabefeld <f> undefiniert/in keiner Tabelle |
23 | Ausgabefeld <f> in mehreren Tabellen definiert |
24 | Ausgabetabelle <t> nicht in from -Tabellenliste |
25 | Tabelle <t> bereits definiert |
26 | Datenbankklassenanzahl überschreitet Datenbanklimit |
27 | Tabelle <t> nicht gefunden |
28 | Fehler von Datenrückgabefunktion |
29 | Kein delete -Record gefunden |
30 | Unbekanntes/neueres Datenbankformat |
31 | Abfragefeld nicht in Tabelle(n) enthalten |
32 | Abfragefeld in mehreren Tabellen enthalten |
33 | Dateilesezugriff verweigert |
34 | Dateischreibzugriff verweigert |
35 | Allgemeiner Datenbankfehler |
Der Fehlerstring kann je nach Fehlerfall ein Kommandoelement
<c> , eine Datei
<d> , einen Schlüsselbegriff
<k> , eine Tabelle
<t> oder ein Datenfeld
<f> bezeichnen.
Siehe auch
Funktionen
sqlcmd,
sqlinit.
sqlinit - SQL Datenbank initialisieren (STD)
Synopsis
int sqlinit( // Status
string; // Datenbankdateiname
int; // Initialisierungsmodus
);
Beschreibung
Die Funktion
sqlinit dient der Initialisierung eines mit den
sql*-Funktionen bearbeitbaren relationalen Datenbankssystems. Für den Initialisierungsmodus kann entweder 0 zur Benutzung einer existierenden Datenbankdatei, oder 1 zur Erzeugung einer neuen Datenbankdatei angegeben werden. Der Rückgabewert ist Null bei erfolgreicher Datenbankinitialisierung, oder 1 wenn die Datenbank bereits initialisiert ist; jeder andere Rückgabewert weist auf einen Fehler bei der Initialisierung bzw. Erzeugung der Datenbank hin. Das Format der mit den
sql*-Funktionen bearbeitbaren Dateien ist das DDB-Format des
Bartels AutoEngineer. Das bedeutet, dass die mit den
sql*-Funktionen speicherbaren Daten in einer DDB-Datei zusammen mit AutoEngineer-Jobdaten oder in einer separaten DDB-Datei abgelegt werden können. Damit ist es z.B. möglich, projektrelevante PPS-Daten in der entsprechenden Designdatei abzulegen, oder spezielle Bauteilattribute automatisch mit entsprechenden Einträgen einer separaten Datenbank zu initialisieren. Für die relationale Datenbank sind im DDB-Format die Datenbankklassen 4096 bis 8191 reserviert. Dabei werden in der Datenbankklasse 4096 die Strukturen der einzelnen Tabellen hinterlegt. Die Datenbankklasse 4097 dient der Verwaltung der freien Datenbankklassen und enthält lediglich einen Eintrag mit dem Namen
info , der bei der Initialisierung mit der Funktion
sqlinit angelegt wird. Die Existenz dieses Eintrages ist ein eindeutiges Kriterium für die Abfrage, ob eine Datenbank für die Verwendung als relationale Datenbankdatei initialisiert ist. Die dynamisch verwalteten Datenbankklassen 4352 bis 8192 dienen der Speicherung der Tabelleneinträge und Indizes. Die Anzahl der für jede Tabelle benötigten Datenbankklassen ergibt sich aus der Anzahl der Tabellenfelder plus 1.
Siehe auch
Funktionen
sqlcmd,
sqlerr.
sqrt - Quadratwurzel berechnen (STD)
Synopsis
double sqrt( // Berechnungsergebnis
double [0.0,[; // Eingabewert
);
Beschreibung
Der Rückgabewert der Funktion
sqrt entspricht der Quadratwurzel des übergebenen Gleitkommawertes.
strcmp - ASCII-Zeichenkettenvergleich (STD)
Synopsis
int strcmp ( // Vergleichsergebnis
string; // Erste Zeichenkette
string; // Zweite Zeichenkette
);
Beschreibung
Die Funktion
strcmp vergleicht die beiden übergebenen Zeichenketten. Der Rückgabewert beträgt Null bei Gleichheit, (-1) wenn die erste Zeichenkette kleiner als die zweite Zeichenkette ist und 1 ansonsten. Die Berechnung erfolgt Zeichen für Zeichen durch numerischen Vergleich der ASCII-Werte der beiden verglichenen Zeichen.
Siehe auch
Funktionen namestrcmp,
numstrcmp.
strcspn - Zeichenkette Länge Startmuster berechnen (STD)
Synopsis
int strcspn( // Match Position
string; // Eingabezeichenkette
string; // Suchzeichenkette
);
Beschreibung
Der Rückgabewert der Funktion
strcspn entspricht der Anzahl der Zeichen am Beginn der Eingabezeichenkette die nicht in der übergebenen Suchzeichenkette vorhanden sind.
strdelchr - Zeichenkette Zeichenmenge entfernen (STD)
Synopsis
void strdelchr(
& string; // Zeichenkette
string; // Zu löschende Zeichen
int; // Startposition
int; // Endposition
);
Beschreibung
Die Funktion
strdelchr löscht in der übergebenen Zeichenkette von der Startposition bis zur Endposition alle Zeichen, die in der Zeichenkette der zu löschenden Zeichen aufgeführt sind.
strextract - Zeichenkette Sub-Zeichenkette extrahieren (STD)
Synopsis
string strextract( // Extrahierte Zeichenkette
string; // Zeichenkette
int; // Startposition (0 - strlen-1)
int; // Endposition (0 - strlen-1)
);
Beschreibung
Die Funktion
strextract gibt die bei der Startposition (Zählung beginnt bei 0) beginnende und bei der Endposition endende Sub-Zeichenkette der übergebenen Zeichenkette zurück. Start- und Endposition werden wenn nötig auf die Stringgrenzen justiert. Ist die Startposition größer als die Endposition, dann dreht sich auch die Extraktionsrichtung entsprechend um.
strextractfilepath - Verzeichnisname aus Dateipfadname extrahieren (STD)
Synopsis
string strextractfilepath( // Rückgabe Verzeichnisname
string; // Pfadname
);
Beschreibung
Die Funktion
strextractfilepath extrahiert den Verzeichnisnamen aus dem angegebenen Pfadnamen.
Siehe auch
Funktion
strgetpurefilename.
strgetconffilename - Konfigurationsdateiname mit optionaler Umgebungsvariable bestimmen (STD)
Synopsis
string strgetconffilename( // Rückgabe Konfigurationsdateipfadname
string; // Bezeichnung Umgebungsvariable
string; // Dateiname
int; // Verzeichnisabfragemodus:
// 0 : Programmverzeichnis bevorzugen
// 1 : Datenverzeichnis für alle Benutzer bevorzugen
// 2 : Datenverzeichnis für aktuellen Benutzer bevorzugen
);
Beschreibung
Die Funktion strgetconffilename gibt den über die angegebene Umgebungsvariable definierten Konfigurationsdateinamen zurück. Die Konfigurationsdateisuche wird dabei in verschiedenen Verzeichnissen entsprechend dem spezifierten Verzeichnisabfragemodus durchgeführt.
Siehe auch
Funktion strgetvarfilename.
strgetvarfilename - Dateiname aus Umgebungsvariable ableiten (STD)
Synopsis
string strgetvarfilename( // Rückgabe Dateiname
string; // Bezeichnung Umgebungsvariable
);
Beschreibung
Die Funktion strgetvarfilename gibt den über die angegebene Umgebungsvariable definierten Datei- bzw. Dateipfadnamen zurück.
Siehe auch
Funktion strgetconffilename.
strgetpurefilename - Dateiname aus Dateipfadname extrahieren (STD)
Synopsis
string strgetpurefilename( // Rückgabe Dateiname
string; // Pfadname
);
Beschreibung
Die Funktion
strgetpurefilename extrahiert den Dateinamen aus dem angegebenen Pfadnamen.
Siehe auch
Funktion
strextractfilepath.
strlen - Zeichenkette Länge ermitteln (STD)
Synopsis
int strlen( // Zeichenkettenlänge
string; // Zeichenkette
);
Beschreibung
Der Rückgabewert der Funktion
strlen entspricht der Länge der übergebenen Zeichenkette (ohne abschließendes NUL-Zeichen).
strlistitemadd - String in Stringliste eintragen (STD)
Synopsis
void strlistitemadd(
& string; // Durch Komma getrennte Stringliste
string; // String
);
Beschreibung
Die Funktion strlistitemadd trägt den spezifizierten String in die durch Komma getrennte Liste von Strings ein.
Siehe auch
Funktion strlistitemchk.
strlistitemchk - String in Stringliste suchen (STD)
Synopsis
int strlistitemchk( // Suchergebnis
string; // Durch Komma getrennte Stringliste
string; // Suchstring
);
Beschreibung
Die Funktion strlistitemchk sucht den spezifizierten Suchstring in der durch Komma getrennten Liste von Strings. Der Funktionsrückgabewert ist Null wenn der Suchstring nicht in der Stringliste enthalten ist, 1 wenn der Suchstring in der Stringliste enthalten ist oder 2 wenn der Suchstring mit der kompletten Stringliste identisch ist.
Siehe auch
Funktion strlistitemadd.
strlower - Zeichenkette in Kleinbuchstaben umwandeln (STD)
Synopsis
void strlower(
& string; // Ein-/Ausgabezeichenkette
);
Beschreibung
Die Funktion
strlower wandelt die in der übergebenen Zeichenkette vorhandenen Buchstaben in Kleinbuchstaben um.
strmatch - Zeichenkette Musterabfrage (STD)
Synopsis
int strmatch( // Match Flag
string; // Eingabezeichenkette
string; // Testpatternzeichenkette
);
Beschreibung
Die Funktion
strmatch überprüft, ob die Eingabezeichenkette dem übergebenen Testpattern entspricht. Dabei sind in dem Testpattern die Sonderzeichen
* für eine beliebige Zeichenfolge und
? für ein beliebiges Zeichen in jeder Kombination mit normalen Zeichen erlaubt. Der Rückgabewert ist ungleich Null, wenn die Eingabezeichenkette dem Testpattern entspricht und Null wenn nicht.
strnset - Zeichenkette mit n Zeichen füllen (STD)
Synopsis
void strnset(
& string; // Zeichenkette
char; // Füllzeichen
int; // Füllanzahl
);
Beschreibung
Die Funktion
strnset ersetzt die ersten Füllanzahl Zeichen der übergebenen Zeichenkette mit dem Füllzeichen. Ist die Länge der Zeichenkette kleiner als die Füllanzahl, so werden nur die vorhandenen Zeichen, d.h. alle, ersetzt.
strreverse - Zeichenkette Zeichenreihenfolge umkehren (STD)
Synopsis
void strreverse(
& string; // Ein-/Ausgabezeichenkette
);
Beschreibung
Die Funktion
strreverse kehrt die Reihenfolge der Zeichen in der übergebenen Zeichenkette um.
strscannext - Zeichen in Zeichenkette vorwärts suchen (STD)
Synopsis
int strscannext( // Match Position
string; // Zeichenkette
string; // Suchzeichenkette
int; // Startposition (1 - strlen)
int; // Stop-on-match Flag:
// 0 = Continue-on-match
// 1 = Stop-on-match
);
Beschreibung
Die Funktion
strscannext sucht in der übergebenen Zeichenkette ab der Startposition (Zählung beginnt bei 1) aufsteigend nach Zeichen, die in der Suchzeichenkette aufgeführt sind. Das Suchflag gibt an, ob die erste Position, die ein gesuchtes Zeichen enthält, zurückgegeben wird oder die erste Position, die kein gesuchtes Zeichen enthält. Der Rückgabewert gibt die gefundene Position an oder entspricht der Zeichenkettenlänge plus 1, wenn die Suche erfolglos war. Die Startposition wird wenn nötig auf die Stringgrenzen justiert.
strscanprior - Zeichen in Zeichenkette rückwärts suchen (STD)
Synopsis
int strscanprior( // Match Position
string; // Zeichenkette
string; // Suchzeichenkette
int; // Startposition
int; // Stop-on-match Flag:
// 0 = Continue-on-match
// 1 = Stop-on-match
);
Beschreibung
Die Funktion
strscanprior sucht in der übergebenen Zeichenkette ab der Startposition absteigend nach Zeichen, die in der Suchzeichenkette aufgeführt sind. Das Suchflag gibt an, ob die erste Position, die ein gesuchtes Zeichen enthält, zurückgegeben wird oder die erste Position, die kein gesuchtes Zeichen enthält. Der Rückgabewert gibt die gefundene Position an oder Null wenn die Suche erfolglos war. Die Startposition wird wenn nötig auf die Stringgrenzen justiert.
strset - Zeichenkette mit Zeichen füllen (STD)
Synopsis
void strset(
& string; // Ein-/Ausgabezeichenkette
char; // Füllzeichen
);
Beschreibung
Die Funktion
strset ersetzt alle Zeichen der übergebenen Zeichenkette mit dem Füllzeichen.
strspn - Zeichenkette Länge bis Endmuster ermitteln (STD)
Synopsis
int strspn( // Mismatch Position
string; // Eingabezeichenkette
string; // Suchzeichenkette
);
Beschreibung
Der Rückgabewert der Funktion
strspn entspricht der Anzahl der Zeichen am Beginn der Eingabezeichenkette die in der übergebenen Suchzeichenkette vorhanden sind.
strupper - Zeichenkette in Großbuchstaben umwandeln (STD)
Synopsis
void strupper(
& string; // Ein-/Ausgabezeichenkette
);
Beschreibung
Die Funktion
strupper wandelt die in der übergebenen Zeichenkette vorhandenen Buchstaben in Großbuchstaben um.
syngetintpar - BNF/Scanner Integerparameter abfragen (STD)
Synopsis
int syngetintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = String-Kontrollzeichenauswertungsmodus
// 1 = Callback-Funktion für Kommentartexte aktivieren
// 2 = Flag - beliebige Identifierzeichen
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
syngetintpar dient der Abfrage von mit
synsetintpar im
User Language-BNF-/Syntaxscanner gesetzten Integerparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen synparsefile,
synparseincfile,
synparsestring,
synsetintpar.
synparsefile - BNF/Parser Datei einlesen (STD)
Synopsis
synparsefile( // Scan Status
string; // Eingabedateiname
[]; // Optionale Callback-Funktion für Kommentare
);
Beschreibung
Die Funktion
synparsefile aktiviert einen Parser zur Abarbeitung der durch Dateinamen spezifizierten Eingabedatei. Dabei erfolgt die Abarbeitung entsprechend der im
User Language-Programm festgelegten BNF-Beschreibung des Eingabedatenformats. Nach Bedarf werden automatisch die in der BNF definierten Aktionen bzw. Anwenderfunktionen ausgelöst. Innerhalb dieser Anwenderfunktionen kann mit
synscanline die aktuelle Zeilennummer der Eingabedatei und mit
synscanstring die aktuell eingelesene Zeichenkette ermittelt werden, wobei die aktuelle Zeichenkette nach Bedarf auch einer semantischen Prüfung unterzogen werden kann. Die Funktion
synparsefile wird beendet, sobald das Ende der Eingabedatei erreicht ist oder ein Syntaxfehler bzw. ein durch eine Anwenderfunktion erkannter semantischer Fehler aufgetreten ist.
Callback-Funktion für Kommentare
Über den zweiten Funktionsparameter kann eine Callback-Funktion für Kommentartexte spezifiziert werden.
Diese Callback-Funktion wird aktiviert, wenn zusätzlich der entsprechende Parameter über die Funktion
synsetintpar gesetzt wurde.
Die Callback-Funktion ist wie folgt zu definieren.
int commentfuncname(
string commentstring, // Kommentartext ohne Kommentarbegrenzer
)
{
// Verarbeitungsprogramm
:
return(stat);
}
Der Parserlauf wird abgebrochen, wenn die Callback-Funktion einen Wert ungleich Null zurückgibt. Andernfalls wird er Parserlauf forstgesetzt.
Diagnose
Die möglichen Rückgabewerte der Funktion
synparsefile haben folgende Bedeutung:
Rückgabewert | Bedeutung |
0 | Parserlauf fehlerfrei beendet |
1 | Keine BNF-Definition verfügbar |
2 | Parser (synparsefile) ist bereits aktiv |
3 | Datei kann nicht geöffnet werden |
4 | Zu viele offene Dateien |
5 | Fataler Schreib-/Lesefehler |
6 | Scanelement zu lang |
7 | Syntaxfehler |
8 | Unerwartetes Dateiende |
9 | Stacküberlauf (BNF zu komplex) |
10 | Stackunterlauf (BNF fehlerhaft) |
11 | Fehler von Parser-Aktion/referenzierter Funktion |
Siehe auch
Funktionen
syngetintpar,
synparseincfile,
synparsestring,
synscaneoln,
synscanigncase,
synscanline,
synscanstring,
synsetintpar, sowie Kapitel 2.6.4 dieses Handbuchs.
synparseincfile - BNF/Parser Includedatei einlesen (STD)
Synopsis
int synparseincfile( // Status
string; // Includedateiname
);
Beschreibung
Mit der Parser-Funktion
synparseincfile wird die Bearbeitung einer eingebundenen Datei (Includedatei) aktiviert, d.h. der Parser setzt bei Aufruf dieser Funktion den Einlesevorgang unmittelbar am Beginn der namentlich spezifizierten Includedatei fort. Sobald das Ende der Includedatei erreicht ist, wird das Terminalsymbol
EOFINC als erkannt gemeldet, und der Einlesevorgang wird and der in der übergeordneten Datei unterbrochenen Stelle fortgesetzt. Der Rückgabewert von
synparseincfile ist Null, wenn kein Fehler festgestellt wurde, (-1) wenn die Includedatei nicht geöffnet werden konnte, oder (-2) wenn der Parser, d.h. die Funktion
synparsefile nicht aktiv ist.
Warnung
Bei Verwendung der Funktion
synparseincfile ist eine entsprechende Einbindung des Terminalsymbols
EOFINC in die BNF-Definition erforderlich, da der Parser sonst immer einen Syntaxfehler meldet, sobald das Ende der Includedatei erreicht ist.
Siehe auch
Funktionen
syngetintpar,
synparsefile,
synparsestring,
synscaneoln,
synscanigncase,
synscanline,
synscanstring,
synsetintpar, sowie Kapitel 2.6.4 dieses Handbuchs.
synparsestring - BNF/Parser Zeichenkette einlesen (STD)
Synopsis
synparsestring( // Scan Status
string; // Eingabestring
[]; // Optionale Callback-Funktion für Kommentare
);
Beschreibung
Die Funktion
synparsestring aktiviert einen Parser zur Abarbeitung der übergebenen Zeichenkette. Dabei erfolgt die Abarbeitung entsprechend der im
User Language-Programm festgelegten BNF-Beschreibung des Eingabedatenformats. Nach Bedarf werden automatisch die in der BNF definierten Aktionen bzw. Anwenderfunktionen ausgelöst. Innerhalb dieser Anwenderfunktionen kann mit
synscanline die aktuelle Zeilennummer der Eingabedatei und mit
synscanstring die aktuell eingelesene Zeichenkette ermittelt werden, wobei die aktuelle Zeichenkette nach Bedarf auch einer semantischen Prüfung unterzogen werden kann. Die Funktion
synparsestring wird beendet, sobald das Ende der abzuarbeitenden Zeichenkette erreicht ist oder ein Syntaxfehler bzw. ein durch eine Anwenderfunktion erkannter semantischer Fehler aufgetreten ist.
Callback-Funktion für Kommentare
Über den zweiten Funktionsparameter kann eine Callback-Funktion für Kommentartexte spezifiziert werden.
Diese Callback-Funktion wird aktiviert, wenn zusätzlich der entsprechende Parameter über die Funktion
synsetintpar gesetzt wurde.
Die Callback-Funktion ist wie folgt zu definieren.
int commentfuncname(
string commentstring, // Kommentartext ohne Kommentarbegrenzer
)
{
// Verarbeitungsprogramm
:
return(stat);
}
Der Parserlauf wird abgebrochen, wenn die Callback-Funktion einen Wert ungleich Null zurückgibt. Andernfalls wird er Parserlauf forstgesetzt.
Diagnose
Die möglichen Rückgabewerte der Funktion
synparsestring haben folgende Bedeutung:
Rückgabewert | Bedeutung |
0 | Parserlauf fehlerfrei beendet |
1 | Keine BNF-Definition verfügbar |
2 | Parser (synparsestring) ist bereits aktiv |
3 | Datei kann nicht geöffnet werden |
4 | Zu viele offene Dateien |
5 | Fataler Schreib-/Lesefehler |
6 | Scanelement zu lang |
7 | Syntaxfehler |
8 | Unerwartetes Ende der Zeichenkette |
9 | Stacküberlauf (BNF zu komplex) |
10 | Stackunterlauf (BNF fehlerhaft) |
11 | Fehler von Parser-Aktion/referenzierter Funktion |
Siehe auch
Funktionen
syngetintpar,
synparsefile,
synparseincfile,
synscaneoln,
synscanigncase,
synscanline,
synscanstring,
synsetintpar, sowie Kapitel 2.6.4 dieses Handbuchs.
synscaneoln - BNF/Scanner Zeilenendeerkennung setzen (STD)
Synopsis
int synscaneoln( // Status
int [0,1]; // Scanner Zeilenendeerkennung Modus:
// 0 = Deaktivieren EOLN-Erkennung
// 1 = Aktivieren EOLN-Erkennung
);
Beschreibung
Mit der Funktion
synscaneoln kann die Zeilenendeerkennung des durch
synparsefile aktivierbaren BNF-Parsers wahlweise aktiviert oder deaktiviert werden. Per Default ist die Zeilenendeerkennung deaktiviert. Der Rückgabewert der Funktion ist ungleich Null bei Spezifikation ungültiger Parameter.
Warnung
Die Verwendung des Terminalsymbols
EOLN in der BNF-Definition ist nur zulässig bzw. sinnvoll, wenn für die Dateibearbeitung auch die Zeilenendeerkennung aktiviert ist.
Siehe auch
Funktionen
synparsefile,
synparseincfile,
synparsestring,
synscanigncase,
synscanline,
synscanstring, sowie Kapitel 2.6.4 dieses Handbuchs.
synscanigncase - BNF/Scanner Schlüsselworterkennungsmodus setzen (STD)
Synopsis
int synscanigncase( // Status
int [0,1]; // Scanner Schlüsselworterkennungsmodus:
// 0 = Groß-/Kleinschreibung unterscheiden
// 1 = Groß-/Kleinschreibung ignorieren
);
Beschreibung
Mit der Funktion
synscanigncase kann die Unterscheidung zwischen Groß- und Kleinschreibung beim Einlesen von Schlüsselwörtern in dem durch
synparsefile aktivierten BNF-Parser wahlweise deaktiviert oder aktiviert werden. Per Default unterscheidet der Parser zwischen Groß- und Kleinschreibung. Der Rückgabewert der Funktion ist ungleich Null bei Spezifikation ungültiger Parameter.
Siehe auch
Funktionen
synparsefile,
synparseincfile,
synparsestring,
synscaneoln,
synscanline,
synscanstring, sowie Kapitel 2.6.4 dieses Handbuchs.
synscanline - BNF/Scanner Eingabezeilennummer abfragen (STD)
Synopsis
int synscanline( // Eingabezeilennummer
);
Beschreibung
Der Rückgabewert der Funktion
synscanline ist die Nummer der aktuell während des durch
synparsefile aktivierten Parservorgangs eingelesene Eingabedateizeile.
Siehe auch
Funktionen
synparsefile,
synparseincfile,
synparsestring,
synscaneoln,
synscanigncase,
synscanstring, sowie Kapitel 2.6.4 dieses Handbuchs.
synscanstring - BNF/Scanner Eingabestring abfragen (STD)
Synopsis
string synscanstring( // Scanner-Eingabestring
);
Beschreibung
Der Rückgabewert der Funktion
synscanstring ist die zuletzt während des durch
synparsefile aktivierten Parservorgangs eingelesene Zeichenkette.
Siehe auch
Funktionen
synparsefile,
synparseincfile,
synparsestring,
synscaneoln,
synscanigncase,
synscanline, sowie Kapitel 2.6.4 dieses Handbuchs.
synsetintpar - BNF/Scanner Integerparameter setzen (STD)
Synopsis
int synsetintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = String-Kontrollzeichenauswertungsmodus
// 1 = Callback-Funktion für Kommentartexte aktivieren
// 2 = Flag - beliebige Identifierzeichen
int; // Parameterwert
);
Beschreibung
Die Funktion
synsetintpar dient dazu, Systemparameter vom Typ im
int im
User Language-BNF-/Syntaxscanner zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
synsetintpar gesetzten Systemparametern können mit der Funktion
syngetintpar abgefragt werden.
Siehe auch
Funktionen syngetintpar,
synparsefile,
synparseincfile,
synparsestring.
system - Betriebssystemkommando absetzen und Ausführung abwarten (STD)
Synopsis
int system( // Status
string; // Kommando
);
Beschreibung
Die Funktion
system aktiviert das als Zeichenkette übergebene Kommando auf Betriebssystemebene.
Das Kommando bzw. der Programmaufruf wird an den Kommandointerpreter des Betriebssystems, d.h. an die Betriebssystemshell übergeben, und die Ablaufkontrolle wird erst nach Ausführung des Kommandos wieder an BAE zurückgegeben. Der Rückgabewert der Funktion ergibt sich zu dem vom Betriebssystem, dem Kommandointerpreter bzw. dem aufgerufenen Programm zurückgegebenen Status. Ein Wert von Null deutet dabei in der Regel auf eine fehlerfreie Ausführung hin, während andere Werte üblicherweise Fehler oder Warnungen kennzeichnen.
Einschränkungen
Die Funktion
system kann nicht in der
BAE Demo-Software angewendet werden.
Unter MS-DOS benötigt der Phar Lap DOS-Extender ausreichend konventionellen Speicher zur Ausführung von (Child-)Prozessen. Die Größe des zur Verfügung stehenden konventionellen Speichers wird mit den Optionen
-MINREAL und
-MAXREAL des Phar Lap DOS Extenders festgelegt. Zur Ausführung von
User Language-Programmen, die die
system-Funktion benutzen, sind die
User Language-Interpreterumgebungen mit Hilfe des mit der BAE-Software ausgelieferten CFIG386-Tools von Phar Lap wie folgt umzukonfigurieren:
> cfig386 <EXEFILE> -maxreal 0ffffh 
Für
<EXEFILE> ist jeweils der Name des
User Language Interpreters
(scm.exe ,
ged.exe ,
neurrut.exe ,
cam.exe ,
gerview.exe bzw.
ced.exe ) einzusetzen.
Warnungen
Beachten Sie, dass die
system-Funktion grundlegende Mehrprozess- bzw. Multitasking-Techniken voraussetzt, die auf PC-basierenden Systemen u.U. nicht ausreichend unterstützt werden, oder die in Rechnernetzwerken (abhängig vom auszuführenden Kommando) Probleme bereiten können.
Es wird dringend empfohlen, die Standardausgabe von DOS-Kommandos auf temporäre Dateien umzulenken und zur Anzeige eine
User Language-Funktion zur Dateibetrachtung zu verwenden, da andernfalls die BAE-Grafikoberfläche von der Standardausgabe der mit
system abgesetzten DOS-Kommandos überschrieben wird.
Die Fehlerausgabe von DOS-Kommandos erfolgt grundsätzlich auf den Bildschirm, wodurch die BAE-Grafikoberfläche überschrieben wird. Da unter DOS prinzipiell keine Möglichkeit zur Umlenkung der Fehlerausgabe besteht, ist dieses Problem nur dadurch zu umgehen, dass z.B. durch eine Konsistenzprüfung vor dem Aufruf der
system-Funktion die Aktivierung fehlerhafter DOS-Kommandos unterdrückt wird.
Da von der BAE-Grafikoberfläche keine Benutzereingaben an DOS-Kommandos übergeben werden können, ist dringend davon abzuraten, interaktive DOS-Kommandos bzw. Grafikapplikationen mit der
system-Funktion abzusetzen (andernfalls "hängt sich das System auf"). Unter UNIX lässt sich dieses Problem u.U. dadurch umgehen, dass interaktive Kommandos wie z.B.
more oder
vi in Hintergrundprozessen (&) aktiviert werden (was allerdings im Remote Login zu Problemen beim Terminalzugriff führen kann).
Siehe auch
Funktion
launch.
tan - Tangens berechnen (STD)
Synopsis
double tan( // Berechnungsergebnis
double; // Winkelwert (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
tan entspricht dem Tangens des übergebenen Winkels. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
tanh - Hyperbolischen Tangens berechnen (STD)
Synopsis
double tanh( // Berechnungsergebnis
double; // Winkelwert (STD3)
);
Beschreibung
Der Rückgabewert der Funktion
tanh entspricht dem hyperbolischen Tangens des übergebenen Winkels. Der übergebene Gleitkommawert wird als Bogenmaßangabe interpretiert.
tolower - Zeichen in Kleinbuchstaben umwandeln (STD)
Synopsis
char tolower( // Ausgabezeichen
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
tolower ist der Großbuchstabe zu dem übergebenen Eingabezeichen. Bei Eingabezeichen, die keinen Buchstaben darstellen, wird der Eingabewert unverändert zurückgegeben.
toupper - Zeichen in Großbuchstaben umwandeln (STD)
Synopsis
char toupper( // Ausgabezeichen
char; // Eingabezeichen
);
Beschreibung
Der Rückgabewert der Funktion
toupper ist der Kleinbuchstabe zu dem übergebenen Eingabezeichen. Bei Eingabezeichen, die keinen Buchstaben darstellen, wird der Eingabewert unverändert zurückgegeben.
uliptype - User Language Interpreterumgebung abfragen (STD)
Synopsis
int uliptype( // Interpretertyp:
// 0x0000 = Ungültig/unbekannt
// 0x0080 = SCM - Schaltplaneditor
// 0x0040 = GED - Layouteditor
// 0x0010 = AR - Autorouter
// 0x0008 = CAM - CAM-Prozessor
// 0x0004 = CED - Chipeditor
// 0x1000 = CV - CAM-View
);
Beschreibung
Die Funktion
uliptype gibt den Typ des aktuell aktiven
User Language Interpreter zurück.
ulipversion - User Language Interpreter Version abfragen (STD)
Synopsis
int ulipversion( // Interpreterversion
);
Beschreibung
Die Funktion
ulipversion gibt die interne Versionsnummer des aktuellen
User Language Interpreter zurück.
ulproginfo - User Language-Programminfo abfragen (STD)
Synopsis
int ulproginfo( // Status
string; // Programmname
& int; // Programmversion
& int; // Programmaufruftyp
);
Beschreibung
Die Funktion
ulproginfo ermittelt die Version und die zulässigen Interpreterumgebungen des angegebenen
User Language-Programms. Die Programmversion ist dabei die interne Versionsnummer des zur Kompilierung verwendeten
User Language Compilers. Der Programmaufruftyp ist ein bit-maskierter Wert, über den sich die zur Programmausführung berechtigten
User Language-Interpreterumgebungen abfragen lassen. Diese Angaben werden benötigt, um mit Hilfe der
ulip*-Funktionen zu entscheiden, ob ein spezielles
User Language-Programm in der aktuell aktiven Interpreterumgebung ablauffähig ist. Der Rückgabewert der Funktion ist ungleich Null, wenn das angegebene Programm nicht gefunden wurde.
Siehe auch
Funktionen
uliptype,
ulipversion.
ulsystem - User Language-Programm aufrufen (STD)
Synopsis
int ulsystem( // Status
string; // Programmname
& int; // Programmzähler
);
Beschreibung
Die Funktion
ulsystem startet das angegebene
User Language-Programm. Ein Rückgabewert ungleich Null gibt an, dass bei dem Laden oder Abarbeiten des Programmes ein Fehler aufgetreten ist. In dem Parameter Programmzähler wird im Fehlerfall die Adresse der zuletzt ausgeführten Anweisung des
User Language=Programmes zurückgegeben (siehe Einträge in dem vom Compiler erzeugten Listingfile).
Diagnose
Die möglichen Rückgabewerte der Funktion
ulsystem haben folgende Bedeutung:
Rückgabewert | Bedeutung |
0 | Programmlauf fehlerfrei beendet |
1 | DDB/Datenbank-Zugriffsfehler |
2 | Programm bereits geladen |
3 | Programm nicht gefunden |
4 | Inkompatible User Language Programm Version |
5 | Inkompatible Index-/Funktions-Referenzen |
6 | Stack Unterlauf |
7 | Stack Überlauf |
8 | Division durch Null |
9 | Fehler bei System-Funktions-Aufruf |
10 | System-Funktion nicht verfügbar |
11 | System-Funktion nicht implementiert |
12 | Anwender-Funktion nicht gefunden |
13 | Ungültiger Datentyp für referenzierte Funktion |
14 | Ungültige Parameterliste für referenzierte Funktion |
15 | Fehler beim Array-Zugriff |
16 | Ungültiger Array-Index |
17 | Allgemeiner Dateizugriffsfehler |
18 | Allgemeiner Dateilesefehler |
19 | Allgemeiner Dateischreibfehler |
Siehe auch
Funktion ulsystem_exit.
ulsystem_exit - User Language-Programm nach Beendigung des aktuellen User Language-Programms aufrufen (STD)
Synopsis
void ulsystem_exit(
string; // Programmname
);
Beschreibung
Die Funktion
ulsystem startet das angegebene
User Language-Programm nach Beendigung des aktuellen
User Language-Programms.
Siehe auch
Funktionen exit,
ulsystem.
vardelete - Globale User Language-Variable löschen (STD)
Synopsis
int vardelete( // Status
string; // Variablenname
);
Beschreibung
Mit der Funktion
vardelete kann eine zuvor mit
varset definierte globale
User Language-Variable gelöscht werden. Der Funktionsrückgabewert ist Null, wenn der Löschvorgang erfolgreich war oder (-1) wenn keine globale
User Language-Variable mit dem spezifizierten Variablennamen definiert ist.
Siehe auch
Funktionen
varget,
varset.
varget - Globale User Language-Variable abfragen (STD)
Synopsis
int varget( // Status
string; // Variablenname
& void; // Variablenwert
);
Beschreibung
Mit der Funktion
varget kann der Wert einer zuvor mit
varset definierten globalen
User Language-Variablen ermittelt werden. Der Funktionsrückgabewert ist Null, wenn die Abfrage erfolgreich war, (-1) wenn keine globale
User Language-Variable mit dem spezifizierten Variablennamen definiert ist oder
(-2) wenn der Datentyp des Parameters für die Rückgabe des Variablenwertes nicht kompatibel zum aktuell definierten Datentyp der Variable ist.
Siehe auch
Funktionen
vardelete,
varset.
varset - Globale User Language-Variable setzen (STD)
Synopsis
int varset( // Status
string; // Variablenname
void; // Variablenwert
);
Beschreibung
Die Funktion
varset definiert eine globale
User Language-Variable mit dem angegebenen Variablennamen und ordnet dieser Variable den spezifizierten Variablenwert zu. Der Variablenwert muss einen Basisdatentyp
(int ,
double ,
char oder
string ) repräsentieren, d.h. es sind keine komplexen bzw. zusammengesetzten Datentypen wie etwa Arrays, Strukturen oder
index -Typen zulässig. Der Funktionsrückgabewert ist Null bei erfolgreicher Variablendefinition, (-1) bei ungültigem Variablennamen oder (-2) bei unzulässigem Datentyp für den Variablenwert. Eine mit
varset definierte Variable bleibt auch nach Beendigung des aktuell aktiven
User Language-Programms definiert bis sie mit der Funktion
vardelete wieder gelöscht werden oder bis das aktuell aktive BAE-Programm-Modul verlassen wird. Mit der Funktion
varget können die Werte der mit
varset definierten Variablen abgefragt werden. Da die mit
varset definierten globalen Variablen auch nach Beendigung des definierenden
User Language-Programms erhalten bleiben, ist über diese Variablen ein Datenaustausch zwischen zeitlich unabhängig voneinander ablaufenden
User Language-Programmen möglich.
Siehe auch
Funktionen
vardelete,
varget.
C.3 SCM-Systemfunktionen
In diesem Abschnitt werden (in alphabetischer Reihenfolge) die in der
Bartels User Language definierten SCM-Systemfunktionen beschrieben. Beachten Sie bitte die Konventionen zur Funktionsbeschreibung in
Anhang C.1.
C.3.1 Schaltplan-Datenzugriffsfunktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CAP zugeordnet, d.h. diese Funktionen können im
Schaltplaneditor aufgerufen werden:
cap_blockname - Schaltplan Blockname abfragen (CAP)
Synopsis
string cap_blockname( // Schaltplan Blockname
);
Beschreibung
Der Rückgabewert der Funktion
cap_blockname ergibt sich aus dem Blocknamen, der für das aktuell geladene Stromlaufblatt definiert ist. Wenn kein Stromlaufblatt geladen ist oder wenn das aktuell geladene Element nicht als Blockschaltbild definiert ist, wird ein Leerstring zurückgegeben.
cap_blocktopflag - Schaltplan Blockhierarchieebene abfragen (CAP)
Synopsis
int cap_blocktopflag( // Abfrageergebnis
);
Beschreibung
Die Funktion
cap_blocktopflag dient der Abfrage des Hierarchiemodus des aktuell geladenen Stromlaufblatts. Der Rückgabewert der Funktion
cap_blocktopflag ergibt sich zu Null, wenn das aktuell geladene Schaltplanblatt als Blockschaltbild für einen hierarchischen Schatungsentwurf definiert ist, 1 wenn das Schaltplanblatt ein Planelement der obersten Stromlaufhierarchieebene darstellt, oder 2 wenn das Schaltplanblatt als einmalig referenzierbares Blockschaltbild definiert ist.
cap_figboxtest - SCM-Elementüberschneidung Rechteck prüfen (CAP)
Synopsis
int cap_figboxtest( // Status
index C_FIGURE; // Element
double; // Rechteck linke Grenze (STD2)
double; // Rechteck untere Grenze (STD2)
double; // Rechteck rechte Grenze (STD2)
double; // Rechteck obere Grenze (STD2)
);
Beschreibung
Die Funktion
cap_figboxtest prüft, ob das angegebene Element das angegebene Rechteck schneidet. Der Rückgabewert ist ungleich Null, wenn die Elementgrenzen das angegebene Rechteck schneiden.
cap_findblockname - SCM-Blockschaltbild mit angegebenem Blocknamen suchen (CAP)
Synopsis
string cap_findblockname( // Rückgabe SCM-Planelementname
string; // DDB-Dateiname
string; // Blockname
);
Beschreibung
Die Funktion
cap_findblockname sucht in der angegebenen DDB-Datei nach einem hierarchischen Schaltplanblatt mit dem spezifizierten Blocknamen und gibt den gefundenen SCM-Planelementnamen zurück. Ist der Zugriff auf die angegebene DDB-Datei nicht möglich oder existiert in der DDB-Datei kein hierarchisches Schaltplanblatt mit dem angegebenen Blocknamen, dann wird ein Leerstring zurückgegeben.
cap_findlayconpart - Bauteilindex aus Layoutnetzliste ermitteln (CAP)
Synopsis
int cap_findlayconpart( // Status
string; // Bauteilname
& index CL_CPART; // Rückgabe Bauteilindex
);
Beschreibung
Die Funktion
cap_findlayconpart sucht in der mit
cap_layconload aktuell geladenen Layoutnetzliste nach dem spezifierten Bauteilnamen und gibt den zugehörigen Bauteilindex zurück. Der Funktionsrückgabewert ist Null wenn das Bauteil gefunden wurde oder ungleich Null bei fehlgeschlagener Suche.
Siehe auch
Funktionen cap_findlayconpartpin,
cap_findlaycontree,
cap_getlaytreeidx,
cap_layconload.
cap_findlayconpartpin - Bauteilpinindex aus Layoutnetzliste ermitteln (CAP)
Synopsis
int cap_findlayconpartpin( // Status
string; // Pinname
index CL_CPART; // Netzlistenbauteil
& index CL_CPIN; // Rückgabe Netzlistenbauteilpin
);
Beschreibung
Die Funktion
cap_findlayconpartpin sucht in der mit
cap_layconload aktuell geladenen Layoutnetzliste nach dem spezifierten Bauteilpinnamen und gibt den zugehörigen Bauteilpinindex zurück. Der Funktionsrückgabewert ist Null wenn der Bauteilpin gefunden wurde oder ungleich Null bei fehlgeschlagener Suche.
Siehe auch
Funktionen cap_findlayconpart,
cap_findlaycontree,
cap_getlaytreeidx,
cap_layconload.
cap_findlaycontree - Netznamens-Netzindex aus Layoutnetzliste ermitteln (CAP)
Synopsis
int cap_findlaycontree( // Status
string; // Netzname
& index CL_CNET; // Rückgabe Netzindex
);
Beschreibung
Die Funktion
cap_findlaycontree sucht in der mit
cap_layconload aktuell geladenen Layoutnetzliste nach dem spezifierten Netznamen und gibt den zugehörigen Netzindex zurück. Der Funktionsrückgabewert ist Null wenn das Netz gefunden wurde oder ungleich Null bei fehlgeschlagener Suche.
Siehe auch
Funktionen cap_findlayconpartpin,
cap_findlayconpart,
cap_getlaytreeidx,
cap_layconload.
cap_getglobnetref - Globale Netznamensreferenz abfragen (CAP)
Synopsis
string cap_getglobnetref( // Rückgabe Netznamensreferenz
// (oder Leerstring wenn nicht referenziert)
string; // Netz-/Treename
);
Beschreibung
Die Funktion
cap_getglobnetref ermittelt die globalen Netznamensreferenzbezeichnung für das angebene Netz.
cap_getlaytreeidx - Netznummer-Netzindex aus Layoutnetzliste ermitteln (CAP)
Synopsis
int cap_getlaytreeidx( // Status
int; // Netznummer
& index CL_CNET; // Rückgabe Netzindex
);
Beschreibung
Die Funktion
cap_getlaytreeidx sucht in der mit
cap_layconload aktuell geladenen Layoutnetzliste nach der spezifierten Netznummer und gibt den zugehörigen Netzindex zurück. Der Funktionsrückgabewert ist Null wenn das Netz gefunden wurde oder ungleich Null bei fehlgeschlagener Suche.
Siehe auch
Funktionen cap_findlayconpartpin,
cap_findlayconpart,
cap_findlaycontree,
cap_layconload.
cap_getpartattrib - SCM-Bauteilattributwert abfragen (CAP)
Synopsis
int cap_getpartattrib( // Status
string; // Bauteilname
string; // Attributname
& string; // Attributwert Rückgabe
);
Beschreibung
Die Funktion
cap_getpartattrib ermittelt einen Attributwert eines namentlich spezifizierten Bauteils des aktuell geladenen Schaltplanblatts. Der Funktionsrückgabewert ist Null bei erfolgreicher Ermittlung des Attributwerts, (-1) wenn kein Stromlaufblatt geladen ist, (-2) bei fehlenden bzw. ungültigen Parametern, (-3) wenn das angegebene Bauteil auf dem aktuellen Schaltplan nicht gefunden wurde oder (-4) wenn das spezifizierte Attribut für das angegebene Bauteil nicht definiert bzw. nicht gesetzt ist.
cap_getrulecnt - SCM-Element Regelanzahl abfragen (CAP)
Synopsis
int cap_getrulecnt( // Regelanzahl oder (-1) bei Fehler
int; // Object class code
int; // Object ident code (int oder Indextyp)
);
Beschreibung
Mit der Funktion
cap_getrulecnt kann die Anzahl der an ein spezifisches Objekt zugewiesenen Regeln ermittelt werden. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
C_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
C_POOL für die Objektidentifikation) durchgeführt werden. Die von
cap_getrulecnt ermittelte (nicht-negative) objektspezifische Regelanzahl wird im Rückgabewert der Funktion übergeben und bestimmt den Wertebereich für den Regelnamenslistenindex in nachfolgenden Aufrufen der Funktion
cap_getrulename zur Ermittlung von Regelnamen für das entsprechende Objekt. Der Rückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt,
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_getrulename - SCM-Element Regelname abfragen (CAP)
Synopsis
int cap_getrulename( // Status
int; // Object class code
int; // Object ident code (int oder Indextyp)
int [0,[; // Regelnamenslistenindex
& string; // Regelname
);
Beschreibung
Mit der Funktion
cap_getrulename können die Namen der an ein spezifisches Objekt zugewiesenen Regeln ermittelt werden. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
C_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
C_POOL für die Objektidentifikation) durchgeführt werden. Der Regelnamenslistenindex zur Auswahl der gewünschten Regel muss mindestens Null jedoch kleiner als die mit der Funktion
cap_getrulecnt abfragbare Anzahl objektspezifischer Regeln sein. Der ermittelte Regelname wird über den letzten Funktionsparameter an den Aufrufer zurückgegeben. Der Rückgabewert der Funktion
cap_getrulename ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt,
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_getscbustapidx - Aktuell gescannten SCM-Busanschluß ermitteln (CAP)
Synopsis
index C_BUSTAP cap_getscbustapidx( // Busanschlußindex oder (-1) wenn kein Busanschluß gescannt
);
Beschreibung
Die Funktion cap_getscbustappidx gibt den aktuell gescannten Busanschlußindex zurück. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von cap_scanall, cap_scanfelem oder cap_scanpool sinnvoll. An anderer Stelle, oder wenn gerade kein Busanschluß gescannt wird, ergibt sich der Funktionsrückgabewert zu (-1).
Siehe auch
Funktionen cap_scanall, cap_scanfelem, cap_scanpool.
cap_getscclass - Aktuell gescannte SCM-Elementklasse ermitteln (CAP)
Synopsis
int cap_getscclass( // Rückgabe SCM-Elementklasse:
// 0 = Schaltplan
// 1 = Symbol
// 2 = Marker
// 3 = Label
// (-1) sonst
);
Beschreibung
Die Funktion cap_getscclass gibt die aktuell gescannte SCM-Elementklasse zurück. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von cap_scanall, cap_scanfelem oder cap_scanpool sinnvoll. An anderer Stelle, oder wenn gerade kein SCM-Element gescannt wird, ergibt sich der Funktionsrückgabewert zu (-1).
Siehe auch
Funktionen cap_scanall,
cap_scanfelem,
cap_scanpool.
cap_getscrefpidx - Aktuell gescanntes SCM-Bibliothekselement ermitteln (CAP)
Synopsis
index C_POOL cap_getscrefpidx // Rückgabe Poolindex oder (-1) wenn kein Makro
);
Beschreibung
Die Funktion
cap_getscrefpidx gibt den Poolindex des aktuell gescannten Bibliothekselements zuück, d.h. damit kann beim Scannen von Polygonen, Texten, etc. die Zugehörigkeit des jeweils gescannten Objects zum entsprechenden Bibliothekselement (Symbol, Label, Marker) ermittelt werden. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von
cap_scanall,
cap_scanfelem oder
cap_scanpool sinnvoll. An anderer Stelle, oder wenn gerade kein Bibliothekselement gescannt wird, ergibt sich der Funktionsrückgabewert zu (-1).
Siehe auch
Funktionen
cap_scanall,
cap_scanfelem,
cap_scanpool.
cap_getscstkcnt - Schaltplan Scanfunktion Stacktiefe abfragen (CAP)
Synopsis
int cap_getscstkcnt( // Scan-Stacktiefe
);
Beschreibung
Die Funktion
cap_getscstkcnt dient der Abfrage der aktuellen Stacktiefe der Schaltplanscanfunktionen.
cap_getscstkcnt kann somit zur Abarbeitungskontrolle innerhalb der Callbackfunktionen von
cap_scanall,
cap_scanfelem oder
cap_scanpool eingesetzt werden.
Siehe auch
Funktionen cap_scanall,
cap_scanfelem,
cap_scanpool.
cap_gettagdata - Schaltplan Tagsymbol Zieldaten abfragen (CAP)
Synopsis
int cap_gettagdata( // Status
index C_FIGURE; // Tag Element
int [0, [; // Tag Index
& int; // Tag Pintyp (CAP6)
& string; // Tag Pinname
& string; // Tag Referenzname 1
& string; // Tag Referenzname 2
);
Beschreibung
Die Funktion
cap_gettagdata dient der Ermittlung der Zieldaten (Pintyp, Pinname, Referenzbezeichnungen) des angegebenen Schaltplan-Tagsymbols. Der Funktionsrückgabewert ist Null bei erfolgreich Abfrage oder ungleich Null andernfalls.
Siehe auch
Funktion scm_settagdata.
cap_lastconseg - Zuletzt modifiziertes SCM-Verbindungssegment ermitteln (CAP)
Synopsis
int cap_lastconseg( // Status
& index C_CONSEG; // Rückgabe Verbindungssegment
);
Beschreibung
Die Funktion
cap_lastconseg ermittelt das zuletzt erzeugte bzw. modifizierte SCM-Verbindungssegment und übergibt den entsprechenden Index aus der Verbindungssegmentliste im Rückgabeparameter. Der Rückgabewert der Funktion ist Null wenn ein derartiges Verdindungssegment existiert, oder ungleich Null andernfalls.
Siehe auch
Funktion cap_lastfigelem.
cap_lastfigelem - Zuletzt modifiziertes SCM-Element ermitteln (CAP)
Synopsis
int cap_lastfigelem( // Status
& index C_FIGURE; // Rückgabe Element
);
Beschreibung
Die Funktion
cap_lastfigelem ermittelt das zuletzt erzeugte bzw. modifizierte SCM-Element und übergibt den entsprechenden Index aus der Figurenliste im Rückgabeparameter. Der Rückgabewert der Funktion ist Null wenn ein derartiges Element existiert, oder ungleich Null andernfalls.
Siehe auch
Funktion cap_lastconseg.
cap_layconload - Layoutnetzliste laden (CAP)
Synopsis
int cap_layconload( // Status
string; // DDB-Dateiname ("?" zur Namensabfrage)
string; // Layout-Netzlistenname ("?" zur Namensabfrage)
);
Beschreibung
Die Funktion
cap_layconload lädt die Layoutnetzliste mit dem angegebenen Namen aus der spezifizierten DDB-Datei. Der Funktionsrückgabewert ist Null wenn die Netzliste erfolgreich geladen werden konnte, (-1) bei einem Dateizugriffsfehler oder (-2) bei fehlenden oder ungültigen Parameterangaben.
Siehe auch
Funktionen cap_findlayconpartpin,
cap_findlayconpart,
cap_findlaycontree,
cap_getlaytreeidx.
cap_maccoords - Schaltplan Makrokoordinaten abfragen (CAP)
Synopsis
void cap_maccoords(
& double; // X-Position (STD2)
& double; // Y-Position (STD2)
& double; // Drehwinkel (STD3)
& int; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
cap_maccoords gibt in den Parametern die Platzierungsdaten für das aktuell bearbeitete Makro zurück. Ein Aufruf dieser Funktion ist nur innerhalb der Makroscanfunktion von
cap_scanall,
cap_scanfelem oder
cap_scanpool sinnvoll. An anderer Stelle werden Null-Defaultwerte zurückgegeben.
Siehe auch
Funktionen
cap_scanall,
cap_scanfelem,
cap_scanpool.
cap_macload - SCM-Symbol in den Arbeitsspeicher laden (CAP)
Synopsis
int cap_macload( // Status
& index C_POOL; // Macro Poolelementindex
string; // DDB-Dateiname
string; // Elementname
int [100,[; // Element DDB-/Datenbankklasse (STD1)
);
Beschreibung
Die Funktion
cap_macload lädt das angegebene SCM-Symbol in den Arbeitsspeicher und übergibt den zugehörigen Poolindex im entsprechenden Parameter. Der Funktionsrückgabewert ist Null, wenn das Symbol erfolgreich geladen wurde, (-1) bei Dateizugriffsfehlern, (-2) bei fehlenden oder ungültigen Parameterangaben oder 1 wenn referenzierte Bibliothekselemente nicht verfügbar sind.
cap_macload ist für die Anwendung in Funktionen zur Auswertung von Bibliotheksdateien konzipiert. Mit der Funktion
cap_macrelease können SCM-Symbole wieder aus dem Arbeitsspeicher entfernt werden.
Siehe auch
Funktion
cap_macrelease.
cap_macrelease - SCM-Symbol aus dem Arbeitsspeicher löschen (CAP)
Synopsis
void cap_macrelease( // Status
index C_POOL; // Macro Poolelementindex
);
Beschreibung
Die Funktion
cap_macrelease löscht das über den Poolelementindex spezifizierte SCM-Symbol aus dem Arbeitsspeicher.
cap_macrelease ist als Pendant zur Funktion
cap_macload konzipiert.
Siehe auch
Funktion
cap_macload.
cap_mactaglink - Schaltplan Makro-Tagverweisdaten abfragen (CAP)
Synopsis
int cap_mactaglink( // Status
& int; // Tagpintyp (CAP6)
& double; // Startpunkt X-Position (STD2)
& double; // Startpunkt Y-Position (STD2)
& double; // Endpunkt X-Position (STD2)
& double; // Endpunkt Y-Position (STD2)
);
Beschreibung
Die Funktion
cap_mactaglink gibt in den Parametern den Tagpintyp und die Start- und Endpunktkoordinaten des Tagverweises für das aktuell bearbeitete Makro zurück. Ein Aufruf dieser Funktion ist nur innerhalb der Makroscanfunktion von
cap_scanall,
cap_scanfelem oder
cap_scanpool sinnvoll. Der Funktionsrückgabewert ist 1 wenn ein Tagverweis gefunden wurde, 0 wenn kein Tagverweis am bearbeiteten Makroelement existiert oder (-1) bei ungültigen oder fehlenden Parametern.
Siehe auch
Funktionen
cap_scanall,
cap_scanfelem,
cap_scanpool.
cap_nrefsearch - Schaltplan Name auf Plan suchen (CAP)
Synopsis
int cap_nrefsearch( // Status
string; // Bauteilname oder Leerstring für neueste benannte Referenz
& index C_FIGURE; // Rückgabe Element
);
Beschreibung
Die Funktion
cap_nrefsearch prüft, ob ein Bauteil bzw. eine benannte Referenz mit dem angegebenen Namen platziert ist und gibt gegebenenfalls das zugehörige Element zurück. Der Rückgabewert ist Null, wenn ein Element gefunden wurde oder ungleich Null, wenn kein Element mit dem angegebenen Namen gefunden wurde.
cap_partplan - Schaltplan Bauteilplanname abfragen (CAP)
Synopsis
string cap_partplan( // Bauteilplanname
string; // Job/DDB-Dateiname
string; // Bauteilname
);
Beschreibung
Der Rückgabewert der Funktion
cap_partplan ergibt sich zu dem SCM-Plannamen, auf dem das durch den Bauteilnamen spezifizierte Bauteil in der angegebenen DDB-Datei platziert ist. Es wird ein Leerstring zurückgegeben, wenn das angegebene Bauteil nicht gefunden wurde.
cap_pointpoolidx - Schaltplan Verbindungspunktpoolelement ermitteln (CAP)
Synopsis
index C_POOL cap_pointpoolidx(// Poolelement
);
Beschreibung
Die Funktion
cap_pointpoolidx dient der Ermittlung des Poolelements, unter welchem die Daten des Markersymbols zur Darstellung der Verbindungspunkte auf dem aktuellen Stromlaufblatt gespeichert sind. Diese Funktion wird für das Plotten von Schaltplänen benötigt; die komplette Darstellungsform des Verbindungspunkt-Markers kann dabei nach Bedarf mit der Funktion
cap_scanpool ermittelt werden.
cap_ruleconatt - Regelzuweisung an SCM-Verbindungssegment (CAP)
Synopsis
int cap_ruleconatt( // Status
index C_CONSEG; // SCM-Verbindungssegment
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
cap_ruleconatt erlaubt die Zuweisung von Regeln an das mit dem ersten Funktionsparameter spezifizierte SCM-Verbindungssegment des aktuell geladenes Elements. Der zweite Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das spezifizierte Figurenlistenelement gelöscht werden. Der Rückgabewert der Funktion
cap_ruleconatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt,
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_rulecondet - Regelzuweisungen von SCM-Verbindungssegment lösen (CAP)
Synopsis
int cap_rulecondet( // Status
index C_CONSEG; // SCM-Verbindungssegment
);
Beschreibung
Die Funktion
cap_rulecondet löscht alle aktuell bestehenden Regelzuweisungen an das über den Funktionsparameter spezifizierte SCM-Verbindungssegment des aktuell geladenen Elements. Der Rückgabewert der Funktion
cap_rulecondet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt.
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_ruleerr - SCM-Regelsystem Fehlerstatus abfragen (CAP)
Synopsis
void cap_ruleerr(
& int; // Fehlercode
& string; // Fehlerstring
);
Beschreibung
Die Funktion
cap_ruleerr dient der Ermittlung des Regelsystemstatus, d.h. die Funktion
cap_ruleerr kann zur genauen Bestimmung der Fehlerursache im Falle eines fehlerhaften Aufrufs einer Regelsystemfunktion verwendet werden.
Diagnose
Zur Bestimmung der Fehlerursache sind die durch
cap_ruleerr zurückgegebenen Parameterwerte heranzuziehen. Der zurückgegebene Fehlerstring dient ggf. der Identifizierung des fehlerverursachenden Elements. Die möglichen Werte, die der Fehlercode durch die Ausführung eines Regelsystemfunktion annehmen kann, haben folgende Bedeutung:
Fehlercode | Bedeutung |
0 | Regelsystem Operation/Funktion erfolgreich beendet |
1 | Regelsystem Hauptspeicher nicht ausreichend |
2 | Regelsystem Interner Fehler <e> |
3 | Regelsystem Funktionsparameter ungültig |
128 | Regelsystem Datenbankdatei kann nicht angelegt werden |
129 | Regelsystem Datenbankdatei Lese-/Schreibfehler |
130 | Regelsystem Datenbankdatei von falschem Typ |
131 | Regelsystem Datenbankdateistruktur beschädigt |
132 | Regelsystem Datenbankdatei nicht gefunden |
133 | Regelsystem Datenbankfehler allgemein (Interner Fehler) |
134 | Regelsystem Regel <r> nicht Regeldatenbank gefunden |
135 | Regelsystem Regel in falschem Format in Datenbank (Interner Fehler <e> ) |
136 | Regelsystem Objekt nicht gefunden |
137 | Regelsystem Objekt mehrfach definiert (Interner Fehler) |
138 | Regelsystem Inkompatible Definition der Variable <v> |
139 | Regelsystem Regel <r> mit inkompatibler Compiler-Version übersetzt |
Der Fehlerstring kann je nach Fehlerfall eine Regel
<r> , eine Variable
<v> oder einen (internen) Fehlerstatus
<e> bezeichnen. Datenbankdateifehler beziehen sich auf Probleme beim Zugriff auf die Regeldatenbankdatei
brules.vdb im BAE-Programmverzeichnis. Interne Fehler weisen üblicherweise auf Implementierungslücken im Regelsystem hin und sollten in jedem Fall an Bartels gemeldet werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt,
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_rulefigatt - Regelzuweisung an SCM-Figurenelement (CAP)
Synopsis
int cap_rulefigatt( // Status
index C_FIGURE; // Figurenlistenelement
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
cap_rulefigatt erlaubt die Zuweisung von Regeln an das mit dem ersten Funktionsparameter spezifizierte Figurenlistenelement des aktuell geladenes Elements. Der zweite Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das spezifizierte Figurenlistenelement gelöscht werden. Der Rückgabewert der Funktion
cap_rulefigatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigdet,
cap_ruleplanatt,
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_rulefigdet - Regelzuweisungen von SCM-Figurenelement lösen (CAP)
Synopsis
int cap_rulefigdet( // Status
index C_FIGURE; // Figurenlistenelement
);
Beschreibung
Die Funktion
cap_rulefigdet löscht alle aktuell bestehenden Regelzuweisungen an das über den Funktionsparameter spezifizierte Figurenlistenelement des aktuell geladenen Elements. Der Rückgabewert der Funktion
cap_rulefigdet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_ruleplanatt.
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_ruleplanatt - Regelzuweisung an aktuell geladenes SCM-Element (CAP)
Synopsis
int cap_ruleplanatt( // Status
void; // Regelname oder Regelnamensliste
int [0,1]; // Flag - Regelzuweisung SCM-Plan global
);
Beschreibung
Die Funktion
cap_ruleplanatt erlaubt die Zuweisung von Regeln an das aktuell geladenes Elements. Der Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das aktuelle Element gelöscht werden. Der zweite Parameter ermöglicht die Zuweisung von Regeln an alle Blätter des aktuell geladenen Schaltplans (d.h., dieser Parameter wird nur ausgewertet, wenn ein Stromlaufblatt geladen ist). Der Rückgabewert der Funktion
cap_ruleplanatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplandet,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_ruleplandet - Regelzuweisungen von aktuell geladenem SCM-Element lösen (CAP)
Synopsis
int cap_ruleplandet( // Status
int [0,1]; // Flag - Regelzuweisung SCM-Plan global
);
Beschreibung
Die Funktion
cap_ruleplandet löscht alle aktuell bestehenden Regelzuweisungen an das aktuell geladene Element. Der Funktionsparameter ermöglicht die Lösung von Regelzuweisungen von allen Blätter des aktuell geladenen Schaltplans (d.h., dieser Parameter wird nur ausgewertet, wenn ein Stromlaufblatt geladen ist). Der Rückgabewert der Funktion
cap_ruleplandet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt,
cap_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
cap_rulequery - SCM-Element Regelabfrage durchführen (CAP)
Synopsis
int cap_rulequery( // Trefferanzahl oder (-1) bei Fehler
int; // Object class code
int; // Object ident code (int oder Indextyp)
string; // Subjektname
string; // Prädikatname
string; // Abfragekommando
& void; // Abfrageergebnis
[] // Optionale Abfrageparameter
);
Beschreibung
Die Funktion
cap_rulequery führt eine Regelabfrage für ein spezifisches Objekt durch. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
C_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
C_POOL für die Objektidentifikation) durchgeführt werden. Zur Durchführung der Abfrage müssen sowohl ein Regelsubjekt als auch ein Regelprädikat namentlich angegeben werden. Zusätzlich ist ein Abfragekommando zu spezifizieren. Das Abfragekommando kann Platzhalter für Wertvorgaben und einen Abfrageoperator enthalten. Folgende Abfrageoperatoren stehen zur Verfügung:
?d | zur Abfrage von int -Werten |
?f | zur Abfrage von double -Werten |
?s | zur Abfrage von string -Werten |
Dem Abfrageoperator kann wahlweise einer der folgenden Selektionsoperatoren vorangestellt werden:
+ | zur Abfrage des Maximums aller gefundenen Werte |
- | zur Abfrage des Minimums aller gefundenen Werte |
Standardmäßig, d.h. bei Auslassung des Selektionsoperators wird der
+ -Operator verwendet. Der über die Abfrage gefundene Werteintrag wird im Funktionsparameter für das Abfrageergebnis zurückgegeben. Hierbei ist sicherzustellen, dass der Datentyp des Parameters für das Abfrageergebnis mit dem Abfragedatentyp übereinstimmt
(int für ?d ,
double für ?f ,
string für ?s ). Neben dem Abfrageoperator können folgende Platzhalter für Wertvorgaben im Abfragekommando spezifiziert werden:
%d | zur Angabe von int -Werten |
%f | zur Angabe von double -Werten |
%s | zur Angabe von string -Werten |
Für jeden im Abfragekommando spezifizierten Platzhalter für Wertvorgaben ist ein optionaler Abfrageparameter an die Funktion
cap_rulequery zu übergeben. Die Reihenfolge dieser optionalen Parameter sowie deren Datentypen müssen mit den Spezifikationen im Abfragekommando übereinstimmen. Nach erfolgreicher Abarbeitung der Regelabfrage wird im Rückgabewert die (nicht-negative) Anzahl der gefundenen Einträge an den Aufrufer zurückgegeben. Der Rückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
cap_ruleerr ermittelt werden.
Beispiele
Sofern die Regel
rule somerule
{
subject subj
{
pred := ("A", 2);
pred := ("A", 4);
pred := ("B", 1);
pred := ("C", 3);
pred := ("B", 6);
pred := ("D", 5);
pred := ("D", 6);
pred := ("A", 3);
}
}
definiert und dem aktuell geladenen Element zugewiesen ist, würde der
cap_rulequery-Aufruf
hitcount = cap_rulequery(0,0,"subj","pred","%s ?d",intresult,"A") ;
die int -Variable
hitcount auf 3 und die
int -Variable
intresult auf 4 setzen, während der Aufruf
hitcount = cap_rulequery(0,0,"subj","pred","-?s %d",strresult,6) ;
die Variable
hitcount auf 2 und die
string -Variable
strresult auf
B setzt.
Siehe auch
Funktionen
cap_getrulecnt,
cap_getrulename,
cap_ruleerr,
cap_ruleconatt,
cap_rulecondet,
cap_rulefigatt,
cap_rulefigdet,
cap_ruleplanatt,
cap_ruleplandet;
Neuronales Regelsystem und
Rule System Compiler.
cap_scanall - Schaltplan Scan über alle Elemente (CAP)
Synopsis
int cap_scanall( // Scan Status
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
* int; // Makrofunktion
* int; // Verbindungssegmentfunktion
* int; // Polygonfunktion
* int; // Textfunktion
);
Beschreibung
Die Funktion
cap_scanall scannt alle auf dem aktuell geladenen Element platzierten Elemente über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben. Der Rückgabewert der Funktion
cap_scanall ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
cap_scanall zurückgemeldet hat.
Makrofunktion
int macrofuncname(
index C_MACRO macro, // Makro Index
index C_POOL pool, // Pool Element Index
int macinws, // Makro in Arbeitsbereich Flag (STD10)
string refname, // Makro Referenzname
index C_LEVEL level, // Makro Level
index C_LEVEL buslevel // Makro Buslevel
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Miteinander verbundene Elemente besitzen gleiche Levelnummern größer gleich Null. Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan für dieses Makro nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll.
Verbindungssegmentfunktion
int confuncname(
index C_CONBASE cbase, // Verbindungsliste Index
int segidx, // Segment Nummer
int ctyp, // Verbindungstyp:
// 0 = normale Verbindung
// 1 = Verbindungspunkt
double lx, // Untere X-Koordinate (STD2)
double ly, // Untere Y-Koordinate (STD2)
double ux, // Obere X-Koordinate (STD2)
double uy, // Obere Y-Koordinate (STD2)
int busflag, // Busverbindung Flag:
// 0 = normale Verbindung
// 1 = Busverbindung
int cinws, // Verbindung in Arbeitsbereich (STD10)
index C_LEVEL level // Verbindung Level
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Ein Verbindungstyp von 0 gibt an, dass es sich um eine normale Segmentverbindung handelt. Ein Typ von 1 spezifiziert einen Verbindungskreuzungspunkt, obere und untere Koordinaten sind dabei identisch. Miteinander verbundene Elemente besitzen gleiche Levelnummern größer gleich Null. Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Polygonfunktion
int polyfuncname(
index C_POLY poly, // Polygondaten
int polyinws, // Polygon in Arbeitsbereich Flag (STD10)
index C_LEVEL level, // Polygon Level
int macclass, // Polygon Makroklasse (STD1)
int bustapidx // Polygon Busanschlussindex
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Die Makroklasse gibt die Klasse des Makros an, auf dem die Fläche platziert ist. Miteinander verbundene Elemente besitzen gleiche Levelnummern größer gleich Null. Ein Busanschlussindex größer gleich Null gibt an, dass es sich um eine auf einem Bustap platzierte Fläche handelt. Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Textfunktion
int textfuncname(
index C_TEXT text, // Textdaten
double x, // X-Koordinate (STD2)
double y, // Y-Koordinate (STD2)
double angle, // Drehwinkel (STD3)
int mirr, // Spiegelung (STD14)
double size, // Text Größe (STD2)
string textstr, // Textzeichenkette
int textinws, // Text in Arbeitsbereich Flag (STD10)
int macclass, // Text Makroklasse
int variant // Text ist Variantenattribut Flag
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Die Makroklasse gibt die Klasse des Makros an, auf dem der Text platziert ist. Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Siehe auch
Funktionen
cap_maccoords,
cap_scanfelem,
cap_scanpool.
cap_scanfelem - Schaltplan Scan über Figurenelement (CAP)
Synopsis
int cap_scanfelem( // Scan Status
index C_FIGURE; // Figurenelement
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
* int; // Makrofunktion
* int; // Verbindungssegmentfunktion
* int; // Polygonfunktion
* int; // Textfunktion
);
Beschreibung
Die Funktion
cap_scanfelem scannt das angegebene Figurenelement über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben (Definition der referenzierten Anwenderfunktionen siehe
cap_scanall). Der Rückgabewert der Funktion
cap_scanfelem ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
cap_scanfelem zurückgemeldet hat.
Siehe auch
Funktionen
cap_maccoords,
cap_scanall,
cap_scanpool.
cap_scanpool - Schaltplan Scan über Poolelement (CAP)
Synopsis
int cap_scanpool( // Scan Status
void; // Poolelement
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
* int; // Makrofunktion
* int; // Verbindungssegmentfunktion
* int; // Polygonfunktion
* int; // Textfunktion
);
Beschreibung
Die Funktion
cap_scanpool scannt das angegebene Poolelement über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben (Definition der referenzierten Anwenderfunktionen siehe
cap_scanall). Der Rückgabewert der Funktion
cap_scanpool ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
cap_scanpool zurückgemeldet hat.
Siehe auch
Funktionen
cap_maccoords,
cap_scanall,
cap_scanfelem.
cap_vecttext - Schaltplan Text vektorisieren (CAP)
Synopsis
int cap_vecttext( // Status
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Spiegelung (STD14)
double ]0.0,[; // Text Größe (STD2)
int [0,[; // Text Stil (CAP7)
string; // Text Zeichenkette
* int; // Vektorisierungsfunktion
);
Beschreibung
Die Funktion
cap_vecttext vektorisiert den übergebenen Text unter Verwendung des aktuell geladenen Zeichensatzes. Dazu wird für jedes Textsegment die übergebene Vektorisierungsfunktion aufgerufen. Der Rückgabewert dieser Funktion ist ungleich Null, wenn ungültige Parameter angegeben wurden oder die vom Benutzer definierte Vektorisierungsfunktion einen Wert ungleich Null zurückgegeben hat.
Vektorisierungsfunktion
int vecfuncname(
double x1, // X-Koordinate erster Punkt (STD2)
double y1, // Y-Koordinate erster Punkt (STD2)
double x2, // X-Koordinate zweiter Punkt (STD2)
double y2 // Y-Koordinate zweiter Punkt (STD2)
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
C.3.2 Schaltplaneditor-Funktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp SCM zugeordnet, d.h. diese Funktionen können im
Schaltplaneditor aufgerufen werden:
scm_askrefname - SCM Referenznamensabfrage (SCM)
Synopsis
int scm_askrefname( // Returns status
& string; // Returns reference name
);
Beschreibung
Die Funktion
scm_askrefname aktiviert einen Dialog zur Referenznamensabfrage, d.h. zur Auswahl von Symbolen auf Stromlaufebene bzw. zur Auswahl von Pins auf Symbolebene. Der Funktionsrückgabewert ist Null bei erfolgreicher Referenzauswahl oder ungleich Null im Fehlerfall.
scm_asktreename - SCM Netznamensabfrage (SCM)
Synopsis
int scm_asktreename( // Status
& string; // Rückgabe Netzname
);
Beschreibung
Die Funktion
scm_asktreename aktiviert einen Dialog zur Netznamensabfrage. Der Funktionsrückgabewert ist Null bei erfolgreicher Netzauswahl oder ungleich Null im Fehlerfall.
scm_attachtextpos - Textverschiebung an SCM-Element anfügen (SCM)
Synopsis
int scm_attachtextpos( // Status
index C_FIGURE; // SCM-Element
string; // Text
double; // Text-X-Koordinate (STD2)
double; // Text-Y-Koordinate (STD2)
double; // Textdrehwinkel (STD3)
double ]0.0,[; // Textgröße (STD2)
int [-1,1]; // Textspiegelungsmodus (STD14) oder (-1) zum Rüsetzen
);
Beschreibung
Die Funktion
scm_attachtextpos weist die Parameter für Position, Drehwinkel, Größe und Spiegelung an den angegebenen Text des spezifierten SCM-Elements zu. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung, (-1) bei ungültigen Parametern oder (-2) wenn das Layoutelement keine Definition für den angegebenen Text enthält.
Siehe auch
Funktion
scm_storetext.
scm_checkbustapplot - SCM-Busanschluß Plotstatus abfragen (SCM)
Synopsis
int scm_checkbustapplot( // Rückgabe Plotstatus
index C_FIGURE; // Busverbindungselement
index C_BUSTAP; // Busanschluß
);
Beschreibung
Die Funktion scm_checkbustapplot gibt den Wert 1 zurück wenn die Plotausgabe für den sepzifizierten Busanschluß deaktiviert ist. Im anderen Fall ergibt sich der Rückgabewert zu Null.
scm_checkjunctplot - SCM-Verbindungspunktmarker Plotstatus abfragen (SCM)
Synopsis
int scm_checkjunctplot( // Plotstatus
double; // Verbindungspunkt X-Position (STD2)
double; // Verbindungspunkt Y-Position (STD2)
);
Beschreibung
Die Funktion
scm_checkjunctplot überprüft, ob eine Plotausgabe von Verbindungspunktmarkern an der angegebenen Koordinate durchzuführen ist (Funktionsrückgabewert 0) oder unterdrückt werden soll (Funktionsrückgabewert 1).
scm_chkattrname - SCM-Attributname validieren (SCM)
Synopsis
int scm_chkattrname( // Rückgabe ungleich Null bei ungültigem Attributnamen
string; // Attributname
);
Beschreibung
Die Funktion
scm_chkattrname überprüft ob der angegebene Attributname gültig ist und eine Attributwertzuweisung zulässt. Der Funktionsrückgabewert ist Null bei gültigem Attributnamen bzw. ungleich Null wenn der Attributname ungültig ist.
Siehe auch
Funktion
scm_setpartattrib.
scm_conseggrpchg - SCM Verbindungssegment Gruppenflag ändern (SCM)
Synopsis
int scm_conseggrpchg( // Status
index C_CONSEG; // Verbindungssegment
int [0,6]; // Neue Gruppenzugehörigkeit (STD13)
// |4 - Anzeige Gruppenstatusmeldung
);
Beschreibung
Die Funktion
scm_conseggrpchg ändert die Gruppenzugehörigkeit des übergebenen Verbindungssegments. Der Rückgabewert ist Null bei erfolgter Änderung oder (-1) wenn das übergebene Element ungültig ist.
scm_deflibname - SCM Setup default Bibliothek (SCM)
Synopsis
string scm_deflibname( // Default SCM Bibliotheksname
);
Beschreibung
Der Rückgabewert der Funktion
scm_deflibname entspricht dem in der Setupdatei eingestellten Defaultnamen für die SCM-Bibliothek.
scm_defloglname - SCM Setup default Packager Bibliothek (SCM)
Synopsis
string scm_defloglname( // Default Packager Bibliotheksname
);
Beschreibung
Der Rückgabewert der Funktion
scm_defloglname entspricht dem in der Setupdatei eingestellten Defaultnamen für die vom
Packager verwendete Layoutbibliothek. Dieser Dateiname wird üblicherweise bei der Abfrage von logischen Bauteildefinitionen.
Warnung
Funktion
con_getlogpart;
Utilityprogramm
bsetup.
scm_defsegbus - SCM Verbindungssegment Busdefinition (SCM)
Synopsis
int scm_defsegbus( // Status
& index C_CONSEG; // Verbindungssegment
);
Beschreibung
Die Funktion
scm_defsegbus definiert das übergebene Verbindungssegment und alle damit verbundenen Segmente zum Bus. Der Rückgabewert ist ungleich Null, wenn die Busdefinition nicht durchgeführt werden konnte.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_delconseg - SCM Verbindungssegment löschen (SCM)
Synopsis
int scm_delconseg( // Status
& index C_CONSEG; // Verbindungssegment
);
Beschreibung
Die Funktion
scm_delconseg löscht das übergebene Verbindungssegment. Der Rückgabewert ist Null bei erfolgter Löschung und (-1), wenn das übergebene Element ungültig ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_delelem - SCM Element löschen (SCM)
Synopsis
int scm_delelem( // Status
& index C_FIGURE; // Element
);
Beschreibung
Die Funktion
scm_delelem löscht das übergebene Element aus der Elementliste. Der Rückgabewert ist Null bei erfolgter Löschung und (-1), wenn das übergebene Element ungültig ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktion scm_drawelem.
scm_drawelem - SCM Elementanzeige aktualisieren (SCM)
Synopsis
void scm_drawelem(
index C_FIGURE; // Element
int [0, 4]; // Zeichenmodus (STD19)
);
Beschreibung
Die Funktion
scm_drawelem aktualisiert die Anzeige des angegebenen Elements unter Verwendung des spezifizierten Zeichenmodus.
Siehe auch
Funktion scm_delelem.
scm_elemangchg - SCM Elementwinkel ändern (SCM)
Synopsis
int scm_elemangchg( // Status
& index C_FIGURE; // Element
double; // Neuer Winkel (STD3)
);
Beschreibung
Die Funktion
scm_elemangchg ändert den Drehwinkel des übergebenen
Elements. Der Drehwinkel wird ausgehend vom Nullwinkel eingestellt, d.h. der vorhergehende Drehwinkel des Elements hat keinen Einfluss auf das Ergebnis. Die Winkelangabe wird als Bogenmaßwert interpretiert. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht drehbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_elemgrpchg - SCM Element Gruppenflag ändern (SCM)
Synopsis
int scm_elemgrpchg( // Status
index C_FIGURE; // Element
int [0,6]; // Neue Gruppenzugehörigkeit (STD13)
// |4 - Anzeige Gruppenstatusmeldung
);
Beschreibung
Die Funktion
scm_elemgrpchg ändert die Gruppenzugehörigkeit des übergebenen Elements. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es sich nicht um ein gruppenselektierbares Element handelt. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
scm_elemmirrchg - SCM Elementspiegelung ändern (SCM)
Synopsis
int scm_elemmirrchg( // Status
& index C_FIGURE; // Element
int [0,1]; // Neuer Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
scm_elemmirrchg ändert den Spiegelungsmodus des übergebenen Elements. Der Spiegelungsmodus kann bei Texten und Referenzen geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es nicht gespiegelt werden kann. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_elemposchg - SCM Elementposition ändern (SCM)
Synopsis
int scm_elemposchg( // Status
& index C_FIGURE; // Element
double; // X-Position (STD2)
double; // Y-Position (STD2)
);
Beschreibung
Die Funktion
scm_elemposchg ändert die Position des übergebenen Elements. Bei Polygonen wird das Polygon so verschoben, dass der erste Punkt des Polygons auf der angegebenen Position zu liegen kommt. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht positionierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_elemsizechg - SCM Elementgröße ändern (SCM)
Synopsis
int scm_elemsizechg( // Status
& index C_FIGURE; // Element
double; // Neue Größe (STD2)
);
Beschreibung
Die Funktion
scm_elemsizechg ändert die Größe des übergebenen Elements. Eine Größenänderung ist nur bei Textelementen möglich. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht größenveränderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_findpartplc - Layoutbauteil Platzierungsstatus abfragen (BAE HighEnd) (SCM)
Synopsis
int scm_findpartplc( // Platzierungsstatus
string; // Bauteilname
);
Beschreibung
Die Funktion
scm_findpartplc kann im
BAE HighEnd Schaltplaneditor dazu benutzt werden, den Platzierungsstatus von Layoutbauteilen zu prüfen. Der Funktionsrückgabewert ist 1 wenn das Bauteil mit dem angegebenen Bauteilnamen auf dem Projektlayout platziert ist. Andernfalls wird der Wert Null zurückgegeben.
scm_getdblpar - SCM Doubleparameter abfragen (SCM)
Synopsis
int scm_getdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Plot Skalierungsfaktor
// 1 = Plotter HPGL-Geschwindigkeit
// 2 = Plotter Stiftbreite (STD2)
// 3 = X-Koord. letzte Gruppenplatzierung (STD2)
// 4 = Y-Koord. letzte Gruppenplatzierung (STD2)
// 5 = Standardsymbolplatzierungswinkel (STD3)
// 6 = Standardtextgröße (STD2)
// 7 = Standardtextplatzierungswinkel (STD3)
& double; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
scm_getdblpar dient der Abfrage von mit
scm_setdblpar im
Schaltplaneditor gesetzten Parametern vom Typ
double . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen scm_getintpar,
scm_getstrpar,
scm_setdblpar,
scm_setintpar,
scm_setstrpar.
scm_getgroupdata - SCM Gruppenplatzierungsdaten abfragen (SCM)
Synopsis
int scm_getgroupdata( // Status
& double; // Gruppenbezugspunkt X-Koordinate (STD2)
& double; // Gruppenbezugspunkt Y-Koordinate (STD2)
& double; // Gruppendrehwinkel (STD3)
& double; // Gruppenskalierungsfaktor
& int; // Gruppenspiegelungsmodus
& double; // Gruppenquadrant X-Koordinate (STD2)
& double; // Gruppenquadrant Y-Koordinate (STD2)
& int; // Gruppenquadrantmodus
& int; // Gruppenbereichsmodus
);
Beschreibung
Die Funktion
scm_getgroupdata ermöglicht die Abfrage der aktuellen Eingabedaten während interaktiver Gruppenplatzierungen im
Schaltplaneditor. Der Funktionsrückgabewert ist ungleich Null wenn gerade keine Gruppenplatzierungsinteraktion aktiviert ist.
Siehe auch
Funktion scm_getinputdata.
scm_gethighlnet - SCM Netz Highlightmodus abfragen (SCM)
Synopsis
int scm_gethighlnet( // Status
int [-1,[; // Netznummer oder -1 für Highlightfokusmodusabfrage
& int; // Highlightmodus
);
Beschreibung
Mit der Funktion
scm_gethighlnet kann der Highlightmodus für das Netz mit der angegebenen Netznummer abgefragt werden. Bei aktiviertem Netzhighlight wird im Parameter für den Highlightmodus ein Wert ungleich Null zurückgegegen, bei deaktiviertem Netzhighlight ergibt sich der Highlightmodusparameter zu Null. Der Funktionsrückgabewert ergibt sich zu einem Wert ungleich Null, wenn die Abfrage erfolgreich war, andernfalls (Netz nicht gefunden, ungültige Parameter) wird der Wert Null zurückgegeben.
Siehe auch
Funktion
scm_highlnet.
scm_gethpglparam - SCM HP-GL-Parameter abfragen (SCM)
Synopsis
void scm_gethpglparam(
& string; // HP-GL Plotdateiname
& double; // HP-GL Maßstab
& double; // HP-GL Geschwindigkeit (-1.0 volle Geschw.)
& double; // HP-GL Stiftbreite (STD2)
& int; // HP-GL Füllmodus:
// 0 = Füllen aus
// 1 = Füllen ein
& int; // HP-GL Rotationsmodus:
// 0 = keine Drehung
// 1 = Drehung um 90 Grad
// sonst = automatische Drehung
);
Beschreibung
Die Funktion
scm_gethpglparam gibt die aktuell im
Schaltplaneditor eingestellten HP-GL-Plotparameter zurück.
scm_getinputdata - SCM Eingabedaten abfragen (SCM)
Synopsis
int scm_getinputdata( // Status
& double; // Ursprüngliche X-Koordinate (STD2)
& double; // Ursprüngliche Y-Koordinate (STD2)
& double; // Ursprüngliche Breite (STD2)
& int; // Ursprünglicher Anzeigeelementtyp (SCM1)
& double; // Aktuelle X-Koordinate (STD2)
& double; // Aktuelle Y-Koordinate (STD2)
& double; // Aktuelle Breite (STD2)
& int; // Aktueller Anzeigelementtyp (SCM1)
& void; // Eingabemodus/Element
& double; // Erstes Segment Start-X-Koordinate (STD2) */
& double; // Erstes Segment Start-Y-Koordinate (STD2) */
& double; // Erster Kreismittelpunkt X-Koordinate (STD2) */
& double; // Erster Kreismittelpunkt Y-Koordinate (STD2) */
& int; // Erster Kreismittelpunkt Typ (STD15) */
& double; // Letztes Segment Start-X-Koordinate (STD2) */
& double; // Letztes Segment Start-Y-Koordinate (STD2) */
& double; // Letzter Kreismittelpunkt X-Koordinate (STD2) */
& double; // Letzter Kreismittelpunkt Y-Koordinate (STD2) */
& int; // Letzter Kreismittelpunkt Typ (STD15) */
);
Beschreibung
Die Funktion
scm_getinputdata ermöglicht die Abfrage der aktuellen Eingabedaten während interaktiver Platzierungen im
Schaltplaneditor. Die Interpretation der Platzierungsdaten ist entsprechend dem zurückgelieferten Funktionsparameter für den Eingabemodus bzw. das Platzierungselement vorzunehmen. Der Funktionsrückgabewert ist ungleich Null wenn gerade keine Platzierungsinteraktion aktiviert ist.
Siehe auch
Funktion scm_getgroupdata.
scm_getintpar - SCM Integerparameter abfragen (SCM)
Synopsis
int scm_getintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Pickpunktanzeigemodus:
// 0 = keine Pickpunktanzeige
// 1 = Pickpunktanzeige
// 1 = Symbol/Gruppen-Reroutingmodus:
// Bit 0/1: Routermodus
// 0 = Router inaktiv
// 1 = Symbol- & Gruppenrouting
// 2 = Nur Symbolrouting
// 3 = Nur Gruppenrouting
// Bit 2: Quickshot-Routing Flag
// 2 = Symbolbewegungsmodus:
// 0 = Symboltextoffsets zurücksetzen
// 1 = Symboltextoffsets beibehalten
// 3 = Typ der zuletzt platzierten Referenz:
// (-1) = keine Referenz platziert
// 0 = Symbol
// 1 = Label
// 2 = Modulport
// 4 = Warnungen bei Verbindung benannter Netze:
// 0 = Warnmeldungsanzeige deaktiviert
// 1 = Warnmeldungsanzeige aktiviert
// 5 = Elementpickmodus:
// 0 = Bester Pick
// 1 = Pickelementauswahl
// 6 = Farbmodus Generischer Drucker:
// 0 = schwarzweiss
// 1 = farbig
// 7 = Warnmeldungsmodus:
// Bit 0: $-Umbenennungen unterdrücken
// Bit 1: Netzzusammenfassungen unterdrücken
// Bit 2: Modulportwarnungen unterdrückt
// Bit 4: Gruppensymbolumbenennungswarnungen unterdrückt
// Bit 5: Variantenvergleichswarnungen unterdrückt
// 8 = Eingabemodus für Namen:
// 0 = Autopattern für Symbolnamen
// 1 = Eingabeaufforderung für Symbolnamen
// 9 = Infoanzeigeflag:
// 0 = keine Infoanzeige
// 1 = automatische Infoanzeige
// 10 = Infoanzeigemodus:
// 0 = keine automatische Infoanzeige
// 1 = vollständige Infoanzeige
// 2 = nur netzspezifische Infoanzeige
// 11 = Labelreroutingmodus:
// 0 = kein automatisches Labelrerouting
// 1 = automatisches Labelrerouting
// 12 = Offset Subsymbolnummer
// 13 = Generische Plotausgabe Skalierungsmodus:
// 0 = fester Skalierungsfaktor
// 1 = automatische Skalierung auf Seite
// 14 = Generische Plotausgabe Farbmodus:
// 0 = schwarz/weiss
// 1 = aktuelle Farbeinstellung benutzen
// 15 = HPGL Füllmodus:
// 0 = Konturen zeichnen
// 1 = Flächen füllen
// 2 = Flächen füllen, Linien/Texte zeichnen
// 16 = Flächenpolygoneditiermodus:
// 0 = keine geschlossenen Linienzüge
// 1 = immer geschlossene Linienzüge
// 2 = Abfrage zum Schließen von Linienzügen
// 17 = Gruppenreroutingmodus:
// 0 = kein Löschen von Außenantennen
// 1 = Löschen erstes Außenantennensegment
// 2 = Löschen alle Außenantennensegmente
// 18 = Benutzerspezifisches Standardeinheitensystem:
// 0 = metrisch
// 1 = zöllig
// 19 = Plotvorschaumodus:
// 0 = keine Plotvorschau
// 1 = Plotterstiftbreite
// 20 = Autosave Intervall
// 21 = Automatische Verbindungsecken
// 22 = Winkelfreigabeflag
// 23 = Standardsymbolspiegelung
// 24 = Gruppenbewegtdarstellung:
// 0 = Bewegtbild ein
// 1 = Bewegtbild alles
// 2 = Bewegtbild kontinuierlich
// 25 = Zwischenablagetext-Platzierungsanforderung
// 26 = Signalrouter Routingbereich
// 27 = Automatische Busanzapfung
// 28 = Signalrouter Markerscan
// 29 = Segmentbewegungsmodus:
// 0 = Bewegen ohne Nachbarn
// 1 = Bewegen mit Nachbarn
// 2 = Nachbarn anpassen
// |4 = Endpunkt folgt Segment
// 30 = Gruppenwinkelfreigabemodus:
// 0 = Gruppenwinkel einhalten
// 1 = Gruppenwinkel automatisch freigeben
// 31 = Standard-Textspiegelungsmodus (STD14)
// 32 = Standard-Textmodus (CAP1|CAP7)
// 33 = Symbol $noplc Plotsichtbarkeitsbeziehung:
// Bit 0 = $noplc setzen bei Plotsichtbarkeitsänderung
// Bit 1 = Plotsichtbarkeit setzen bei $noplc -Änderung
// 34 = Netzplanlisting Maximallänge [ 3,200]
// 35 = Flag - Einzeleckenbearbeitung
// 36 = Flag - Unroutes-Liniengenerierung
// 37 = Flag - Polygonbearbeitung Autocomplete-Modus
// 38 = Fehlerhighlightmodus:
// 0 = Fehlerhighlight
// 1 = Fehlermuster/-strichelung
// 39 = Flag - Automirror horizontal bus taps
// 40 = Symbol-/Label-Tagmodus:
// 0 = Standardsymbol
// 1 = Virtueller Tag
// 2 = Netzlistentag
// 41 = Verbindungstrennmodus:
// 0 = Verbindungen nicht trennen
// 1 = Verbindungen an Zweipinsymbolen trennen
// 2 = Verbindungen trennen
// 42 = Symbolverbindungstrennmodus:
// 0 = Verbindungen nicht trennen
// 1 = Verbindungen an Zweipinsymbolen trennen
// 2 = Verbindungen trennen
// 43 = Von scm_checkjunctplot gesetzte Verbindungspunktmarker-Gruppensegmentanzahl
// 44 = Aktuelle Anzahl Projektpläne
// 45 = Anzeigeklassenbits Verbindung (SCM2)
// 46 = Anzeigeklassenbits Bus (SCM2)
// 47 = Anzeigeklassenbits Text (SCM2)
// 48 = Anzeigeklassenbits Kommentartext (SCM2)
// 49 = Anzeigeklassenbits Grafikfläche (SCM2)
// 50 = Anzeigeklassenbits Grafiklinie (SCM2)
// 51 = Anzeigeklassenbits Strichlinie (SCM2)
// 52 = Anzeigeklassenbits Verbindungsfläche (SCM2)
// 53 = Anzeigeklassenbits Netzbereich (SCM2)
// 54 = Anzeigeklassenbits Makroumrandung (SCM2)
// 55 = Anzeigeklassenbits Tag (SCM2)
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
scm_getintpar dient der Abfrage von mit
scm_setintpar im
Schaltplaneditor gesetzten Integerparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen scm_getdblpar,
scm_getstrpar,
scm_setdblpar,
scm_setintpar,
scm_setstrpar.
scm_getstrpar - SCM Stringparameter abfragen (SCM)
Synopsis
int scm_getstrpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Name zuletzt platziertes Bibliothekselement
// 1 = Name zuletzt platziertes benanntes Element
// 2 = Name zuletzt platziertes Netz
// 3 = Name zuletzt platzierter Busanschluß
// 4 = Inhalt zuletzt platzierte Zeichenkette
// 5 = Symbolnamensmuster
// 6 = Nächster platzierter Text
// 7 = Bibliothek zuletzt platziertes Makro
// 8 = Fehlerhafte Busanschlussbezeichnung
// 9 = Fehlerhafte Busbezeichnung
// 10 = Nächster freier Name
// 11 = Current hierachical block reference name
// 12 = Last picked attribute name
// 13 = Last picked attribute value
// 14 = Autosave path name
& string; // Returns parameter value
);
Beschreibung
Die Funktion
scm_getstrpar dient der Abfrage von im
Schaltplaneditor gesetzten Stringparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen scm_getdblpar,
scm_getintpar,
scm_setdblpar,
scm_setintpar,
scm_setstrpar.
scm_highlnet - SCM Netz Highlightmodus setzen (SCM)
Synopsis
int scm_highlnet( // Status
int [-1,[; // Netznummer
int [0,1]; // Highlightmodus
);
Beschreibung
Mit der Funktion
scm_highlnet kann der Highlightmodus für das Netz mit der angegebenen Netznummer gesetzt werden. Zur Aktivierung des Netzhighlights ist das Bit 1 der Highlighmodusparameter auf 1 zu setzen, die Deaktivierung erfolgt entsprechend durch Zuweisung von Null. Der Funktionsrückgabewert ergibt sich zu einem Wert ungleich Null bei erfolgreicher Änderung des netzspezifischen Highlightmodus, andernfalls (Netz nicht gefunden, ungültige Parameter) wird der Wert Null zurückgegeben.
Siehe auch
Funktion
scm_gethighlnet.
scm_pickanyelem - Beliebiges SCM Element selektieren (SCM)
Synopsis
int scm_pickanyelem( // Status
& index C_FIGURE; // Rückgabe selektiertes Anzeigeelement
& index C_CONSEG; // Rückgabe selektiertes Verbindungssegment
& index C_BUSTAP; // Rückgabe selektierter Busanschluß
& int; // Rückgabe selektierter Elementtyp:
// 0 = Anzeigeelement
// 1 = Verbindungssegment
// 2 = Busanschluß
int; // Pickelementtypmenge ((CAP3 außer 7)<<1 verodert)
);
Beschreibung
Die Funktion
scm_pickanyelem aktiviert eine Mausinteraktion zur Selektion eines Elements aus der angegebenen Pickelementtypmenge. Das selektierte Element wird in einem der ersten drei Parameter zurückgegeben. Der Rückgabewert für den selektierten Elementtyp kann zur Bestimmung des gültigen Parameters für das selektierte Element ausgewertet werden. Der Funktionsrückgabewert ist Null bei erfolgter Selektion und ungleich Null wenn an der Pickposition kein Element gefunden wurde.
Siehe auch
Funktionen scm_pickbustap,
scm_pickconseg,
scm_pickelem,
scm_setpickconseg.
scm_pickbustap - SCM Bustap selektieren (SCM)
Synopsis
int scm_pickbustap( // Status
& index C_BUSTAP; // Rückgabe selektiertes Busanschlusselement
);
Beschreibung
Mit der Funktion
scm_pickbustap kann vom Benutzer mit der Maus ein Busanschluss selektiert werden. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Busansachlusselement gefunden wurde.
Siehe auch
Funktionen scm_pickanyelem,
scm_pickconseg,
scm_pickelem,
scm_setpickconseg.
scm_pickconseg - SCM Verbindungssegment selektieren (SCM)
Synopsis
int scm_pickconseg( // Status
& index C_CONSEG; // Rückgabe Verbindungssegment
);
Beschreibung
Mit der Funktion
scm_pickconseg kann vom Benutzer mit der Maus ein Verbindungssegment selektiert werden. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Verbindungssegment gefunden wurde.
Siehe auch
Funktionen scm_pickanyelem,
scm_pickbustap,
scm_pickelem,
scm_setpickconseg.
scm_pickelem - SCM Element selektieren (SCM)
Synopsis
int scm_pickelem( // Status
& index C_FIGURE; // Rückgabe selektiertes Element
int [1,11]; // Elementtyp (CAP3 außer 2 und 7)
);
Beschreibung
Mit der Funktion
scm_pickelem kann vom Benutzer mit der Maus ein Element des gewünschten übergebenen Typs selektiert werden, wobei mit dieser Funktion keine Verbindungen selektiert werden können. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Element des gewünschten Typs gefunden wurde.
Siehe auch
Funktionen scm_pickanyelem,
scm_pickbustap,
scm_pickconseg,
scm_setpickconseg.
scm_setdblpar - SCM Doubleparameter setzen (SCM)
Synopsis
int scm_setdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Plot Skalierungsfaktor
// 1 = Plotter HPGL-Geschwindigkeit
// 2 = Plotter Stiftbreite (STD2)
// 3 = X-Koordinate letzte Gruppenplatzierung (STD2)
// 4 = Y-Koordinate letzte Gruppenplatzierung (STD2)
// 5 = Standardsymbolplatzierungswinkel (STD3)
// 6 = Standardtextgröße (STD2)
// 7 = Standardtextplatzierungswinkel (STD3)
double; // Parameterwert
);
Beschreibung
Die Funktion
scm_setdblpar dient dazu, Systemparameter vom Typ
double im
Schaltplaneditor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
scm_setdblpar gesetzten Systemparametern können mit der Funktion
scm_getdblpar abgefragt werden.
Siehe auch
Funktionen scm_getdblpar,
scm_getintpar,
scm_getstrpar,
scm_setintpar,
scm_setstrpar.
scm_setintpar - SCM Integerparameter setzen (SCM)
Synopsis
int scm_setintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Pickpunktanzeigemodus:
// 0 = keine Pickpunktanzeige
// 1 = Pickpunktanzeige
// 1 = Symbol/Gruppen-Reroutingmodus:
// Bit 0/1: Routermodus
// 0 = Router inaktiv
// 1 = Symbol- & Gruppenrouting
// 2 = Nur Symbolrouting
// 3 = Nur Gruppenrouting
// Bit 2: Quickshot-Routing Flag
// 2 = Symbolbewegungsmodus:
// 0 = Symboltextoffsets zurücksetzen
// 3 = Typ der zuletzt platzierten Referenz:
// Parameter nur für Lesezugriff!
// 4 = Warnungen bei Verbindung benannter Netze:
// 0 = Warnmeldungsanzeige deaktivieren
// 1 = Warnmeldungsanzeige aktivieren
// 5 = Elementpickmodus:
// 0 = Bester Pick
// 1 = Pickelementauswahl
// 6 = Farbmodus Generischer Drucker:
// 0 = schwarzweiss
// 1 = farbig
// 7 = Warnmeldungsmodus:
// Bit 0 = $-Umbenennungen unterdrücken
// Bit 1: Netzzusammenfassungen unterdrücken
// Bit 2: Modulportwarnungen unterdrücken
// Bit 4: Gruppensymbolumbenennungswarnungen unterdrücken
// Bit 5: Variantenvergleichswarnungen unterdrücken
// 8 = Eingabemodus für Namen:
// 0 = Autopattern für Symbolnamen
// 1 = Eingabeaufforderung für Symbolnamen
// 9 = Infoanzeigeflag:
// 0 = keine Infoanzeige
// 1 = automatische Infoanzeige
// 10 = Infoanzeigemodus:
// 0 = keine automatische Infoanzeige
// 1 = vollständige Infoanzeige
// 2 = nur netzspezifische Infoanzeige
// 11 = Labelreroutingmodus:
// 0 = kein automatisches Labelrerouting
// 1 = automatisches Labelrerouting
// 12 = Offset Subsymbolnummer
// 13 = Generische Plotausgabe Skalierungsmodus:
// 0 = fester Skalierungsfaktor
// 1 = automatische Skalierung auf Seite
// 14 = Generische Plotausgabe Farbmodus:
// 0 = schwarz/weiss
// 1 = aktuelle Farbeinstellung benutzen
// 15 = HPGL Füllmodus:
// 0 = Konturen zeichnen
// 1 = Flächen füllen
// 2 = Flächen füllen, Linien/Texte zeichnen
// 16 = Flächenpolygoneditiermodus:
// 0 = keine geschlossenen Linienzüge
// 1 = immer geschlossene Linienzüge
// 2 = Abfrage zum Schließen von Linienzügen
// 17 = Gruppenreroutingmodus:
// 0 = kein Löschen von Außenantennen
// 1 = Löschen erstes Außenantennensegment
// 2 = Löschen alle Außenantennensegmente
// 18 = Benutzerspezifisches Standardeinheitensystem:
// 0 = metrisch
// 1 = zöllig
// 19 = Plotvorschaumodus:
// 0 = keine Plotvorschau
// 1 = Plotterstiftbreite
// 20 = Autosave Intervall
// 21 = Automatische Verbindungsecken
// 22 = Winkelfreigabeflag
// 23 = Standardsymbolspiegelung
// 24 = Gruppenbewegtdarstellung:
// 0 = Bewegtbild ein
// 1 = Bewegtbild alles
// 2 = Bewegtbild kontinuierlich
// 25 = Zwischenablagetext-Platzierungsanforderung
// 26 = Signalrouter Routingbereich
// 27 = Automatische Busanzapfung
// 28 = Signalrouter Markerscan
// 29 = Segmentbewegungsmodus:
// 0 = Bewegen ohne Nachbarn
// 1 = Bewegen mit Nachbarn
// 2 = Nachbarn anpassen
// |4 = Endpunkt folgt Segment
// 30 = Gruppenwinkelfreigabemodus:
// 0 = Gruppenwinkel einhalten
// 1 = Gruppenwinkel automatisch freigeben
// 31 = Standard-Textspiegelungsmodus (STD14)
// 32 = Standard-Textmodus (CAP1|CAP7)
// 33 = Symbol $noplc Plotsichtbarkeitsbeziehung:
// Bit 0 = $noplc setzen bei Plotsichtbarkeitsänderung
// Bit 1 = Plotsichtbarkeit setzen bei $noplc -Änderung
// 34 = Netzplanlisting Maximallänge [ 3,200]
// 35 = Flag - Einzeleckenbearbeitung
// 36 = Flag - Unroutes-Liniengenerierung
// 37 = Flag - Polygonbearbeitung Autocomplete-Modus
// 38 = Fehlerhighlightmodus:
// 0 = Fehlerhighlight
// 1 = Fehlermuster/-strichelung
// 39 = Flag - Automirror horizontal bus taps
// [ 40 = Systemparameter - kein Schreibzugriff ]
// 41 = Verbindungstrennmodus:
// 0 = Verbindungen nicht trennen
// 1 = Verbindungen an Zweipinsymbolen trennen
// 2 = Verbindungen trennen
// 42 = Symbolverbindungstrennmodus:
// 0 = Verbindungen nicht trennen
// 1 = Verbindungen an Zweipinsymbolen trennen
// 2 = Verbindungen trennen
// [ 43 = Systemparameter - kein Schreibzugriff ]
// [ 44 = Systemparameter - kein Schreibzugriff ]
// 45 = Anzeigeklassenbits Verbindung (SCM2)
// 46 = Anzeigeklassenbits Bus (SCM2)
// 47 = Anzeigeklassenbits Text (SCM2)
// 48 = Anzeigeklassenbits Kommentartext (SCM2)
// 49 = Anzeigeklassenbits Grafikfläche (SCM2)
// 50 = Anzeigeklassenbits Grafiklinie (SCM2)
// 51 = Anzeigeklassenbits Strichlinie (SCM2)
// 52 = Anzeigeklassenbits Verbindungsfläche (SCM2)
// 53 = Anzeigeklassenbits Netzbereich (SCM2)
// 54 = Anzeigeklassenbits Makroumrandung (SCM2)
// 55 = Anzeigeklassenbits Tag (SCM2)
int; // Parameterwert
);
Beschreibung
Die Funktion
scm_setintpar dient dazu, Systemparameter vom Typ
int im
Schaltplaneditor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
scm_setintpar gesetzten Systemparametern können mit der Funktion
scm_getintpar abgefragt werden.
Siehe auch
Funktionen scm_getdblpar,
scm_getintpar,
scm_getstrpar,
scm_setdblpar,
scm_setstrpar.
scm_setpartattrib - SCM Bauteilattribut setzen (SCM)
Synopsis
int scm_setpartattrib( // Status
string; // Bauteilname
string; // Attributname
string; // Attributwert
int; // Bauteilbearbeitungsflags:
// Bit 0: vom Bildschirm entfernen
// Bit 1: Bildschirmanzeige aktualisieren
// Bit 2: Zuweisung erzwingen, Varianten deaktivieren
);
Beschreibung
Die Funktion
scm_setpartattrib setzt für das namentlich spezifizierte Bauteil den Wert des angegebenen Attributs. Die maximal speicherbare Stringlänge für den Attributwert beträgt 40 Zeichen. Der Rückgabewert ist Null bei erfolgreicher Attributwertdefinition, (-1) wenn kein gültiges Element geladen ist, (-2) bei fehlenden bzw. ungültigen Parametern, (-3) wenn das Bauteil nicht gefunden wurde, oder (-4) wenn das Attribut mit dem angegebenen Name nicht am Bauteil definiert ist.
Siehe auch
Funktion
scm_chkattrname.
scm_setpickconseg - SCM Defaultverbindungspickelement setzen (SCM)
Synopsis
int scm_setpickconseg( // Status
index C_CONSEG; // Verbindungssegment
);
Beschreibung
Die Funktion
scm_setpickconseg selektiert das angegebene Verbindungssegment als Defaultelement für nachfolgende Verbindungssegmentpickoperationen. Der Rückgabewert ist Null bei erfolgreicher Selektion oder (-1) im Fehlerfall.
Siehe auch
Funktionen scm_pickanyelem,
scm_pickconseg,
scm_pickbustap,
scm_pickelem.
scm_setpickelem - Set SCM default pick element (SCM)
Synopsis
int scm_setpickelem( // Status
index C_FIGURE; // Defaultpickelement
);
Beschreibung
Die Funktion
scm_setpickelem setzt ein Defaultelement für nachfogende Pickoperationen im
Schaltplaneditor. Der Funktionsrückgabewert ist ungleich Null im Fehlerfall.
Siehe auch
Funktion scm_pickelem.
scm_setstrpar - SCM Stringparameter setzen (SCM)
Synopsis
int scm_setstrpar( // Status
int [0,[; // Parametertyp/-nummer:
// [ 0 = Systemparameter schreibgeschützt ]
// [ 1 = Systemparameter schreibgeschützt ]
// [ 2 = Systemparameter schreibgeschützt ]
// [ 3 = Systemparameter schreibgeschützt ]
// 4 = Inhalt zuletzt platzierte Zeichenkette
// 5 = Symbolnamensmuster
// [ 6 = Systemparameter - kein Schreibzugriff ]
// [ 7 = Systemparameter schreibgeschützt ]
// [ 8 = Systemparameter schreibgeschützt ]
// [ 9 = Systemparameter schreibgeschützt ]
// [ 10 = Systemparameter schreibgeschützt ]
// 11 = Current hierachical block reference name
// [ 12 = System parameter write-protected ]
// [ 13 = System parameter write-protected ]
// 14 = Autosave path name
string; // Parameter value
);
Beschreibung
Die Funktion
scm_setstrpar dient dazu, Systemparameter vom Typ
string im
Schaltplaneditor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
scm_setstrpar gesetzten Systemparametern können mit der Funktion
scm_getstrpar abgefragt werden.
Siehe auch
Funktionen Funktionen scm_getdblpar,
scm_getintpar,
scm_getstrpar,
scm_setdblpar,
scm_setintpar.
scm_settagdata - Schaltplan Tagsymbolpin Zieldaten setzen (SCM)
Synopsis
int scm_settagdata( // Status
index C_FIGURE; // Tag Element
string; // Tag Pinname
string; // Tag Referenzname 1
string; // Tag Referenzname 2
);
Beschreibung
Die Funktion
scm_settagdata dient der Zuweisung der spezifizierten Tagzieldaten (Tagpinname und Tagreferenzbezeichnungen) an das angegebene Tagelement im Schaltplan. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung oder ungleich Null im Fehlerfall.
Siehe auch
Funktion cap_gettagdata.
scm_storecon - SCM Verbindung platzieren (SCM)
Synopsis
int scm_storecon( // Status
);
Beschreibung
Die Funktion
scm_storecon erzeugt aus der internen Punktliste eine Verbindung auf dem aktuell geladenen Stromlaufblatt. Der Rückgabewert ist gleich Null, wenn die Verbindung erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) wenn der Verbindungspunktmarker nicht definiert ist, oder (-3) bei ungültigen Polygondaten (nicht-orthogonale Segmente bzw. Kreisbögen in der Punktliste).
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_storelabel - SCM Label platzieren (SCM)
Synopsis
int scm_storelabel( // Status
string; // Label Netzname
int [0,2]; // Labeltyp:
// 0 = Standard Label
// 1 = Modulport
// 2 = Bustap
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
scm_storelabel platziert einen Label mit den angegebenen Parametern auf dem aktuell geladenen Stromlaufblatt. Das erste Zeichen des Label-Netznamens darf kein Fragezeichen sein, da dieses zur Kennzeichnung von Modulports verwendet wird. Der Drehwinkel wird beim Platzieren von Bustaps ignoriert; außerdem müssen Bustaps immer an Bus-Verbindungssegmente angeschlossen, d.h. exakt auf solchen platziert werden. Der Name des Label-Bibliothekssymbols ergibt sich bei Standardlabels aus dem Netznamen bzw. zu
standard , wenn kein entsprechendes Labelsymbol definiert ist; beim Platzieren von Modulports bzw. Bustaps werden per Default die Labelsymbole
port bzw.
bustap verwendet. Der Rückgabewert ist gleich Null, wenn der Label erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei fehlenden/ungültigen Parametern, (-3) wenn der Label nicht ladbar ist, (-4) wenn die Labeldaten nicht in die Jobdatenbank kopiert werden konnten, oder (-5) wenn die Platzierungsdaten eines Bustaps nicht auf einem gültigen Verbindungssegment liegen.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_storepart - SCM Bauteil platzieren (SCM)
Synopsis
int scm_storepart( // Status
& string; // Bauteilname
string; // Bauteil Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,7]; // Spiegelungsmodus und Tagpintyp
// (STD14|(CAP6<<1))
);
Beschreibung
Die Funktion
scm_storepart platziert ein Bauteil mit den angegebenen Parametern auf dem gegenwärtig geladenen SCM-Element. Wird eine Leerzeichenkette für den Bauteilnamen übergeben, so wird der Bauteilname automatisch erzeugt und im entsprechenden Parameter an den Aufrufer zurückgegeben. Der Rückgabewert ist gleich Null, wenn das Bauteil erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei fehlenden/ungültigen Parametern, (-3) wenn das Bauteil nicht ladbar ist, (-4) wenn die Bauteildaten nicht in die Jobdatenbank kopiert werden konnten, (-5) wenn das Bauteil bereits platziert ist, oder (-6) wenn bei der automatischen Bauteilnamenserzeugung ein Fehler aufgetreten ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_storepoly - SCM Fläche platzieren (SCM)
Synopsis
int scm_storepoly( // Status
int [0,5]; // Polygontyp (CAP2)
);
Beschreibung
Die Funktion
scm_storepoly generiert aus der mit
bae_storepoint erzeugten internen Punktliste unter Verwendung der angegebenen Parameter ein Polygon auf dem gegenwärtig geladenen SCM-Element. Der Rückgabewert ist gleich Null, wenn das Polygon erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei ungültigen Parametern, oder (-3) wenn die Punktliste für den gegebenen Polygontyp ungültig ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
scm_storetext - SCM Text platzieren (SCM)
Synopsis
int scm_storetext( // Status
string; // Textzeichenkette
double; // Text-X-Koordinate (STD2)
double; // Text-Y-Koordinate (STD2)
double; // Textdrehwinkel (STD3)
double ]0.0,[; // Textgröße (STD2)
int [0,1]; // Textspiegelungsmodus (STD14)
int [0,[; // Textmodus/-stil (CAP1|CAP7)
);
Beschreibung
Die Funktion
scm_storetext platziert einen Text mit den angegebenen Parametern auf dem gegenwärtig geladenen SCM-Element. Der Rückgabewert ist ungleich Null, wenn ungültige Daten übergeben wurden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
C_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden. Es können maximal 40 Zeichen der übergebenen Textzeichenkette gespeichert werden. Bei Übergabe längerer Zeichenketten gibt die Funktionen den Fehlerstatus zur Kennzeichnung ungültiger Parameter zurück.
Siehe auch
Funktion
scm_attachtextpos.
C.4 PCB-Design-Systemfunktionen
In diesem Abschnitt werden (in alphabetischer Reihenfolge) die in der
Bartels User Language definierten PCB-Design-Systemfunktionen beschrieben. Beachten Sie bitte die Konventionen zur Funktionsbeschreibung in
Anhang C.1.
C.4.1 Layout-Datenzugriffsfunktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp LAY zugeordnet, d.h. diese Funktionen können im
Layouteditor, im Autorouter und im CAM-Prozessor aufgerufen werden:
lay_defelemname - Layout Setup default Elementname (LAY)
Synopsis
string lay_defelemname( // Default Layout Elementname
);
Beschreibung
Der Rückgabewert der Funktion
lay_defelemname entspricht dem in der Setupdatei eingestellten Defaultnamen für Layoutplanelemente.
lay_deflibname - Layout Setup default Bibliothek (LAY)
Synopsis
string lay_deflibname( // Default Layout Bibliotheksname
);
Beschreibung
Der Rückgabewert der Funktion
lay_deflibname entspricht dem in der Setupdatei eingestellten Defaultnamen für die Layoutbibliothek.
lay_defusrunit - Layout Setup default Benutzereinheitensystem (LAY)
Synopsis
int lay_defusrunit( // Koordinatenanzeigemodus (STD7)
);
Beschreibung
Der Rückgabewert der Funktion
lay_defusrunit entspricht der in der Setupdatei angegebenen Defaulteinstellung für die Koordinatenanzeige (1=Inch, 0=mm).
lay_doclayindex - Layout Dokumentarlagenanzeigeindex (LAY)
Synopsis
int lay_doclayindex( // Dokumentarlagen Anzeigeindex
int [0,99]; // Dokumentarlagennummer
);
Beschreibung
Die Funktion lay_doclayindex ermittelt den Dokumentarlagenanzeigeindex für die übergebene Dokumentarlage. Der Funktionsrückgabewert ist (-1) wenn eine eine ungütige Lagennummer spezifiziert wurde.
Siehe auch
Funktionen lay_doclayname, lay_doclayside, lay_doclaytext.
lay_doclayname - Layout Setup Name Dokumentarlage (LAY)
Synopsis
string lay_doclayname( // Dokumentarlagenname
int [0,99]; // Dokumentarlagennummer
);
Beschreibung
Der Rückgabewert der Funktion
lay_doclayname entspricht dem in der Setupdatei eingestellten Namen für die übergebene Dokumentarlage oder der Nullzeichenkette, wenn eine ungültige Lage angegeben wurde.
Siehe auch
Funktionen lay_doclayindex, lay_doclayside, lay_doclaytext.
lay_doclayside - Layout Setup Seitenmodus Dokumentarlage (LAY)
Synopsis
int lay_doclayside( // Dokumentarlagen Seitenmodus:
// (-2) = falsche Lagennummer
// (-1) = wählbar
// ( 0) = Seite 1
// ( 1) = Seite 2
// ( 2) = Beide Seiten
int [0,99]; // Dokumentarlagennummer
);
Beschreibung
Der Rückgabewert der Funktion
lay_doclayside entspricht dem in der Setupdatei eingestellten Seitenmodus für die übergebene Dokumentarlage. (-1) bedeutet Seite 1, Seite 2 und beide Seiten sind wählbar. 0, 1 und 2 bedeuten, dass für die entsprechende Dokumentarlage Seite 1, Seite 2 bzw. beide Seiten als Defaultwert eingestellt ist. Ein Rückgabewert von (-2) bedeutet, dass eine falsche Lagennummer spezifiziert wurde.
Siehe auch
Funktionen lay_doclayindex, lay_doclayname, lay_doclaytext.
lay_doclaytext - Layout Setup Textmodus Dokumentarlage (LAY)
Synopsis
int lay_doclaytext( // Dokumentarlagen Textmodus (LAY2)
int [0,99]; // Dokumentarlagennummer
);
Beschreibung
Der Rückgabewert der Funktion
lay_doclaytext entspricht dem in der Setupdatei eingestellten Textmodus
(LAY2) für die übergebene Dokumentarlage. Ein Rückgabewert von (-1) bedeutet, dass eine falsche Lagennummer spezifiziert wurde.
Siehe auch
Funktionen lay_doclayindex, lay_doclayname, lay_doclayside.
lay_figboxtest - Layout Elementüberschneidung Rechteck prüfen (LAY)
Synopsis
int lay_figboxtest( // Status
index L_FIGURE; // Element
double; // Rechteck linke Grenze (STD2)
double; // Rechteck untere Grenze (STD2)
double; // Rechteck rechte Grenze (STD2)
double; // Rechteck obere Grenze (STD2)
);
Beschreibung
Die Funktion
lay_figboxtest prüft, ob das angegebene Element das angegebene Rechteck schneidet. Der Rückgabewert ist ungleich Null, wenn die Elementgrenzen das angegebene Rechteck schneiden.
lay_findconpart - Layout Bauteil in Netzliste suchen (LAY)
Synopsis
int lay_findconpart( // Status
string; // Bauteilname
& index L_CPART; // Rückgabe Netzlistenbauteil
);
Beschreibung
Die Funktion
lay_findconpart sucht den angegebenen Bauteilnamen in der Netzliste und gibt den Bauteileintrag gegebenenfalls in dem Bauteilrückgabeparameter zurück. Der Rückgabewert dieser Funktion ist ungleich Null, wenn das Bauteil nicht gefunden wurde.
Siehe auch
Funktionen lay_findconpartpin,
lay_findcontree.
lay_findconpartpin - Layout Bauteilpin in Netzliste suchen (LAY)
Synopsis
int lay_findconpartpin( // Status
string; // Pinname
index L_CPART; // Netzlistenbauteil
& index L_CPIN; // Rückgabe Netzlistenbauteilpin
);
Beschreibung
Die Funktion
lay_findconpartpin sucht den Bauteilpin mit dem angegebenen Namen auf dem spezifizierten Netzlistenbauteil und gibt den Bauteilpineintrag gegebenenfalls in dem Bauteilpinrückgabeparameter zurück. Der Rückgabewert dieser Funktion ist ungleich Null, wenn der Bauteilpin nicht gefunden wurde.
Siehe auch
Funktionen lay_findconpart,
lay_findcontree.
lay_findcontree - Layout Netz in Netzliste suchen (LAY)
Synopsis
int lay_findcontree( // Status
string; // Netzname
& index L_CNET; // Rückgabe Netzlisteneintrag
);
Beschreibung
Die Funktion
lay_findcontree sucht den angegebenen Netznamen in der Netzliste und gibt den Netzlisteneintrag ggf. in dem Netzrückgabeparameter zurück. Der Rückgabewert dieser Funktion ist ungleich Null, wenn das Netz nicht gefunden wurde.
Siehe auch
Funktionen lay_findconpart,
lay_findconpartpin.
lay_getplanchkparam - Layout DRC Abstände abfragen (LAY)
Synopsis
void lay_getplanchkparam(
& double; // Abstand Bahn zu Bahn (STD2)
& double; // Abstand Bahn zu Kupfer (STD2)
& double; // Abstand Kupfer zu Kupfer (STD2)
& double; // Standard-Leiterbahnbreite (STD2)
& string; // Blockname
int [-6,99]; // Signallagencode (LAY1)
// (Lage!=(-1) nur in BAE HighEnd zulässig)
int [0,0[; // DRC-Blocknummer
);
Beschreibung
Die Funktion
lay_getplanchkparam gibt in den Parametern die Abstandsparameter für den Design Rule Check (DRC) im
Layouteditor zurück. In
BAE Professional,
BAE Economy und
BAE Light können nur die globalen Parameter für den Lagencode -1 (Alle Lagen) und den DRC-Block 0 abgefragt werden. In
BAE HighEnd können darüber hinaus auch Parameterblöcke ausgelesen werden, die lagenspezifischer Mindestabstände für beliebige Signallagen (Lagencodes 0 bis 99), die oberste Lage (Lagencode -5) sowie die Innenlagen (Lagencode -6) definieren. Der Parameterblock 0 ist immer vorhanden und enthält die global definierten DRC-Parameter. Ebenso ist auch immer für den Lagencode -1 (Alle Lagen) eine Vorgabe vorhanden.
Siehe auch
Funktion
lay_setplanchkparam.
lay_getpowplanetree - Layout Netznummer in Versorgungslage abfragen (LAY)
Synopsis
int lay_getpowplanetree( // Netznummer oder (-1)
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
int; // Versorgunglagennummer (LAY1)
double; // Bohrdurchmesser (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
lay_getpowplanetree entspricht der Netznummer des über die angegebene Versorgungslagenkoordinate angeschlossenen Signalpegels
(L_CNET.NUMBER). Die Auswertung erfolgt auf der angegebenen Versorgungslage unter berücksichtigung des spezifizierten Bohrdurchmessers. Diese Funktion wird zur Ermittlung von Netzanschlüssen bei der Verwendung geteilter Potentiallagen (Split Power Planes) benötigt. Der Funktionsrückgabewert ist (-1), wenn kein Signalanschluss gefunden wurde bzw. wenn eine ungültige Versorgungslagennummer spezifiziert wurde.
Warnung
Die an
lay_getpowplanetree übergebenen Koordinatenangaben werden als Absolutkoordinaten auf dem aktuell geladenen Element interpretiert. Beim indirekten Aufruf von
lay_getpowplanetree über
lay_scan*-Funktionen muss deshalb der spezifizierte Scan-Offset entsprechend berücksichtigt werden.
lay_getpowpolystat - Layout Versorgungslagenpolygonstatus abfragen (LAY)
Synopsis
int lay_getpowpolystat( // Status
index L_FIGURE; // Figurenlistenelement - Versorgungslagenpolygon
& int; // Rückgabeflag:
// Polgyon schneidet Platinenumrandung
& int; // Rückgabeflag:
// Polygon schneidet andere Versorgungslagenpolygone
);
Beschreibung
Mit der Funktion
lay_getpowpolystat wird der Status des angegebenen Versorgungslagenpolygons (Split Power Plane) abgefragt. Die Rückgabeflags geben an, ob das Versorgungslagenpolygon die Platinenumrandung oder andere Versorgungslagenpolygone schneidet. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage, (-1) bei ungültigen Parametern oder ungültiger Interpreterumgebung oder (-2) wenn das angegebene Figurenlistenelement kein Versorgungslagenpolygon ist.
lay_getrulecnt - Layoutelement Regelanzahl abfragen (LAY)
Synopsis
int lay_getrulecnt( // Regelanzahl oder (-1) bei Fehler
int; // Object class code
int; // Object ident code (int oder Indextyp)
);
Beschreibung
Mit der Funktion
lay_getrulecnt kann die Anzahl der an ein spezifisches Objekt zugewiesenen Regeln ermittelt werden. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
L_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
L_POOL für die Objektidentifikation) durchgeführt werden. Die von
lay_getrulecnt ermittelte (nicht-negative) objektspezifische Regelanzahl wird im Rückgabewert der Funktion übergeben und bestimmt den Wertebereich für den Regelnamenslistenindex in nachfolgenden Aufrufen der Funktion
lay_getrulename zur Ermittlung von Regelnamen für das entsprechende Objekt. Der Rückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_getrulename - Layoutelement Regelname abfragen (LAY)
Synopsis
int lay_getrulename( // Status
int; // Object class code
int; // Object ident code (int oder Indextyp)
int [0,[; // Regelnamenslistenindex
& string; // Regelname
);
Beschreibung
Mit der Funktion
lay_getrulename können die Namen der an ein spezifisches Objekt zugewiesenen Regeln ermittelt werden. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
L_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
L_POOL für die Objektidentifikation) durchgeführt werden. Der Regelnamenslistenindex zur Auswahl der gewünschten Regel muss mindestens Null jedoch kleiner als die mit der Funktion
lay_getrulecnt abfragbare Anzahl objektspezifischer Regeln sein. Der ermittelte Regelname wird über den letzten Funktionsparameter an den Aufrufer zurückgegeben. Der Rückgabewert der Funktion
lay_getrulename ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_getscclass - Aktuell gescannte Layoutelementklasse ermitteln (LAY)
Synopsis
int lay_getscclass( // Rückgabe Layoutelementklasse:
// 0 = Layout
// 1 = Bauteil
// 2 = Padstack
// 3 = Pad
// (-1) sonst
);
Beschreibung
Die Funktion lay_getscclass gibt die aktuell gescannte Layoutelementklasse zurück. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von lay_scanall, lay_scanfelem oder lay_scanpool sinnvoll. An anderer Stelle, oder wenn gerade kein Layoutelement gescannt wird, ergibt sich der Funktionsrückgabewert zu (-1).
Siehe auch
Funktionen lay_scanall,
lay_scanfelem,
lay_scanpool.
lay_getscpartrpidx - Aktuell gescanntes benannte Layoutbauteil ermitteln (LAY)
Synopsis
index L_NREF lay_getscpartrpidx // Rückgabe Bauteilindex oder (-1)
);
Beschreibung
Die Funktion
lay_getscpartrpidx gibt das aktuell gescannte Layoutbauteil als benannte Referenz zurück, d.h. damit kann beim Scannen von Leiterbahnen, Polygonen, Texten, Pins, etc. die Bauteilzugehörigkeit des jeweils gescannten Objects ermittelt werden. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von
lay_scanall,
lay_scanfelem oder
lay_scanpool sinnvoll. An anderer Stelle, oder wenn gerade kein Bauteil gescannt wird, ergibt sich der Funktionsrückgabewert zu (-1).
Siehe auch
Funktionen
lay_scanall,
lay_scanfelem,
lay_scanpool.
lay_getscrefpidx - Aktuell gescanntes Layoutbibliothekselement ermitteln (LAY)
Synopsis
index L_POOL lay_getscrefpidx // Rückgabe Poolindex, oder (-1) wenn kein Makro
);
Beschreibung
Die Funktion
lay_getscrefpidx gibt den Poolindex des aktuell gescannten Bibliothekselements zuück, d.h. damit kann beim Scannen von Leiterbahnen, Polygonen, Texten, etc. die Zugehörigkeit des jeweils gescannten Objects zum entsprechenden Bibliothekselement (Bauteil, Padstack, Pad) ermittelt werden. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von
lay_scanall,
lay_scanfelem oder
lay_scanpool sinnvoll. An anderer Stelle, oder wenn gerade kein Bibliothekselement gescannt wird, ergibt sich der Funktionsrückgabewert zu (-1).
Siehe auch
Funktionen
lay_scanall,
lay_scanfelem,
lay_scanpool.
lay_getscstkcnt - Layout Scanfunktion Stacktiefe abfragen (LAY)
Synopsis
int lay_getscstkcnt( // Scan-Stacktiefe
);
Beschreibung
Die Funktion
lay_getscstkcnt dient der Abfrage der aktuellen Stacktiefe der Layoutscanfunktionen.
lay_getscstkcnt kann somit zur Abarbeitungskontrolle innerhalb der Callbackfunktionen von
lay_scanall,
lay_scanfelem oder
lay_scanpool eingesetzt werden.
Siehe auch
Funktionen lay_scanall,
lay_scanfelem,
lay_scanpool.
lay_getsctextdest - Zielpunkt des gescannten Layouttextes abfragen (LAY)
Synopsis
int lay_getsctextdest( // Status
& double; // Rückgabe Textlinienzielpunkt X-Koordinate (STD2)
& double; // Rückgabe Textlinienzielpunkt Y-Koordinate (STD2)
);
Beschreibung
Mit der Funktion
lay_getsctextdest kann der Ziel- bzw. Endpunkt der Textbasislinie des aktuell gescannten Textelements ermittelt werden. Der Aufruf dieser Funktion ist nur innerhalb der Callbackfunktionen von
lay_scanall,
lay_scanfelem oder
lay_scanpool sinnvoll. Der Funktionsrückgabewert ist 1 bei erfolgreicher Abfrage oder Null bei fehlgschlagener Abfrage.
Siehe auch
Funktionen lay_scanall,
lay_scanfelem,
lay_scanpool.
lay_gettreeidx - Layout Netznummer in Netzliste suchen (LAY)
Synopsis
int lay_gettreeidx( // Status
int; // Netznummer
& index L_CNET; // Rückgabe Netzlisteneintrag
);
Beschreibung
Die Funktion
lay_gettreeidx sucht die angegebene Netznummer in der Netzliste und gibt den Netzlisteneintrag gegebenenfalls in dem Netzrückgabeparameter zurück. Der Rückgabewert ist ungleich Null, wenn die Netznummer nicht gefunden wurde.
lay_grpdisplay - Layout Setup Gruppenlage abfragen (LAY)
Synopsis
int lay_grpdisplay( // Dokumentarlagennummer (LAY1)
);
Beschreibung
Der Rückgabewert der Funktion
lay_grpdisplay entspricht der in der Setupdatei eingestellten Dokumentarlage für die Gruppendarstellung.
lay_lastfigelem - Zuletzt modifiziertes Layoutelement ermitteln (LAY)
Synopsis
int lay_lastfigelem( // Status
& index L_FIGURE; // Rückgabe Element
);
Beschreibung
Die Funktion
lay_lastfigelem ermittelt das zuletzt erzeugte bzw. modifizierte Layoutelement und übergibt den entsprechenden Index aus der Figurenliste im Rückgabeparameter. Der Rückgabewert der Funktion ist Null wenn ein derartiges Element existiert, oder ungleich Null andernfalls.
lay_maccoords - Layout Makrokoordinaten abfragen (LAY)
Synopsis
void lay_maccoords(
& double; // X-Position (STD2)
& double; // Y-Position (STD2)
& double; // Drehwinkel (STD3)
& int; // Spiegelungsmodus (STD14)
& int; // Lage (LAY1 für Pad auf Padstack)
);
Beschreibung
Die Funktion
lay_maccoords gibt in den Parametern die Platzierungsdaten für das aktuell bearbeitete Makro zurück. Der Aufruf dieser Funktion ist nur innerhalb der Makroscanfunktion von
lay_scanall,
lay_scanfelem oder
lay_scanpool sinnvoll. An anderer Stelle werden Null-Defaultwerte zurückgegeben.
Siehe auch
Funktionen
lay_scanall,
lay_scanfelem,
lay_scanpool.
lay_macload - Layoutsymbol in den Arbeitsspeicher laden (LAY)
Synopsis
int lay_macload( // Status
& index L_POOL; // Makro Poolelementindex
string; // DDB-Dateiname
string; // Elementname
int [100,[; // Element DDB-/Datenbankklasse (STD1)
);
Beschreibung
Die Funktion
lay_macload lädt das angegebene Layoutsymbol in den Arbeitsspeicher und übergibt den zugehörigen Poolindex im entsprechenden Parameter. Der Funktionsrückgabewert ist Null, wenn das Symbol erfolgreich geladen wurde, (-1) bei Dateizugriffsfehlern, (-2) bei fehlenden oder ungültigen Parameterangaben oder 1 wenn referenzierte Bibliothekselemente nicht verfügbar sind.
lay_macload ist für die Anwendung in Funktionen zur Auswertung von Bibliotheksdateien konzipiert. Mit der Funktion
lay_macrelease können Layoutsymbole wieder aus dem Arbeitsspeicher entfernt werden.
Siehe auch
Funktion
lay_macrelease.
lay_macrelease - Layoutsymbol aus dem Arbeitsspeicher löschen (LAY)
Synopsis
void lay_macrelease(
index L_POOL; // Makro Poolelementindex
);
Beschreibung
Die Funktion
lay_macrelease löscht das über den Poolelementindex spezifizierte Layoutsymbol aus dem Arbeitsspeicher.
lay_macrelease ist als Pendant zur Funktion
lay_macload konzipiert.
Siehe auch
Funktion
lay_macload.
lay_menulaylinecnt - Lagenmenüzeilenanzahl abfragen (LAY)
Synopsis
int lay_menulaylinecnt( // Anzahl Einträge im Signallagenmenü
);
Beschreibung
Der Rückgabewert der Funktion
lay_menulaylinecnt entspricht der aktuell definierten Anzahl der Menüzeilen im Signallagenmenü des Layoutsystems. Das Signallagenmenü kann mit Hilfe des Utilityprogramms
bsetup konfiguriert werden, wobei bis zu 12 Signallagen mit Lagennummer und Lagenname definiert werden können.
Siehe auch
Funktionen
lay_menulaylinelay,
lay_menulaylinename.
lay_menulaylinelay - Lagennummer der angegebenen Lagenmenüzeile abfragen (LAY)
Synopsis
int lay_menulaylinelay( // Menüzeile Lagennummer
int [0,11]; // Menüzeilennummer
);
Beschreibung
Der Rückgabewert der Funktion
lay_menulaylinelay entspricht der Lagennummer, die für die spezifizierte Menüzeile im Signallagenmenü des Layoutsystems aktuell definiert ist. Das Signallagenmenü kann mit Hilfe des Utilityprogramms
bsetup konfiguriert werden, wobei bis zu 12 Signallagen mit Lagennummer und Lagenname definiert werden können.
Siehe auch
Funktionen
lay_menulaylinecnt,
lay_menulaylinename.
lay_menulaylinename - Lagenname der angegebenen Lagenmenüzeile abfragen (LAY)
Synopsis
string lay_menulaylinename( // Menüzeile Lagenbezeichnung
int [0,11]; // Menüzeilennummer
);
Beschreibung
Der Rückgabewert der Funktion
lay_menulaylinename entspricht dem Lagennamen, der für die spezifizierte Menüzeile im Signallagenmenü des Layoutsystems aktuell definiert ist. Das Signallagenmenü kann mit Hilfe des Utilityprogramms
bsetup konfiguriert werden, wobei bis zu 12 Signallagen mit Lagennummer und Lagenname definiert werden können.
Siehe auch
Funktionen
lay_menulaylinecnt,
lay_menulaylinelay.
lay_nrefsearch - Layout Name auf Plan suchen (LAY)
Synopsis
int lay_nrefsearch( // Status
string; // Bauteilname
& index L_FIGURE; // Rückgabe Element
);
Beschreibung
Die Funktion
lay_nrefsearch prüft, ob das angegebene Bauteil platziert ist und gibt gegebenenfalls das zugehörige Element zurück. Der Rückgabewert ist ungleich Null, wenn das Bauteil nicht gefunden wurde.
lay_planmidlaycnt - Layout Innenlagenanzahl abfragen (LAY)
Synopsis
int lay_planmidlaycnt( // Innenlagenanzahl
);
Beschreibung
Die Funktion
lay_planmidlaycnt ermittelt die Anzahl der Innenlagen für des aktuell geladenen Layouts.
Siehe auch
Funktion lay_plantoplay.
lay_plantoplay - Layout oberste Lage abfragen (LAY)
Synopsis
int lay_plantoplay( // Oberste Lage (LAY1)
);
Beschreibung
Der Rückgabewert der Funktion
lay_plantoplay entspricht der im aktuell geladenen Element gültigen Einstellung der obersten Lage
(LAY1), bzw. Signallage 2, wenn kein Layoutplan geladen ist.
Siehe auch
Funktion lay_planmidlaycnt.
lay_pltmarklay - Layout Setup Passermarkenlage abfragen (LAY)
Synopsis
int lay_pltmarklay( // Dokumentarlagennummer
);
Beschreibung
Der Rückgabewert der Funktion
lay_pltmarklay entspricht der in der Setupdatei eingestellten Passermarkenlage.
lay_ruleerr - Layout-Regelsystem Fehlerstatus abfragen (LAY)
Synopsis
void lay_ruleerr(
& int; // Fehlercode
& string; // Fehlerstring
);
Beschreibung
Die Funktion
lay_ruleerr dient der Ermittlung des Regelsystemstatus, d.h. die Funktion
lay_ruleerr kann zur genauen Bestimmung der Fehlerursache im Falle eines fehlerhaften Aufrufs einer Regelsystemfunktion verwendet werden.
Diagnose
Zur Bestimmung der Fehlerursache sind die durch
lay_ruleerr zurückgegebenen Parameterwerte heranzuziehen. Der zurückgegebene Fehlerstring dient ggf. der Identifizierung des fehlerverursachenden Elements. Die möglichen Werte, die der Fehlercode durch die Ausführung eines Regelsystemfunktion annehmen kann, haben folgende Bedeutung:
Fehlercode | Bedeutung |
0 | Regelsystem Operation/Funktion erfolgreich beendet |
1 | Regelsystem Hauptspeicher nicht ausreichend |
2 | Regelsystem Interner Fehler <e> |
3 | Regelsystem Funktionsparameter ungültig |
128 | Regelsystem Datenbankdatei kann nicht angelegt werden |
129 | Regelsystem Datenbankdatei Lese-/Schreibfehler |
130 | Regelsystem Datenbankdatei von falschem Typ |
131 | Regelsystem Datenbankdateistruktur beschädigt |
132 | Regelsystem Datenbankdatei nicht gefunden |
133 | Regelsystem Datenbankfehler allgemein (Interner Fehler) |
134 | Regelsystem Regel <r> nicht Regeldatenbank gefunden |
135 | Regelsystem Regel in falschem Format in Datenbank (Interner Fehler <e> ) |
136 | Regelsystem Objekt nicht gefunden |
137 | Regelsystem Objekt mehrfach definiert (Interner Fehler) |
138 | Regelsystem Inkompatible Definition der Variable <v> |
139 | Regelsystem Regel <r> mit inkompatibler Compiler-Version übersetzt |
Der Fehlerstring kann je nach Fehlerfall eine Regel
<r> , eine Variable
<v> oder einen (internen) Fehlerstatus
<e> bezeichnen. Datenbankdateifehler beziehen sich auf Probleme beim Zugriff auf die Regeldatenbankdatei
brules.vdb im BAE-Programmverzeichnis. Interne Fehler weisen üblicherweise auf Implementierungslücken im Regelsystem hin und sollten in jedem Fall an Bartels gemeldet werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_rulefigatt - Regelzuweisung an Layout-Figurenelement (LAY)
Synopsis
int lay_rulefigatt( // Status
index L_FIGURE; // Figurenlistenelement
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
lay_rulefigatt erlaubt die Zuweisung von Regeln an das mit dem ersten Funktionsparameter spezifizierte Figurenlistenelement des aktuell geladenes Elements. Der zweite Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das spezifizierte Figurenlistenelement gelöscht werden. Der Rückgabewert der Funktion
lay_rulefigatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_rulefigdet - Regelzuweisungen von Layout-Figurenelement lösen (LAY)
Synopsis
int lay_rulefigdet( // Status
index L_FIGURE; // Figurenlistenelement
);
Beschreibung
Die Funktion
lay_rulefigdet löscht alle aktuell bestehenden Regelzuweisungen an das über den Funktionsparameter spezifizierte Figurenlistenelement des aktuell geladenen Elements. Der Rückgabewert der Funktion
lay_rulefigdet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt.
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_rulelaysatt - Regelzuweisung an Layoutlagenaufbau (LAY)
Synopsis
int lay_rulelaysatt( // Status
int [0,111]; // Lagenaufbauindex
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
lay_rulelaysatt erlaubt die Zuweisung von Regeln an den durch den angegebenen Lagenaufbauindex spezifizierten Lagenaufbau. Der Funktionsparameter zur Regelangabe erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen des bearbeiteten Lagenaufbaus gelöscht werden. Der Rückgabewert der Funktion
lay_rulelaysatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysdet,
lay_ruleplanatt,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_rulelaysdet - Regelzuweisungen von Layoutlagenaufbau lösen (LAY)
Synopsis
int lay_rulelaysdet( // Status
int [0,111]; // Lagenaufbauindex
);
Beschreibung
Die Funktion
lay_rulelaysdet löscht alle aktuell bestehenden Regelzuweisungen an den durch den Lagenaufbauindex angegebenen Lagenaufbau. Der Rückgabewert der Funktion
lay_rulelaysdet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_ruleplanatt,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_ruleplanatt - Regelzuweisung an aktuell geladenes Layoutelement (LAY)
Synopsis
int lay_ruleplanatt( // Status
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
lay_ruleplanatt erlaubt die Zuweisung von Regeln an das aktuell geladenes Elements. Der Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das aktuelle Element gelöscht werden. Der Rückgabewert der Funktion
lay_ruleplanatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplandet,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_ruleplandet - Regelzuweisungen von aktuell geladenem Layoutelement lösen (LAY)
Synopsis
int lay_ruleplandet( // Status
);
Beschreibung
Die Funktion
lay_ruleplandet löscht alle aktuell bestehenden Regelzuweisungen an das aktuell geladene Element. Der Rückgabewert der Funktion
lay_ruleplandet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt,
lay_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
lay_rulequery - Layoutelement Regelabfrage durchführen (LAY)
Synopsis
int lay_rulequery( // Trefferanzahl oder (-1) bei Fehler
int; // Object class code
int; // Object ident code (int oder Indextyp)
string; // Subjektname
string; // Prädikatname
string; // Abfragekommando
& void; // Abfrageergebnis
[] // Optionale Abfrageparameter
);
Beschreibung
Die Funktion
lay_rulequery führt eine Regelabfrage für ein spezifisches Objekt durch. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
L_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
L_POOL für die Objektidentifikation) durchgeführt werden. Zur Durchführung der Abfrage müssen sowohl ein Regelsubjekt als auch ein Regelprädikat namentlich angegeben werden. Zusätzlich ist ein Abfragekommando zu spezifizieren. Das Abfragekommando kann Platzhalter für Wertvorgaben und einen Abfrageoperator enthalten. Folgende Abfrageoperatoren stehen zur Verfügung:
?d | zur Abfrage von int -Werten |
?f | zur Abfrage von double -Werten |
?s | zur Abfrage von string -Werten |
Dem Abfrageoperator kann wahlweise einer der folgenden Selektionsoperatoren vorangestellt werden:
+ | zur Abfrage des Maximums aller gefundenen Werte |
- | zur Abfrage des Minimums aller gefundenen Werte |
Standardmäßig, d.h. bei Auslassung des Selektionsoperators wird der
+ -Operator verwendet. Der über die Abfrage gefundene Werteintrag wird im Funktionsparameter für das Abfrageergebnis zurückgegeben. Hierbei ist sicherzustellen, dass der Datentyp des Parameters für das Abfrageergebnis mit dem Abfragedatentyp übereinstimmt
(int für ?d ,
double für ?f ,
string für ?s ). Neben dem Abfrageoperator können folgende Platzhalter für Wertvorgaben im Abfragekommando spezifiziert werden:
%d | zur Angabe von int -Werten |
%f | zur Angabe von double -Werten |
%s | zur Angabe von string -Werten |
Für jeden im Abfragekommando spezifizierten Platzhalter für Wertvorgaben ist ein optionaler Abfrageparameter an die Funktion
lay_rulequery zu übergeben. Die Reihenfolge dieser optionalen Parameter sowie deren Datentypen müssen mit den Spezifikationen im Abfragekommando übereinstimmen. Nach erfolgreicher Abarbeitung der Regelabfrage wird im Rückgabewert die (nicht-negative) Anzahl der gefundenen Einträge an den Aufrufer zurückgegeben. Der Rückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
lay_ruleerr ermittelt werden.
Beispiele
Sofern die Regel
rule somerule
{
subject subj
{
pred := ("A", 2);
pred := ("A", 4);
pred := ("B", 1);
pred := ("C", 3);
pred := ("B", 6);
pred := ("D", 5);
pred := ("D", 6);
pred := ("A", 3);
}
}
definiert und dem aktuell geladenen Element zugewiesen ist, würde der
lay_rulequery-Aufruf
hitcount = lay_rulequery(0,0,"subj","pred","%s ?d",intresult,"A") ;
die
int -Variable
hitcount auf 3 und die
int -Variable
intresult auf 4 setzen, während der Aufruf
hitcount = lay_rulequery(0,0,"subj","pred","-?s %d",strresult,6) ;
die Variable
hitcount auf 2 und die
string -Variable
strresult auf
B setzt.
Siehe auch
Funktionen
lay_getrulecnt,
lay_getrulename,
lay_ruleerr,
lay_rulefigatt,
lay_rulefigdet,
lay_rulelaysatt,
lay_rulelaysdet,
lay_ruleplanatt,
lay_ruleplandet;
Neuronales Regelsystem und
Rule System Compiler.
lay_scanall - Layout Scan über alle Elemente (LAY)
Synopsis
int lay_scanall( // Scan Status
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
int [0,1]; // Connectivity Scan Flag:
// 0 = kein Scan
// 1 = Scan erlaubt
* int; // Makrofunktion
* int; // Polygonfunktion
* int; // Leiterbahnfunktion
* int; // Textfunktion
* int; // Bohrungsfunktion
* int; // Lagencheckfunktion
* int; // Levelcheckfunktion
);
Beschreibung
Die Funktion
lay_scanall scannt alle auf dem aktuell geladenen Element platzierten Elemente über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben. Der Rückgabewert der Funktion
lay_scanall ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
lay_scanall zurückgemeldet hat.
Makrofunktion
int macrofuncname(
index L_MACRO macro, // Makro Index
index L_POOL pool, // Pool Element Index
int macinws, // Makro in Arbeitsbereich Flag (STD10)
string refname, // Makro Referenzname
index L_LEVEL level // Makro Level
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Die Makroplatzierungsdaten können mit der Funktion
lay_maccoords abgefragt werden. Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan für dieses Makro nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll.
Polygonfunktion
int polyfuncname(
index L_POLY poly, // Polygondaten
int layer, // Lage (LAY1)
int polyinws, // Polygon in Arbeitsbereich Flag (STD10)
int tree, // Netznummer oder (-1)
index L_LEVEL level // Polygon Level
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Leiterbahnfunktion
int pathfuncname(
index L_LINE path, // Leiterbahndaten
int layer, // Lage (LAY1)
int pathinws, // Bahn in Arbeitsbereich Flag (STD10)
index L_LEVEL level // Bahn Level
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Textfunktion
int textfuncname(
index L_TEXT text, // Textdaten
double x, // X-Koordinate (STD2)
double y, // Y-Koordinate (STD2)
double angle, // Drehwinkel (STD3)
int mirr, // Spiegelung (STD14)
int layer, // Lage (LAY1)
double size, // Text Größe (STD2)
string textst, // Textzeichenkette
int textinws // Text in Arbeitsbereich Flag (STD10)
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Bohrungsfunktion
int drillfuncname(
index L_DRILL drill, // Bohrungsdaten
double x, // Transformierte X-Koordinate (STD2)
double y, // Transformierte Y-Koordinate (STD2)
int drillinws, // Bohrung in Arbeitsbereich Flag (STD10)
int tree, // Netznummer oder (-1)
index L_LEVEL level // Bohrung Level
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Lagencheckfunktion
int laycheckfuncname(
int layer // Lage (LAY1)
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan bei der übergebenen Lage nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll. Bei Beschränkung auf die interessierenden Lagen durch diese Funktion wird der Scanvorgang erheblich beschleunigt.
Levelcheckfunktion
int levcheckfuncname(
index L_LEVEL level // Level
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan bei dem übergebenen Level nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll. Bei Beschränkung auf die interessierenden Levels durch diese Funktion wird der Scanvorgang erheblich beschleunigt.
Siehe auch
Funktionen
lay_maccoords,
lay_scanfelem,
lay_scanpool.
lay_scanfelem - Layout Scan über Figurenelement (LAY)
Synopsis
int lay_scanfelem( // Scan Status
index L_FIGURE; // Figurenelement
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
int [0,1]; // Connectivity Scan Flag:
// 0 = kein Scan
// 1 = Scan erlaubt
* int; // Makrofunktion
* int; // Polygonfunktion
* int; // Leiterbahnfunktion
* int; // Textfunktion
* int; // Bohrungsfunktion
* int; // Lagencheckfunktion
* int; // Levelcheckfunktion
);
Beschreibung
Die Funktion
lay_scanfelem scannt das angegebene Figurenelement über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben (Definition der referenzierten Anwenderfunktionen siehe
lay_scanall). Der Rückgabewert der Funktion
lay_scanfelem ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
lay_scanfelem zurückgemeldet hat.
Siehe auch
Funktionen
lay_maccoords,
lay_scanall,
lay_scanpool.
lay_scanpool - Layout Scan über Poolelement (LAY)
Synopsis
int lay_scanpool( // Scan Status
void; // Poolelement
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
int [0,1]; // Connectivity Scan Flag:
// 0 = kein Scan
// 1 = Scan erlaubt
* int; // Makrofunktion
* int; // Polygonfunktion
* int; // Leiterbahnfunktion
* int; // Textfunktion
* int; // Bohrungsfunktion
* int; // Lagencheckfunktion
* int; // Levelcheckfunktion
);
Beschreibung
Die Funktion
lay_scanpool scannt das angegebene Poolelement über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben (Definition der referenzierten Anwenderfunktionen siehe
lay_scanall). Der Rückgabewert der Funktion
lay_scanpool ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
lay_scanpool zurückgemeldet hat.
Siehe auch
Funktionen
lay_maccoords,
lay_scanall,
lay_scanfelem.
lay_setfigcache - Layout-Cache für den schnellen Zugriff auf Figurenlistenelemente aufbauen (LAY)
Synopsis
void lay_setfigcache(
);
Beschreibung
Die Funktion lay_setfigcache baut den Layout-Cache für schnelle Figurenlistenelementzugriffe auf.
lay_setplanchkparam - Layout DRC Parameter setzen (LAY)
Synopsis
int lay_setplanchkparam( // Status
double ]0.0,[; // Abstand Bahn zu Bahn (STD2)
double ]0.0,[; // Abstand Bahn zu Kupfer (STD2)
double ]0.0,[; // Abstand Kupfer zu Kupfer (STD2)
double; // Standard-Leiterbahnbreite (STD2)
string; // Blockname
int [-6,99]; // Signallagencode (LAY1)
// (Lage!=(-1) nur in BAE HighEnd zulässig)
int [0,0[; // DRC-Blocknummer
);
Beschreibung
Die Funktion
lay_setplanchkparam setzt Abstandsparameter für den Design Rule Check (DRC) im
Layouteditor. Der Rückgabewert ist ungleich Null, wenn ungültige Abstände spezifiziert wurden. In
BAE Professional,
BAE Economy und
BAE Light können nur die globalen Parameter für den Lagencode -1 (Alle Lagen) und den DRC-Block 0 gesetzt werden. In
BAE HighEnd können darüber hinaus auch Parameterblöcke zur Zuweisung lagenspezifischer Mindestabstände für beliebige Signallagen (Lagencodes 0 bis 99), die oberste Lage (Lagencode -5) sowie die Innenlagen (Lagencode -6) spezifiziert werden. Der Parameterblock 0 ist immer vorhanden und enthält die global definierten DRC-Parameter. Ebenso ist auch immer für den Lagencode -1 (Alle Lagen) eine Vorgabe vorhanden.
Siehe auch
Funktion
lay_getplanchkparam.
lay_toplayname - Layout Setup Name oberste Lage abfragen (LAY)
Synopsis
string lay_toplayname( // Lagenname
);
Beschreibung
Der Rückgabewert der Funktion
lay_toplayname entspricht dem in der Setupdatei eingestellten Namen für die oberste Lage.
lay_vecttext - Layout Text vektorisieren (LAY)
Synopsis
int lay_vecttext( // Status
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Spiegelung (STD14)
double ]0.0,[; // Text Größe (STD2)
int [0,1]; // Physical Flag:
// 0 = Logical
// 1 = Physical
int [0,2]; // Lagenspiegelung:
// 0 = Spiegelung aus
// 1 = X-Spiegelung
// 2 = Y-Spiegelung
int [0,[; // Text Stil (LAY14)
string; // Text Zeichenkette
* int; // Vektorisierungsfunktion
);
Beschreibung
Die Funktion
lay_vecttext vektorisiert den übergebenen Text unter Verwendung des aktuell geladenen Zeichensatzes. Dazu wird für jedes Textsegment die übergebene Vektorisierungsfunktion aufgerufen. Der Rückgabewert dieser Funktion ist ungleich Null, wenn ungültige Parameter angegeben wurden oder die vom Benutzer definierte Vektorisierungsfunktion einen Wert ungleich Null zurückgegeben hat.
Vektorisierungsfunktion
int vecfuncname(
double x1, // X-Koordinate erster Punkt (STD2)
double y1, // Y-Koordinate erster Punkt (STD2)
double x2, // X-Koordinate zweiter Punkt (STD2)
double y2 // Y-Koordinate zweiter Punkt (STD2)
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
C.4.2 Layouteditor-Funktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp GED zugeordnet, d.h. diese Funktionen können im
Layouteditor aufgerufen werden:
ged_asklayer - GED Lagenauswahl (GED)
Synopsis
int ged_asklayer( // Status
& int; // Lagenrückgabe (LAY1|LAY9)
int [0,7]; // Lagenabfragetyp:
// 0 = Dokumentarlagen und Signallagen
// 1 = Signallagen
// 2 = Signallagen
// (inklusive und )
// 3 = Dokumentarlagen
// 4 = Signallagen und Versorgungslagen
// 5 = beliebige Anzeigeelementtypen
// 6 = Versorgungslagen
// 7 = Dokumentar-, Signal- und Versorgungslagen
);
Beschreibung
Die Funktion
ged_asklayer aktiviert im
Layouteditor ein Lagenauswahlmenü. Der Lagenabfragetyp gibt an, welche Lagen bzw. Anzeigelementtypen zur Auswahl angeboten werden. Der Rückgabewert ist Null bei erfolgter Lagenwahl oder (-1) bei Wahl des Menüpunktes Abbruch.
ged_askrefname - Interaktive GED Referenznamensabfrage (GED)
Synopsis
int ged_askrefname( // Status
& string; // Rückgabe Referenzname
& index L_CPART; // Rückgabe Netzlisten-Bauteilindex (nur auf Layoutebene)
int [0,2]; // Bauteilauswahlmodus:
// 0 = Alle Bauteile
// 1 = in aktueller Gruppe enthaltene Bauteile
// 2 = nicht in aktueller Gruppe enthaltene Bauteile
int [0,1]; // Flag - Auswahl nicht platzierter Bauteile
);
Beschreibung
Die Funktion
ged_askrefname aktiviert einen Dialog zur Referenzauswahl, d.h. zur Auswahl von Bauteilen auf Layoutebene bzw. zur Auswahl von Pins auf Bauteilebene. Über den Bauteilauswahlmodus und das Flag zur Selektion nicht platzierter Bauteile kann die zur Auswahl angebotene Bauteil- bzw. Pinliste eingeschränkt werden. Der Funktionsrückgabewert ist Null bei erfolgreicher Referenzauswahl oder ungleich Null wenn keine Referenzauswahl durchgeführt wurde.
ged_asktreeidx - GED Netzauswahlmenü aktivieren (GED)
Synopsis
int ged_asktreeidx( // Status
& string; // Rückgabe Netzname (nur auf Layoutebene)
& index L_CNET; // Rückgabe Netzindex (nur auf Layoutebene)
int [0,5]; // Netzauswahlmodus:
// 0 = Alle Netze, inklusive Schaltfläche
// 1 = Sichtbare Netze
// 2 = Unsichtbare Netze
// 3 = Alle Netze
// 4 = Direktsprung zu Netzpick
// 5 = Alle Bäume, Namensmustereingabe zulässig
);
Beschreibung
Die Funktion
ged_asktreeidx aktiviert einen Dialog zur Netzauswahl. Über den Netzauswahlmodus kann die zur Auswahl angebotene Liste der Netze eingeschränkt werden. Der Funktionsrückgabewert ist Null bei erfolgreicher Netzauswahl, 1 wenn die Löschung eines Netzes (und damit keine Netzzuweisung) vorgenommen wurde, 2 wenn ein Netznamensmuster spezifiziert wurde, 3 bei Netznamensselektion per Netzklick oder ungleich Null bei ungültigen Parametern bzw. Abbruch des Auswahldialogs.
ged_attachtextpos - Textverschiebung an Layoutelement anfügen (GED)
Synopsis
int ged_attachtextpos( // Status
index L_FIGURE; // Layoutelement
string; // Text
int; // Textlage (LAY1|LAY9)
double; // Text-X-Koordinate (STD2)
double; // Text-Y-Koordinate (STD2)
double; // Textdrehwinkel (STD3)
double; // Textgröße (STD2; negativ für Textbasislinie)
int [0,1]; // Textspiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
ged_attachtextpos weist die Parameter für Lage, Position, Drehwinkel, Größe und Spiegelung an den angegebenen Text des spezifierten Layoutelements zu. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung, (-1) bei ungültigen Parametern oder (-2) wenn das Layoutelement keine Definition für den angegebenen Text enthält.
Siehe auch
Funktion
ged_storetext.
ged_delelem - GED Element löschen (GED)
Synopsis
int ged_delelem( // Status
& index L_FIGURE; // Element
);
Beschreibung
Die Funktion
ged_delelem löscht das übergebene Element aus der Elementliste. Der Rückgabewert ist Null bei erfolgter Löschung und (-1), wenn das übergebene Element ungültig ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktion ged_drawelem.
ged_drawelem - GED Elementanzeige aktualisieren (GED)
Synopsis
void ged_drawelem(
index L_FIGURE; // Element
int [0, 4]; // Zeichenmodus (STD19)
);
Beschreibung
Die Funktion
ged_drawelem aktualisiert die Anzeige des angegebenen Elements unter Verwendung des spezifizierten Zeichenmodus.
Siehe auch
Funktion ged_delelem.
ged_drcerrorhide - GED DRC-Fehlerakzeptanzmodus setzen/rücksetzen (GED)
Synopsis
int ged_drcerrorhide( // Status
string; // Fehler-Id-String
int; // Flag - Fehler ausblenden
);
Beschreibung
Die Funktion ged_drcerrorhide setzt den Anzeigemodus für den über die Fehler-Id spezifizierten DRC-Fehler. Der Funktionsrückgabewert ist Null, wenn der Anzeigemodus erfolgreich gesetzt wurde, oder ungleich Null im Fehlerfall.
ged_drcpath - GED Designregelprüfung für Leiterbahn-Testplatzierung (GED)
Synopsis
int ged_drcpath( // Status
int [0,99]; // Leiterbahnlage (LAY1)
double ]0.0,[; // Leiterbahnbreite (STD2)
index L_LEVEL; // Leiterbahn-Signalnetznummer/-Level
int [0,3]; // Leiterbahn-Connectivity-Prüfmodus:
// 0 = Uneingeschränkte Connectivity-Prüfung
// 1 = Abstandsprüfung gegen
// Leiterbahnsignalnetzbaum unterdrücken
// 2 = Abstandsverletzungen zu allen
// Verbindungsbäumen anzeigen
// 3 = Abstandsverletzungen zu allen
// Verbindungsbäumen neben Pickelement anzeigen
);
Beschreibung
Die Funktion
ged_drcpath führt eine Designregelprüfung für eine Leiterbahngenerierung mit den angegebenen Parametern durch, ohne die Leiterbahn tatsächlich zu erzeugen. Die Koordinaten für die Leiterbahngenerierung werden aus der mit
bae_storepoint aktuell erzeugten internen Polygonpunktliste entnommen. Der Funktionsrückgabewert ist Null, wenn die Leiterbahn ohne Designregelverletzung platziert werden kann, einen Wert grössr gleich (1) wenn die Leiterbahnplatzierung eine Designregelverletzung verursachen würde, oder (-1) bei fehlenden oder falschen Parametern bzw. bei unültiger Interpreterumgebung.
Siehe auch
Funktionen
bae_storepoint,
ged_storepoint.
ged_drcpoly - GED Designregelprüfung für Polygon-Testplatzierung (GED)
Synopsis
int ged_drcpoly( // Status
int; // Polygonlage (LAY1)
int [1,9]; // Polygontyp (LAY4)
string; // Polygonnetzname (für LAY4 types 4, 6 and 9)
index L_LEVEL; // Polygon-Signalnetznummer/-Level
int [0,3]; // Polygon-Connectivity-Prüfmodus:
// 0 = Uneingeschränkte Connectivity-Prüfung
// 1 = Abstandsprüfung gegen
// Polygonsignalnetzbaum unterdrücken
// 2 = Abstandsverletzungen zu allen
// Verbindungsbäumen anzeigen
// 3 = Abstandsverletzungen zu allen
// Verbindungsbäumen neben Pickelement anzeigen
);
Beschreibung
Die Funktion
ged_drcpoly führt eine Designregelprüfung für eine Flächengenerierung mit den angegebenen Parametern durch, ohne die Fläche tatsächlich zu erzeugen. Die Koordinaten für die Polygongenerierung werden aus der mit
bae_storepoint aktuell erzeugten internen Polygonpunktliste entnommen. Der Funktionsrückgabewert ist Null, wenn das Polygon ohne Designregelverletzung platziert werden kann, einen Wert grösser gleich (1) wenn die Polygonplatzierung eine Designregelverletzung verursachen würde, oder (-1) bei fehlenden oder falschen Parametern bzw. bei unültiger Interpreterumgebung.
Siehe auch
Funktionen
bae_storepoint,
ged_storepoly.
ged_drcvia - GED Designregelprüfung für Via-Testplatzierung (GED)
Synopsis
int ged_drcvia( // Status
string; // Via Padstack-Bibliothekselementname
double; // Via-X-Koordinate (STD2)
double; // Via-Y-Koordinate (STD2)
index L_LEVEL; // Via-Signalnetznummer/-Level
int [0,3]; // Via-Connectivity-Prüfmodus:
// 0 = Uneingeschränkte Connectivity-Prüfung
// 1 = Abstandsprüfung gegen
// Viasignalnetzbaum unterdrücken
// 2 = Abstandsverletzungen zu allen
// Verbindungsbäumen anzeigen
// 3 = Abstandsverletzungen zu allen
// Verbindungsbäumen neben Pickelement anzeigen
);
Beschreibung
Die Funktion
ged_drcvia führt eine Designregelprüfung für die Viaplatzierung mit den angegebenen Parametern durch, ohne das Via tatsächlich zu platzieren. Der Rückgabewert ist Null, wenn das Via ohne Designregelverletzung platziert werden kann, einen Wert grösser gleich (1) wenn die Viaplatzierung eine Designregelverletzung verursachen würde, (-1) bei fehlenden oder falschen Parametern bzw. bei unültiger Interpreterumgebung, oder (-2) wenn das angeforderte Padstacksymbol nicht verfügbar ist.
Siehe auch
Funktion
ged_storeuref.
ged_elemangchg - GED Elementwinkel ändern (GED)
Synopsis
int ged_elemangchg( // Status
& index L_FIGURE; // Element
double; // Neuer Winkel (STD3)
);
Beschreibung
Die Funktion
ged_elemangchg ändert den Drehwinkel des übergebenen Elements. Der Drehwinkel wird ausgehend vom Nullwinkel eingestellt, d.h. der vorhergehende Drehwinkel des Elements hat keinen Einfluss auf das Ergebnis. Die Winkelangabe wird als Bogenmaßwert interpretiert. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht drehbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_elemfixchg - GED Element fixiert-Flag ändern (GED)
Synopsis
int ged_elemfixchg( // Status
& index L_FIGURE; // Element
int [0,1]; // Neues fixiert Flag (STD11)
);
Beschreibung
Die Funktion
ged_elemfixchg ändert den Fixiert-Modus des übergebenen Elements. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht fixierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_elemgrpchg - GED Element Gruppenflag ändern (GED)
Synopsis
int ged_elemgrpchg( // Status
index L_FIGURE; // Element
int [0,6]; // Neue Gruppenzugehörigkeit (STD13|0x4)
);
Beschreibung
Die Funktion
ged_elemgrpchg ändert die Gruppenzugehörigkeit des übergebenen Elements. Durch Setzen des Bits mit der Wertigkeit 3 (0x4) im Gruppenstatusparameter kann ein Meldungszeilenreport über das selektierte/deselektierte Element und die Gesamtzahl der in der Gruppe befindlichen Elemente aktiviert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es sich nicht um ein gruppenselektierbares Element handelt.
Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
ged_elemlaychg - GED Elementlage ändern (GED)
Synopsis
int ged_elemlaychg( // Status
& index L_FIGURE; // Element
int; // Neue Lage (LAY1)
);
Beschreibung
Die Funktion
ged_elemlaychg ändert die Lagenzugehörigkeit des übergebenen Elements. Bei Bohrungen gibt die Lage die Bohrungsklasse an. Die Lage kann für Flächen, Leiterbahnen, Bohrungen, Texte und Pads auf Padstackebene geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn die Lage nicht änderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_elemmirrchg - GED Elementspiegelung ändern (GED)
Synopsis
int ged_elemmirrchg( // Status
& index L_FIGURE; // Element
int [0,18]; // Neuer Spiegelungsmodus (STD14|LAY3)
);
Beschreibung
Die Funktion
ged_elemmirrchg ändert den Spiegelungsmodus des übergebenen Elements. Der Spiegelungsmodus kann bei Flächen, Texten und Referenzen geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es keinen Spiegelungsmodus besitzt. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_elemposchg - GED Elementposition ändern (GED)
Synopsis
int ged_elemposchg( // Status
& index L_FIGURE; // Element
double; // X-Position (STD2)
double; // Y-Position (STD2)
);
Beschreibung
Die Funktion
ged_elemposchg ändert die Position des übergebenen Elements. Bei Flächen/Leiterbahnen wird die Fläche/Leiterbahn so verschoben, dass der erste Punkt der Fläche/Leiterbahn auf der angegebenen Position zu liegen kommt. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht positionierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_elemsizechg - GED Elementgröße ändern (GED)
Synopsis
int ged_elemsizechg( // Status
& index L_FIGURE; // Element
double; // Neue Größe (STD2)
);
Beschreibung
Die Funktion
ged_elemsizechg ändert die Größe des übergebenen Elements. Eine Größenänderung ist bei Texten, Bohrungen, Leiterbahnen und Flächen möglich. Bei Leiterbahnen wird mit der Größe die Leiterbahnbreite spezifiziert. Bei Flächen wird mit der Größe die Expansionsdistanz definiert. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht größenveränderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_getautocornins - GED Modus für automatische Eckpunktgenerierung abfragen (GED)
Synopsis
int ged_getautocornins( // Rückgabe Modus:
// 0 = Automatische Eckpunktgenerierung deaktiviert
// 1 = Automatische Eckpunktgenerierung für Leiterbahnen
// 2 = Automatische Eckpunktgenerierung für Polygone
// 3 = Automatische Eckpunktgenerierung für Leiterbahnen und Polygone
);
Beschreibung
Der Rückgabewert der Funktion
ged_getautocornins entspricht dem im
Layouteditor aktuell eingestellten Modus für das automatische Einfügen von Ecken bei der Generierung von Leiterbahnen und Polygonen. Der Eckpunktgenerierungsmodus wird im
Layouteditor über eine der Optionen
bzw.
der Funktion
selektiert.
ged_getdblpar - GED Doubleparameter abfragen (GED)
Synopsis
int ged_getdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = X-Koordinate letzte Gruppenplatzierung (STD2)
// 1 = Y-Koordinate letzte Gruppenplatzierung (STD2)
// 2 = Standardbauteilplatzierungswinkel (STD3)
// 3 = Flächenautomatik Isolationsabstand (STD2)
// 4 = Flächenautomatik Min. Strukturgröße (STD2)
// 5 = Flächenautomatik Wärmefallenbreite (STD2)
// 6 = Flächenautomatik Wärmefallenisolation (STD2)
// 7 = Flächenautomatik Schraffurlinienabstand (STD2)
// 8 = Flächenautomatik Schraffurlinienbreite (STD2)
// 9 = Flächenautomatik Schraffurlinienwinkel (STD3)
// 10 = Netzsichtbarkeitsdialog Netznamenskontollelementbreite
// 11 = Standardtextgröße (STD2)
// 12 = DRC-Abstandshaltung Textgröszlig;e (STD2)
// 13 = Autoplacement Bauteilexpansion (STD2)
// 14 = Autoplacement Bauteilpinfaktor [0, 1.0]
// 15 = Autoplacement Segmentpassung [0, 1.0]
// 16 = Autoplacement Bauteilkonturoffset (STD2)
// 17 = Standardtextplatzierungswinkel (STD3)
// 18 = Autorouter Umrandungsabstand (STD2)
// 19 = Autorouter Abstand Wärmefalle zu Bohrung (STD2)
// 20 = Autorouter Abstand Isolation zu Bohrung (STD2)
// 21 = Autorouter Maximale Versorgungslänge (STD2)
// 22 = Autorouter Angefordertes Spezial Routing-Raster (STD2)
// 23 = Autorouter Split Power Plane Abstandshaltung (STD2)
// 24 = Autorouter BGA-Rastertoleranz (STD2)
// 25 = Autorouter Maximale SMD-Fanoutlänge (STD2)
// 26 = Autorouter Pin-Via-Mindestabstand (STD2)
// 27 = CAM Gerber Standardlinienbreite (STD2)
// 28 = CAM Minimaler Abstand Wärmefalle zu Bohrung (STD2)
// 29 = CAM Minimaler Abstand Isolation zu Bohrung (STD2)
// 30 = CAM Toleranz Abstand Wärmefalle zu Bohrung (STD2)
// 31 = CAM Toleranz Abstand Isolation zu Bohrung (STD2)
// 32 = CAM Breite Versorgungslagenumrandung (STD2)
// 33 = CAM Versorgungslagen-Isolationsabstand (STD2)
// 34 = Busbahnbreite (STD2)
// 35 = Busbahnabstand (STD2)
& double; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
ged_getdblpar dient der Abfrage von mit
ged_setdblpar im
Layouteditor gesetzten Parametern vom Typ
double . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen ged_getintpar,
ged_getstrpar,
ged_setdblpar,
ged_setintpar,
ged_setstrpar.
ged_getdrcmarkmode - GED DRC Fehleranzeigemodus abfragen (GED)
Synopsis
int ged_getdrcmarkmode( // DRC-Fehleranzeigemodus
);
Beschreibung
Die Funktion
ged_getdrcmarkmode dient der Abfrage des im
Layouteditor aktuell aktiven DRC-Fehleranzeigemodus. Der Funktionsrückgabewert ist Null, wenn die selektierte Farbe für Fehler zur Fehlermarkeranzeige verwendet wird. Bei Verwendung der Highlightfarbe zur Fehlermarkeranzeige wird der Wert 1 zurückgegeben.
Siehe auch
Funktion
ged_setdrcmarkmode.
ged_getdrcstatus - GED DRC Vollständigkeitsstatus abfragen (GED)
Synopsis
int ged_getdrcstatus( // DRC-Status
);
Beschreibung
Mit der Funktion
ged_getdrcstatus kann der Vollständigkeitsstatus der Designregelprüfung im
Layouteditor abgefragt werden. Der Funktionsrückgabewert ist Null, wenn lediglich die in der aktuellen Programmsitzung durchgeführten Designänderungen geprüft wurden. Wenn hingegen für das aktuell geladene Element eine vollständige Designregelprüfung durchgeführt wurde, und somit sämtliche Designregelverletzungen angezeigt werden, dann wird ein Wert ungleich Null zurückgegeben.
ged_getgroupdata - GED Gruppenplatzierungsdaten abfragen (GED)
Synopsis
int ged_getgroupdata( // Status
& double; // Gruppenbezugspunkt X-Koordinate (STD2)
& double; // Gruppenbezugspunkt Y-Koordinate (STD2)
& double; // Gruppendrehwinkel (STD3)
& double; // Gruppenskalierungsfaktor
& int; // Gruppenspiegelungsmodus
& double; // Gruppenquadrant X-Koordinate (STD2)
& double; // Gruppenquadrant Y-Koordinate (STD2)
& int; // Gruppenquadrantmodus
& int; // Gruppenbereichsmodus
);
Beschreibung
Die Funktion
ged_getgroupdata ermöglicht die Abfrage der aktuellen Eingabedaten während interaktiver Gruppenplatzierungen im
Layouteditor. Der Funktionsrückgabewert ist ungleich Null wenn gerade keine Gruppenplatzierungsinteraktion aktiviert ist.
Siehe auch
Funktion ged_getinputdata.
ged_gethighlnet - GED Netz Highlightmodus/Farbe abfragen (GED)
Synopsis
int ged_gethighlnet( // Status
int [-1,[; // Netznummer oder -1 für Highlightfokusmodusabfrage
& int; // Highlightmodus
& int; // Highlightfarbe (Bit 1 bis 6, STD18) und Highlightmuster (Bit 7 bis 12)
);
Beschreibung
Mit der Funktion
ged_gethighlnet kann der Highlightmodus sowie die Highlightfarbe und das Highlightmuster für das Netz mit der angegebenen Netznummer abgefragt werden. Bei aktiviertem Netzhighlight wird im Parameter für den Highlightmodus ein Wert ungleich Null zurückgegegen, bei deaktiviertem Netzhighlight ergibt sich der Highlightmodusparameter zu Null. Im zweiten Parameter wird der Farbcode (Bit 1 bis 6) und das Muster (Bit 7 bis 12) für die Highlightanzeige zurückgegeben. Der Funktionsrückgabewert ergibt sich zu einem Wert ungleich Null, wenn die Abfrage erfolgreich war, andernfalls (Netz nicht gefunden, ungültige Parameter) wird der Wert Null zurückgegeben.
Siehe auch
Funktion ged_highlnet.
ged_getinputdata - GED Eingabedaten abfragen (GED)
Synopsis
int ged_getinputdata( // Status
& double; // Ursprüngliche X-Koordinate (STD2)
& double; // Ursprüngliche Y-Koordinate (STD2)
& double; // Ursprüngliche Breite (STD2)
& int; // Ursprüngliche Lage (LAY1)
& double; // Aktuelle X-Koordinate (STD2)
& double; // Aktuelle Y-Koordinate (STD2)
& double; // Aktuelle Breite (STD2)
& int; // Aktuelle Lage (LAY1)
& void; // Eingabemodus/Element (LAY11)
& void; // Leiterbahn Netzindex (optional)
& double; // Erstes Segment Start-X-Koordinate (STD2) */
& double; // Erstes Segment Start-Y-Koordinate (STD2) */
& double; // Erster Kreismittelpunkt X-Koordinate (STD2) */
& double; // Erster Kreismittelpunkt Y-Koordinate (STD2) */
& int; // Erster Kreismittelpunkt Typ (STD15) */
& double; // Letztes Segment Start-X-Koordinate (STD2) */
& double; // Letztes Segment Start-Y-Koordinate (STD2) */
& double; // Letzter Kreismittelpunkt X-Koordinate (STD2) */
& double; // Letzter Kreismittelpunkt Y-Koordinate (STD2) */
& int; // Letzter Kreismittelpunkt Typ (STD15) */
);
Beschreibung
Die Funktion
ged_getinputdata ermöglicht die Abfrage der aktuellen Eingabedaten während interaktiver Platzierungen im
Layouteditor. Die Interpretation der Platzierungsdaten ist entsprechend dem zurückgelieferten Funktionsparameter für den Eingabemodus bzw. das Platzierungselement vorzunehmen. Der Funktionsrückgabewert ist ungleich Null wenn gerade keine Platzierungsinteraktion aktiviert ist.
Siehe auch
Funktion ged_getgroupdata.
ged_getintpar - GED Integerparameter abfragen (GED)
Synopsis
int ged_getintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Pickpunktanzeigemodus:
// 0 = keine Pickpunktanzeige
// 1 = Pickpunktanzeige
// 2 = Pickpunktübersichtsanzeige
// 3 = Pickpunkteditieranzeige
// 1 = automatischer DRC beim Laden:
// 0 = kein automatischer DRC
// 1 = automatischer DRC nach Abfrage
// 2 = automatischer DRC ohne Abfrage
// 2 = Farbcode für Oberste Lage
// 3 = Infoanzeigeflag:
// 0 = keine automatische Infoanzeige
// 1 = automatische Infoanzeige
// 4 = Infoanzeigemodus:
// 0 = keine Infoanzeige
// 1 = komplette Infoanzeige
// 2 = nur Kupferinfoanzeige
// 5 = Winkeleditierrichtung
// 6 = Bauteilmakro-DRC:
// 0 = kompletter DRC
// 1 = Bauteilmakros als geprüft betrachten
// 7 = Rastereckenabfragemodus:
// 0 = keine Rastereckenabfrage
// 1 = komplette Rastereckanabfrage
// 2 = Rastereckenabfrage im aktuellen Fenster
// 3 = Rastereckenabfrage im dynamisch aktualisierten Fenster
// 8 = Minconaktualisierungsmodus
// 9 = DRC Polygontyp-Abschaltungsbits
// 10 = Warnmeldemodus:
// Bit 0: SCM-Änderungs-Warnungen unterdrückt
// Bit 1: Warnungen Gruppenselektion Füllflächenproblempolygone unterdrückt
// Bit 2: Variantenvergleichswarnungen unterdrückt
// Bit 3: Warnungen über Beendingung des Autoroutermodus unterdrückt
// 11 = Lagenbenutzung Scanmodus
// 12 = Flächenpolygoneditiermodus:
// 0 = keine geschlossenen Linienzüge
// 1 = immer geschlossene Linienzüge
// 2 = Abfrage zum Schließen von Linienzügen
// 13 = DRC-Abstandsanzeigemuster
// 14 = Leiterbahneditiermodus:
// 0 = Eingaberasterfang
// 1 = Pin-/Segmentfang bei erster Leiterbahnecke
// 15 = Flächenspiegelsicht:
// 0 = Standardflächenspiegelsicht
// 1 = Flächenspiegelsicht deaktiviert
// 16 = Bestätigungsabfragelimit für Netz löschen
// 17 = Plotvorschaumodus:
// 0 = keine Plotvorschau
// 1 = Plotterstiftbreite
// 18 = DRC-Distanzanzeigemodus:
// 0 = keine DRC-Distanzanzeige
// 1 = Leiterbahndistanzlinien
// 2 = Flächendistanzlinien
// 3 = Leiterbahndistanzmuster
// 4 = Flächendistanzmuster
// 19 = Textlagenspiegelungsmodus:
// 0 = keine Textlagenspiegelung
// 1 = Dokumentarlagenspiegelung
// 2 = Signal- und Dokumentarlagenspiegelung
// 20 = Standardbauteilspiegelungsmodus
// 21 = Autosave Intervall
// 22 = Bauteilluftlinienanzeigemodus:
// 0 = Keine Luftlinienanzeige
// 1 = Statische Luftlinienanzeige
// 2 = Dynamische Luftlinienanzeige
// 23 = Winkelfreigabeumschaltmodus:
// 0 = Umschaltung Pickseite standard
// 1 = Umschaltung Raster
// 2 = Umschaltung kürzere Seite
// 3 = Umschaltung Editierrichtung
// 24 = Copper fill heat trap mode
// 3 = Via-Wärmefallen
// |4 = Flag - keine benachbarten Pins
// |8 = Flag - Wärmefallenleiterbahnen
// |16 = Flag - nur unverbundene Lagen
// 25 = Flächenautomatik Leiterbahnmodus
// 0 = Runde Ecken
// 1 = Oktagonale Exken
// 2 = Oktagonale Kreise
// 3 = Oktagonale Ecken & Kreise
// 26 = Flächenautomatik Inselerkennung:
// 0 = Inseln beibehalten
// 1 = Inseln löschen
// 2 = Inseln selektieren
// 27 = Flächenautomatik Innenflächenmodus:
// 0 = Innenfüllflächen füllen
// 1 = Innenfüllflächen ausparen
// |2 = Ausparflächen mit Abstand
// 28 = Flächenautomatik Wärmefallenverbingsanzahl
// 29 = Flächenautomatik Spitzwinkelmodus:
// 0 = Spitze Winkel flach
// 1 = Spitze Winkel rund
// 30 = Flächenautomatik Schraffurmodus:
// 0 = Linienschraffur
// 1 = Gitterschraffur
// |2 = Editierbare Pfade erzeugen
// 31 = Netzsichtbarkeitsdialogmodus:
// 0 = Einzelspalte für Netznamenslistenanzeige
// 1 = Mehrspaltige Netznamenslistenanzeige
// 32 = Gruppenbewegtdarstellung:
// 0 = Bewegtbild aus
// 1 = Nur Baugruppenlage
// 2 = Bewegtbild ein
// 3 = Bewegtbild alles
// 33 = Leiterbahngruppenselektionsmodus:
// 0 = Leiterbahn- & Viaselektion
// 1 = Leiterbahnselektion
// 2 = Viaselektion
// 34 = Vorzugslagenauswahl (LAY1)
// 35 = Zwischenablagetext-Platzierungsanforderung
// 36 = Editierrichtung
// 37 = Mincon-Flächenmodus (Bitmuster):
// 0 = Kein Flächen-Mincon
// |1 = Kupferflächen-Mincon
// |2 = Potentialflächen-Mincon
// 38 = Gruppenwinkelfreigabemodus:
// 0 = Gruppenwinkel einhalten
// 1 = Gruppenwinkel automatisch freigeben
// 39 = Autoplacement Optimierungszahl
// 40 = Autoplacement Bauteiltausch
// 41 = Autoplacement Pin-/Gattertausch
// 42 = Autoplacement Spiegelungsmodus:
// 0 = Kein SMD-Spiegeln
// 1 = SMD-Spiegeln
// 2 = 2 Pin-SMD-Spiegeln
// 3 = Immer SMD-Spiegeln
// 43 = Autoplacement Rotationsmodus:
// 0 = 0-90 Grad Drehung
// 1 = 0-270 Grad Drehung
// 2 = 0 Grad Drehung
// 3 = 90 Grad Drehung
// 4 = 0 XOR 90 Grad Drehung
// 44 = Autoplacement Retrydurchgänge
// 45 = Autoplacement SMD-Rotationsmodus:
// 0 = 0-90 Grad Drehung
// 1 = 0-270 Grad Drehung
// 2 = 0 Grad Drehung
// 3 = 90 Grad Drehung
// 4 = 0 XOR 90 Grad Drehung
// 46 = Autoplacement Bauteilkonturlage (LAY1)
// 47 = Gruppenbearbeitung Elementfang:
// 0 = Alle Elemente selektieren
// 1 = Nur sichtbare Elemente selektieren
// 48 = Standardtextspiegelung und Standardtextmodus (STD14|LAY14)
// 49 = Autorouter Anzahl Optimierungen
// 50 = Autorouter Optimierer Richtungsmodus
// 51 = Autorouter Max. Via-Zahl
// 52 = Autorouter Via-Kosten
// 53 = Autorouter Pinkanal-Kosten
// 54 = Autorouter Anti-Vorzugs-Richtungs-Kosten
// 55 = Autorouter Richtungsänderungs-Kosten
// 56 = Autorouter Packungs-Kosten
// 57 = Autorouter Dynamische-Dichtestatistik-Basis
// 58 = Autorouter Max. Bäume pro Rip-Up
// 59 = Autorouter Max. Rip-Up Tiefe
// 60 = Autorouter Max. Rip-Up Wiederholungen
// 61 = Autorouter Via-Raster Index
// 62 = Autorouter Bus-Abknickkosten
// 63 = Autorouter Abstand-1-Kosten
// 64 = Autorouter Abstand-2-Kosten
// 65 = Autorouter Rip-Up-Kosten
// 66 = Autorouter Router Cleanup
// 67 = Autorouter Optimierer Cleanup
// 68 = Autorouter Versorgungsanschluss Vektorunroutes
// 69 = Autorouter Zwischenspeichern
// 70 = Autorouter Verbindungseckenausgabemodus
// 71 = Autorouter Unroutesausgabesortiermodus
// 72 = Autorouter Ecken Spitzwinkel Modus
// 73 = Autorouter Richtungsmodus existierende Bahnen
// 74 = Autorouter Standardverbindungs-Lagen-Kosten
// 75 = Autorouter Busverbindungs-Lagen-Kosten
// 76 = Autorouter Offset Wellenausbreitung Limit
// 77 = Autorouter Via Raster Modus
// 78 = Autorouter Eingabedaten Fehlerprüfmodus
// 79 = Autorouter Pin Anschluss Modus
// 80 = Autorouter Halbraster-Modus
// 81 = Autorouter Off-Grid-Routing-Kosten
// 82 = Autorouter Buserkennung/Busrouting Modus
// 83 = Autorouter SMD Via-Vorlegen
// 84 = Autorouter Router Pin/Gate-Swap
// 85 = Autorouter Gridless Routing Modus
// 86 = Autorouter Inkrementaler Ausgabemodus
// 87 = Autorouter Vorzugsraster
// 88 = Autorouter Anti-Vorzugsraster-Kosten
// 89 = Autorouter Anti-Netzbereichs-Kosten
// 90 = Autorouter Letzter Optimiererparameter Wechselmodus
// 91 = Autorouter Auto-Rip-Up Parameter Modus
// 92 = Autorouter Vorzugsrichtungsmodus
// 93 = Autorouter Optimierer Reihenfolge Modus
// 94 = Autorouter Via Rip-Up Flag
// 95 = Autorouter Routingfenster Randausdehnung
// 96 = Autorouter BGA Fan out
// 97 = Autorouter Pinentry Korrektur
// 98 = Autorouter Alternativer Viaversatz Modus
// 99 = Autorouter Voll-Viaauswertemodus
// 100 = Autorouter Micro Via Modus
// 101 = Autorouter Richtungsvorgabe Maximalabweichung
// 102 = Autorouter Routingfenster Flag
// 103 = Autorouter Padentry Subgrid
// 104 = Autorouter Versorgungslagen Vias
// 105 = Autorouter Via Prüfmodus
// 106 = Autorouter Verbindungsanzahl große Netze
// 107 = Autorouter Autorouting aktiv Flag
// 108 = CAM Wärmefallenbasiswinkel
// 109 = Flag - Einzeleckenbearbeitung
// 110 = Flag - Größenänderung mit Eckenabrundung
// 111 = Flag - Anzeige ausgeblendeter DRC-Fehler
// 112 = Flag - DRC-Verletzung Elementscan
// 113 = Bauteilplatzierung - Bahnendenbewegungsmodus:
// 0 = Keine Bahnendenbewegung
// 1 = Bahnenden mitbewegen
// 2 = Bahnsegmente mitbewegen
// 114 = Flag - Polygonbearbeitung Autocomplete-Modus
// 115 = Platinenumrandung alternative Dokumentarlage (LAY1)
// 116 = Leiterbahnzusammenfassungsmodus:
// 0 = Bahnen nicht zusammenfassen
// 1 = Bahnen zusammenfassen
// 2 = Bahnzusammenfassungsabfrage
// 117 = Anzeigemodus Leiterbahnen (LAY15)
// 118 = Anzeigemodus Texte (LAY15)
// 119 = Anzeigemodus Kupferpolygone (LAY15)
// 120 = Anzeigemodus Sperrflächen (LAY15)
// 121 = Anzeigemodus Umrandungspolygon (LAY15)
// 122 = Anzeigemodus Potentialflächen (LAY15)
// 123 = Anzeigemodus Dokumentarlinien (LAY15)
// 124 = Anzeigemodus Dokumentarflächen (LAY15)
// 125 = Anzeigemodus Füllflächen mit Ausschnittspolygonen (LAY15)
// 126 = Anzeigemodus Schraffurflächen (LAY15)
// 127 = Anzeigemodus Geteilte Potentialflächen (LAY15)
// 128 = Flag - Farbtabelle gesichert
// 129 = Airlinefarbmodus:
// 0 = Airlinefarbe benutzen
// 1 = Lagenfarbe benutzen
// 130 = Airlineclippingmodus:
// 0 = Kein Airlineclipping
// 1 = Airlines ohne Zielpunkt im Arbeitsbereich ausblenden
// 131 = Bahnkollisionsmodus:
// -1 = Operationsabfrage
// 0 = Kollisionen ignorieren
// 1 = Kollidierende Bahnen löschen
// 2 = Kollidierende Segmente löschen
// 3 = Kollidierende Segmente abschneiden
// 132 = Abfragemodus für Layoutbahnverbindungen:
// 0 = Layoutbahnen nie verbinden
// 1 = Layoutbahnen immer verbinden
// 2 = Verbindungsmodus abfragen
// 133 = Abfragemodus für Bauteilbahnverbindungen:
// 0 = Bauteilbahnen nie verbinden
// 1 = Bauteilbahnen immer verbinden
// 2 = Verbindungsmodus abfragen
// 135 = Polygonanzeigemodus beim Bewegen von Elementen:
// 0 = Umrandungsanzeige
// 1 = Füllanzeige
// 136 = Airlineanzeigemodus beim Bewegen von Gruppen:
// 0 = Airlineanzeige aus
// 1 = Airlines für Gruppenbauteilpins anzeigen
// 137 = Abstandsprüfmodus für Bahnkollisionen:
// 0 = DRC-Abstand für Kollisionscheck benutzen
// 1 = Nur Kreuzungen als Kollisionen interpretieren
// 138 = Pickmodus für Leiterbahnbündel:
// 0 = Kontinuierlicher Segmentpick
// 1 = Pick erstes und letztes Bündelsegment
// 139 = Einfüge-Pickmodus für Leiterbahnsegmente:
// 0 = 3-Klick Selektion
// 1 = 2-Klick Selektion
// 140 = Bauteil-DRC:
// 0 = kein Bauteil-Online-DRC
// 1 = Bauteil-Online-DRC
// 141 = Flag - Optimierung Bohrwerkzeugtabelle
// 142 = Busbahnanzahl
// 143 = Busbahnanzahl editieren
// 144 = Generierungsmodus Busbahnen:
// 0 = Bahnbündel generieren
// 1 = Separate Bahnen generieren
// 145 = Busbahn-Eckenmodus:
// 0 = Gewinkelte Ecken generieren
// 1 = Abgerundete Ecken gnerieren
// 146 = Siebdrucklage (LAY1)
// 147 = Anzeigmodus Makroumrandungen:
// 0 = Keine Makroumrandungsanzeige
// 1 = Makroumrandungen für bewegte Referenzen anzeigen
// 2 = Makroumrandungen anzeigen
*/
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
ged_getintpar dient der Abfrage von mit
ged_setintpar im
Layouteditor gesetzten Integerparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen ged_getdblpar,
ged_setintpar,
ged_getstrpar,
ged_setdblpar.
ged_setstrpar.
ged_getlaydefmode - GED Defaultlagenmodus abfragen (GED)
Synopsis
int ged_getlaydefmode( // Defaultlagenmodus:
// 0 = automatische Lagendefaultzuweisung deaktivieren
// 1 = benutzte Eingabelage ist Lagendefault
// 2 = zuletzt benutzte Lage ist Lagendefault
);
Beschreibung
Die Funktion
ged_getlaydefmode gibt den aktuell im
Layouteditor eingestellten Defaultlagenmodus zurück.
Siehe auch
Funktionen
ged_getlayerdefault,
ged_setlaydefmode,
ged_setlayerdefault.
ged_getlayerdefault - GED Defaultlage abfragen (GED)
Synopsis
int ged_getlayerdefault( // Lage (LAY1)
);
Beschreibung
Die Funktion
ged_getlayerdefault gibt die aktuell im
Layouteditor eingestellte Defaultlage zurück.
Siehe auch
Funktionen
ged_getlaydefmode,
ged_setlaydefmode,
ged_setlayerdefault.
ged_getmincon - GED Mincon-Funktion abfragen (GED)
Synopsis
int ged_getmincon( // Funktionstyp (LAY10)
);
Beschreibung
Der Rückgabewert der Funktion
ged_getmincon entspricht dem im
Layouteditor aktuell eingestellten Wert des
-Modus für die Airlineanzeige
(LAY10).
ged_getpathwidth - GED Bahnenstandardbreite abfragen (GED)
Synopsis
void ged_getpathwidth(
& double; // Schmal Standardbreite (STD2)
& double; // Breit Standardbreite (STD2)
);
Beschreibung
Die Funktion
ged_getpathwidth gibt in den beiden Parametern die Werte der aktuell im
Layouteditor eingestellten Standardbreiten für schmale und breite Leiterbahnen zurück.
ged_getpickmode - GED Elementpickmodus abfragen (GED)
Synopsis
int ged_getpickmode( // Elementpickmodus:
// 0 = Pick über Vorzugslage
// 1 = Pick mit Elementauswahl
// 2 = Pick exklusiv über Vorzugslage
);
Beschreibung
Die Funktion
ged_getpickmode dient der Abfrage des aktuell im
Layouteditor ausgewählten Elementpickmodus.
Siehe auch
Function ged_setpickmode.
ged_getpickpreflay - GED Vorzugslage abfragen (GED)
Synopsis
int ged_getpickpreflay( // Vorzugslage (LAY1)
);
Beschreibung
Der Rückgabewert der Funktion
ged_getpickpreflay entspricht der Vorzugslage
(LAY1) für Elementwahl im
Layouteditor.
ged_getpowlayerrcnt - GED Versorgungslagenfehleranzahl abfragen (GED)
Synopsis
int ged_getpowlayerrcnt( // Versorgungslagenfehleranzahl
);
Beschreibung
Die Funktion
ged_getpowlayerrcnt gibt die Anzahl der im
Layouteditor erkannten Versorgungslagenfehler zurück.
ged_getsegmovmode - GED Leiterbahnsegmentbewegungsmodus abfragen (GED)
Synopsis
int ged_getsegmovmode( // Leiterbahnsegmentbewegungsmodus:
// 0 = Mit Nachbarn bewegen
// 1 = Ohne Nachbarn bewegen
// 2 = Nachbarn anpassen
// 3 = Nachbarn ohne Durchkontaktierungen anpassen
// 8 = Nur unmittelbare Nachbarn anpassen
// |4 = Offene Leiterbahnenden folgen Segmentbewegung
);
Beschreibung
Die Funktion
ged_getsegmovmode dient der Abrage des aktuell im
Layouteditor eingestellten Leiterbahnsegmentbewegungsmodus.
Siehe auch
Funktion
ged_setsegmovmode.
ged_getstrpar - GED Stringparameter abfragen (GED)
Synopsis
int ged_getstrpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Name zuletzt platziertes benanntes Element
// 1 = Name zuletzt platziertes Bibliothekselement
// 2 = Zuletzt platzierter Textstring
// 3 = Standardbibliotheksname
// 4 = Nächster freier Name
// 5 = Bohrbauteil-/Bohrpinnamensbasis
// 6 = Bohrbauteilmakronamensmuster
// 7 = Bohrpinmakronamensmuster
// 8 = Eingabeaufforderung Ersatzstring
// 9 = Bibliothek zuletzt platziertes Makro
// 10 = Autosave path name
& string; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
ged_getstrpar dient der Abfrage von im
Layouteditor gesetzten Stringparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen ged_getdblpar,
ged_getintpar,
ged_setdblpar,
ged_setintpar,
ged_setstrpar.
ged_getviaoptmode - GED Leiterbahnviaoptimierungsmodus abfragen (GED)
Synopsis
int ged_getviaoptmode( // Leiterbahnviaoptimierungsmodus:
// 0 = Viaoptimierung
// 1 = Vias beibehalten
);
Beschreibung
Die Funktion
ged_getviaoptmode dient der Abrage des aktuell im
Layouteditor eingestellten Leiterbahnviaoptimierungsmodus.
Siehe auch
Funktion
ged_setviaoptmode.
ged_getwidedraw - GED Breitendarstellung abfragen (GED)
Synopsis
double ged_getwidedraw( // Breite (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
ged_getwidedraw entspricht der Breite, ab der im
Layouteditor Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden.
ged_groupselect - GED Gruppenselektion (GED)
Synopsis
int ged_groupselect( // Anzahl Änderungen oder (-1) bei Fehler
int [0,9]; // Element Selektionstyp:
// 0 = Selektion nach Elementtyp
// 1 = Selektion nach Lage
// 2 = Selektion nach Fixiertflag
// 3 = Selektion nach Sichtbarkeit
// 4 = Selektion nach Lage/negiert
// 5 = Selektion nach Netznummer
// 6 = Selektion nach Netznummer/negiert
// 7 = Selektion Elemente mit Verbindung zu Netz
// 8 = Selektion Elemente ohne Verbindung zu Netz
// 9 = Selektion nach Elementpolygontyp
// 10 = Selektion nach Elementverankerungsmodus
int; // Element Selektionswert entspr. Selektionstyp:
// 0 - Elementtyp (0|LAY6)
// 1,4 - Elementlage (LAY1)
// 2 - Element-Fixiertflag (STD11)
// 3 - Elementsichtbarkeit (0|1)
// 5,6 - Elementnetznummer
// 7,8 - Netznummer
// 9 - Elementpolygontyp (LAY4)
// 10 - Elementverankerungsmodus (STD11 | STD12)
int [0,2]; // Neue Gruppenzugehörigkeit (STD13)
);
Beschreibung
Die Funktion
ged_groupselect ändert die Gruppenzugehörigkeit aller Element des spezifizierten Typs bzw. mit der spezifizierten Eigenschaft. Der Rückgabewert entspricht der Anzahl der durchgeführtem Änderungen oder dem Wert (-1) bei fehlerhaften bzw. inkompatiblen Parameterangaben. Der Selektionswert Null bei der Selektion nach dem Elementtyp kann dazu benutzt werden, Elemente beliebigen Typs auszuwählen.
Warnung
Interne Layoutelementtypen wie z.B. die Standardvia-Definition(en) sind von der Gruppen(de)selektion mit
ged_groupselect ausgenommen, um ein versehentliches Löschen bzw. Ändern derartiger Elemente durch die anschließende Anwendung anderer Gruppenfunktionen zu verhindern.
ged_highlnet - GED Netz Highlightmodus/Farbe setzen (GED)
Synopsis
int ged_highlnet( // Status
int [-1,[; // Netznummer
int [0,[; // Highlight aus/ein Flag || (Farb- und Musterdefininition << 1)
);
Beschreibung
Mit der Funktion
ged_highlnet kann der Highlightmodus und die Highlightfarbe für das Netz mit der angegebenen Netznummer gesetzt werden. Zur Aktivierung des Netzhighlights ist das Bit 1 des Highlightparameters auf 1 zu setzen, die Deaktivierung erfolgt entsprechend durch Spezifikation des Werts Null im Bit 1 des Highlightparameters. Über die restlichen Bits des Highlightparameters kann der gewünschte Farbcode (Bits 2 bis 6) bzw. ein Muster (Bits 7 bis 12) für die Highlightanzeige spezifiziert werden. Der Funktionsrückgabewert ergibt sich zu einem Wert ungleich Null bei erfolgreicher Änderung des netzspezifischen Highlightmodus, andernfalls (Netz nicht gefunden, ungültige Parameter) wird der Wert Null zurückgegeben.
Siehe auch
Funktion ged_gethighlnet.
ged_layergrpchg - GED Gruppenselektion nach Lage (GED)
Synopsis
int ged_layergrpchg( // Anzahl Elemente
int [0,[; // Lagennummer (LAY1)
int [0,2]; // Neue Gruppenzugehörigkeit (STD13)
);
Beschreibung
Die Funktion
ged_layergrpchg ändert die Gruppenzugehörigkeit aller Elemente, die auf der angegebenen Lage platziert sind. Der Rückgabewert ist die Anzahl der (de)selektierten Elemente oder (-1) bei Fehler.
ged_partaltmacro - GED Bauteilnamegehäusetyp ändern (GED)
Synopsis
int ged_partaltmacro( // Status
string; // Bauteilname
string; // Neuer Bauteil Bibiotheksteilname
);
Beschreibung
Die Funktion
ged_partaltmacro ändert den Gehäusetyp des angegebenen Bauteiles. Ein Rückgabewert von Null zeigt eine erfolgreiche Änderung an. Bei ungültigen Eingabedaten wird (-1) zurückgegeben, (-2) wenn der neue Gehäusetyp nicht alle für dieses Bauteil in der Netzliste verwendeten Pins enthält (Gehäuseänderung wird trotzdem durchgeführt), (-3) wenn das Bauteil nicht in der Netzliste vorhanden ist, (-4) wenn der neue Gehäusetyp für dieses Bauteil nicht erlaubt ist, (-5) wenn der neue Gehäusetyp nicht ladbar ist, (-6) wenn die Bauteildaten nicht in die Jobdatenbank kopiert werden konnten und (-7) wenn versucht wurde, in einem Programmlauf einen Bauteilgehäusetyp mehrfach umzuändern (z.B.
a in
b und anschließend
b in
c ). Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion sollte nicht innerhalb von
L_CPART-Index-Schleifen aufgerufen werden, da die vor dem Aufruf der Funktion belegten
L_CPART-Indexvariablen anschließend ungültig sind.
ged_partnamechg - GED Bauteilname ändern (GED)
Synopsis
int ged_partnamechg( // Status
string; // Alter Name
string; // Neuer Name
);
Beschreibung
Die Funktion
ged_partnamechg ändert den Namen des angegebenen Bauteiles. Ein Rückgabewert von Null zeigt eine erfolgreiche Änderung an. Bei ungültigen Eingabedaten wird (-1) zurückgegeben, (-2) wenn das Bauteil nicht platziert ist,
(-4) wenn der neue Name schon definiert ist und
(-5) wenn versucht wurde, in einem Programmlauf ein Bauteil mehrfach umzubenennen (z.B.
a in
b und anschließend
b in
c ). Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Auf Bauteilebene kann
ged_partnamechg zur Umbenennung von Pins verwendet werden.
Warnung
Diese Funktion verändert möglicherweise die Netzliste und erfordert ggf. einen anschließenden
-Lauf. Die Funktion sollte auch nicht innerhalb von
L_CPART-Index-Schleifen aufgerufen werden, da die vor dem Aufruf der Funktion belegten
L_CPART-Indexvariablen anschließend ungültig sind.
ged_pickanyelem - Beliebiges GED Element selektieren (GED)
Synopsis
int ged_pickanyelem( // Status
& index L_FIGURE; // Rückgabe selektiertes Element
int; // Pickelementtypmenge ((LAY6 außer 7)<<1 verodert)
);
Beschreibung
Die Funktion
ged_pickanyelem aktiviert eine Mausinteraktion zur Selektion eines Elements aus der angegebenen Pickelementtypmenge. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Element gefunden wurde.
Siehe auch
Funktion ged_pickelem.
ged_pickelem - GED Element selektieren (GED)
Synopsis
int ged_pickelem( // Status
& index L_FIGURE; // Rückgabe selektiertes Element
int [1,10]; // Elementtyp (LAY6 außer 7)
);
Beschreibung
Mit der Funktion
ged_pickelem kann vom Benutzer mit der Maus ein Element des gewünschten übergebenen Typs selektiert werden. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Element des gewünschten Typs gefunden wurde.
Siehe auch
Funktionen
ged_pickanyelem,
ged_setpickelem.
ged_setautocornrins - GED Modus für automatische Eckpunktgenerierung setzen (GED)
Synopsis
int ged_setautocornins( // Status
int [0,3]; // Eckpunkteingabemodus:
// 0 = Automatische Eckpunktgenerierung deaktiviert
// 1 = Automatische Eckpunktgenerierung für Leiterbahnen
// 2 = Automatische Eckpunktgenerierung für Polygone
// 3 = Automatische Eckpunktgenerierung für Leiterbahnen und Polygone
);
Beschreibung
Die Funktion
ged_setautocornins setzt den Eingabemodus für das wahlweise automatische Einfügen von Ecken bei der Generierung von Leiterbahnen und Polygonen. Der Eckpunkteingabemodus wird im
Layouteditor üblicherweise über eine der Optionen
bzw.
der Funktion
selektiert. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Oktagonalmodus spezifiziert wurde.
ged_setdblpar - GED Doubleparameter setzen (GED)
Synopsis
int ged_setdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = X-Koordinate letzte Gruppenplatzierung (STD2)
// 1 = Y-Koordinate letzte Gruppenplatzierung (STD2)
// 2 = Standardbauteilplatzierungswinkel
// 3 = Flächenautomatik Isolationsabstand (STD2)
// 4 = Flächenautomatik Min. Strukturgröße (STD2)
// 5 = Flächenautomatik Wärmefallenbreite (STD2)
// 6 = Flächenautomatik Wärmefallenisolation (STD2)
// 7 = Flächenautomatik Schraffurlinienabstand (STD2)
// 8 = Flächenautomatik Schraffurlinienbreite (STD2)
// 9 = Flächenautomatik Schraffurlinienwinkel (STD3)
// 10 = Netzsichtbarkeitsdialog Netznamenskontollelementbreite
// 11 = Standardtextgröße (STD2)
// 12 = DRC-Abstandshaltung Textgröszlig;e (STD2)
// 13 = Autoplacement Bauteilexpansion (STD2)
// 14 = Autoplacement Bauteilpinfaktor [0, 1.0]
// 15 = Autoplacement Segmentpassung [0, 1.0]
// 16 = Autoplacement Bauteilkonturoffset (STD2)
// 17 = Standardtextplatzierungswinkel (STD3)
// 18 = Autorouter Umrandungsabstand (STD2)
// 19 = Autorouter Abstand Wärmefalle zu Bohrung (STD2)
// 20 = Autorouter Abstand Isolation zu Bohrung (STD2)
// 21 = Autorouter Maximale Versorgungslänge (STD2)
// 22 = Autorouter Angefordertes Spezial Routing-Raster (STD2)
// 23 = Autorouter Split Power Plane Abstandshaltung (STD2)
// 24 = Autorouter BGA-Rastertoleranz (STD2)
// 25 = Autorouter Maximale SMD-Fanoutlänge (STD2)
// 26 = Autorouter Pin-Via-Mindestabstand (STD2)
// 27 = CAM Gerber Standardlinienbreite (STD2)
// 28 = CAM Minimaler Abstand Wärmefalle zu Bohrung (STD2)
// 29 = CAM Minimaler Abstand Isolation zu Bohrung (STD2)
// 30 = CAM Toleranz Abstand Wärmefalle zu Bohrung (STD2)
// 31 = CAM Toleranz Abstand Isolation zu Bohrung (STD2)
// 32 = CAM Breite Versorgungslagenumrandung (STD2)
// 33 = CAM Versorgungslagen-Isolationsabstand (STD2)
// 34 = Busbahnbreite (STD2)
// 35 = Busbahnabstand (STD2)
double; // Parameterwert
);
Beschreibung
Die Funktion
ged_setdblpar dient dazu, Systemparameter vom Typ
double im
Layouteditor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
ged_setdblpar gesetzten Systemparametern können mit der Funktion
ged_getdblpar abgefragt werden.
Siehe auch
Funktionen ged_getdblpar,
ged_getintpar,
ged_getstrpar,
ged_setintpar,
ged_setstrpar.
ged_setdrcmarkmode - GED DRC Fehleranzeigemodus setzen (GED)
Synopsis
int ged_setdrcmarkmode( // Status
int [0,1]; // DRC-Fehleranzeigemodus:
// 0 = Fehlermarkeranzeige mit Fehlerfarbe
// 1 = Fehlermarkeranzeige mit Highlightfarbe
);
Beschreibung
Die Funktion
ged_setdrcmarkmode wsetzt den Anzeigmodus für DRC-Fehlermarker. Der Funktionsrückgabewert ist ungleich Null, wenn ein ungültiger Anzeigemodus spezifiziert wurde.
Siehe auch
Funktion
ged_getdrcmarkmode.
ged_setintpar - GED Integerparameter setzen (GED)
Synopsis
int ged_setintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Pickpunktanzeigemodus:
// 0 = keine Pickpunktanzeige
// 1 = Pickpunktanzeige
// 2 = Pickpunktübersichtsanzeige
// 3 = Pickpunkteditieranzeige
// 1 = automatischer DRC beim Laden:
// 0 = kein automatischer DRC
// 1 = automatischer DRC nach Abfrage
// 2 = automatischer DRC ohne Abfrage
// [ 2 = bae_setcolor benutzen ]
// 3 = Infoanzeigeflag:
// 0 = keine automatische Infoanzeige
// 1 = automatische Infoanzeige
// 4 = Infoanzeigemodus:
// 0 = keine Infoanzeige
// 1 = komplette Infoanzeige
// 2 = nur Kupferinfoanzeige
// 5 = Winkeleditierrichtung
// 6 = Bauteilmakro-DRC:
// 0 = kompletter DRC
// 1 = Bauteilmakros als geprüft betrachten
// 7 = Rastereckenabfragemodus:
// 0 = keine Rastereckenabfrage
// 1 = komplette Rastereckanabfrage
// 2 = Rastereckenabfrage im aktuellen Fenster
// 3 = Rastereckenabfrage im dynamisch aktualisierten Fenster
// 8 = Minconaktualisierungsmodus
// 9 = DRC Polygontyp-Abschaltungsbits
// 10 = Warnmeldemodus:
// Bit 0: SCM-Änderungs-Warnungen unterdrücken
// Bit 1: Warnungen Gruppenselektion Füllflächenproblempolygone unterdrücken
// Bit 2: Variantenvergleichswarnungen unterdrücken
// Bit 3: Warnungen über Beendingung des Autoroutermodus unterdrückt
// 11 = Lagenbenutzung Scanmodus
// 12 = Flächenpolygoneditiermodus:
// 0 = keine geschlossenen Linienzüge
// 1 = immer geschlossene Linienzüge
// 2 = Abfrage zum Schließen von Linienzügen
// 13 = DRC-Abstandsanzeigemuster
// 14 = Leiterbahneditiermodus:
// 0 = Eingaberasterfang
// 1 = Pin-/Segmentfang bei erster Leiterbahnecke
// [ 15 = Systemparameter - kein Schreibzugriff ]
// 16 = Bestätigungsabfragelimit für Netz löschen
// 17 = Plotvorschaumodus:
// 0 = keine Plotvorschau
// 1 = Plotterstiftbreite
// 18 = DRC-Distanzanzeigemodus:
// 0 = keine DRC-Distanzanzeige
// 1 = Leiterbahndistanzlinien
// 2 = Flächendistanzlinien
// 3 = Leiterbahndistanzmuster
// 4 = Flächendistanzmuster
// 19 = Textlagenspiegelungsmodus:
// 0 = keine Textlagenspiegelung
// 1 = Dokumentarlagenspiegelung
// 2 = Signal- und Dokumentarlagenspiegelung
// 20 = Standardbauteilspiegelungsmodus
// 21 = Autosave Intervall
// 22 = Bauteilluftlinienanzeigemodus:
// 0 = Keine Luftlinienanzeige
// 1 = Statische Luftlinienanzeige
// 2 = Dynamische Luftlinienanzeige
// 23 = Winkelfreigabeumschaltmodus:
// 0 = Umschaltung Pickseite standard
// 1 = Umschaltung Raster
// 2 = Umschaltung kürzere Seite
// 3 = Umschaltung Editierrichtung
// 24 = Copper fill heat trap mode
// 0 = Direktanschluss
// 1 = Pin- & Via-Wärmefallen
// 2 = Pin-Wärmefallen
// 3 = Via-Wärmefallen
// |4 = Flag - keine benachbarten Pins
// |8 = Flag - Wärmefallenleiterbahnen
// |16 = Flag - nur unverbundene Lagen
// 25 = Flächenautomatik Leiterbahnmodus
// 0 = Runde Ecken
// 1 = Oktagonale Exken
// 2 = Oktagonale Kreise
// 3 = Oktagonale Ecken & Kreise
// 26 = Flächenautomatik Inselerkennung:
// 0 = Inseln beibehalten
// 1 = Inseln löschen
// 2 = Inseln selektieren
// 27 = Flächenautomatik Innenflächenmodus:
// 0 = Innenfüllflächen füllen
// 1 = Innenfüllflächen ausparen
// |2 = Ausparflächen mit Abstand
// 28 = Flächenautomatik Wärmefallenverbingsanzahl
// 29 = Flächenautomatik Spitzwinkelmodus:
// 0 = Spitze Winkel flach
// 1 = Spitze Winkel rund
// 30 = Flächenautomatik Schraffurmodus:
// 0 = Linienschraffur
// 1 = Gitterschraffur
// |2 = Editierbare Pfade erzeugen
// 31 = Netzsichtbarkeitsdialogmodus:
// 0 = Einzelspalte für Netznamenslistenanzeige
// 1 = Mehrspaltige Netznamenslistenanzeige
// 32 = Gruppenbewegtdarstellung:
// 0 = Bewegtbild aus
// 1 = Nur Baugruppenlage
// 2 = Bewegtbild ein
// 3 = Bewegtbild alles
// 33 = Leiterbahngruppenselektionsmodus:
// 0 = Leiterbahn- & Viaselektion
// 1 = Leiterbahnselektion
// 2 = Viaselektion
// 34 = Vorzugslagenauswahl (LAY1) ohne Aktionen
// 35 = Zwischenablagetext-Platzierungsanforderung
// 36 = Editierrichtung
// 37 = Mincon-Flächenmodus (Bitmuster):
// 0 = Kein Flächen-Mincon
// |1 = Kupferflächen-Mincon
// |2 = Potentialflächen-Mincon
// 38 = Gruppenwinkelfreigabemodus:
// 0 = Gruppenwinkel einhalten
// 1 = Gruppenwinkel automatisch freigeben
// 39 = Autoplacement Optimierungszahl
// 40 = Autoplacement Bauteiltausch
// 41 = Autoplacement Pin-/Gattertausch
// 42 = Autoplacement Spiegelungsmodus:
// 0 = Kein SMD-Spiegeln
// 1 = SMD-Spiegeln
// 2 = 2 Pin-SMD-Spiegeln
// 3 = Immer SMD-Spiegeln
// 43 = Autoplacement Rotationsmodus:
// 0 = 0-90 Grad Drehung
// 1 = 0-270 Grad Drehung
// 2 = 0 Grad Drehung
// 3 = 90 Grad Drehung
// 4 = 0 XOR 90 Grad Drehung
// 44 = Autoplacement Retrydurchgänge
// 45 = Autoplacement SMD-Rotationsmodus:
// 0 = 0-90 Grad Drehung
// 1 = 0-270 Grad Drehung
// 2 = 0 Grad Drehung
// 3 = 90 Grad Drehung
// 4 = 0 XOR 90 Grad Drehung
// 46 = Autoplacement Bauteilkonturlage (LAY1)
// 47 = Gruppenbearbeitung Elementfang:
// 0 = Alle Elemente selektieren
// 1 = Nur sichtbare Elemente selektieren
// 48 = Standardtextspiegelung und Standardtextmodus (STD14|LAY14)
// 49 = Autorouter Anzahl Optimierungen
// 50 = Autorouter Optimierer Richtungsmodus
// 51 = Autorouter Max. Via-Zahl
// 52 = Autorouter Via-Kosten
// 53 = Autorouter Pinkanal-Kosten
// 54 = Autorouter Anti-Vorzugs-Richtungs-Kosten
// 55 = Autorouter Richtungsänderungs-Kosten
// 56 = Autorouter Packungs-Kosten
// 57 = Autorouter Dynamische-Dichtestatistik-Basis
// 58 = Autorouter Max. Bäume pro Rip-Up
// 59 = Autorouter Max. Rip-Up Tiefe
// 60 = Autorouter Max. Rip-Up Wiederholungen
// 61 = Autorouter Via-Raster Index
// 62 = Autorouter Bus-Abknickkosten
// 63 = Autorouter Abstand-1-Kosten
// 64 = Autorouter Abstand-2-Kosten
// 65 = Autorouter Rip-Up-Kosten
// 66 = Autorouter Router Cleanup
// 67 = Autorouter Optimierer Cleanup
// 68 = Autorouter Versorgungsanschluss Vektorunroutes
// 69 = Autorouter Zwischenspeichern
// 70 = Autorouter Verbindungseckenausgabemodus
// 71 = Autorouter Unroutesausgabesortiermodus
// 72 = Autorouter Ecken Spitzwinkel Modus
// 73 = Autorouter Richtungsmodus existierende Bahnen
// 74 = Autorouter Standardverbindungs-Lagen-Kosten
// 75 = Autorouter Busverbindungs-Lagen-Kosten
// 76 = Autorouter Offset Wellenausbreitung Limit
// 77 = Autorouter Via Raster Modus
// 78 = Autorouter Eingabedaten Fehlerprüfmodus
// 79 = Autorouter Pin Anschluss Modus
// 80 = Autorouter Halbraster-Modus
// 81 = Autorouter Off-Grid-Routing-Kosten
// 82 = Autorouter Buserkennung/Busrouting Modus
// 83 = Autorouter SMD Via-Vorlegen
// 84 = Autorouter Router Pin/Gate-Swap
// 85 = Autorouter Gridless Routing Modus
// 86 = Autorouter Inkrementaler Ausgabemodus
// 87 = Autorouter Vorzugsraster
// 88 = Autorouter Anti-Vorzugsraster-Kosten
// 89 = Autorouter Anti-Netzbereichs-Kosten
// 90 = Autorouter Letzter Optimiererparameter Wechselmodus
// 91 = Autorouter Auto-Rip-Up Parameter Modus
// 92 = Autorouter Vorzugsrichtungsmodus
// 93 = Autorouter Optimierer Reihenfolge Modus
// 94 = Autorouter Via Rip-Up Flag
// 95 = Autorouter Routingfenster Randausdehnung
// 96 = Autorouter BGA Fan out
// 97 = Autorouter Pinentry Korrektur
// 98 = Autorouter Alternativer Viaversatz Modus
// 99 = Autorouter Voll-Viaauswertemodus
// 100 = Autorouter Micro Via Modus
// 101 = Autorouter Richtungsvorgabe Maximalabweichung
// 102 = Autorouter Routingfenster Flag
// 103 = Autorouter Padentry Subgrid
// 104 = Autorouter Versorgungslagen Vias
// 105 = Autorouter Via Prüfmodus
// 106 = Autorouter Verbindungsanzahl große Netze
// 107 = Autorouter Autorouting aktiv Flag
// 108 = CAM Wärmefallenbasiswinkel
// 109 = Flag - Einzeleckenbearbeitung
// 110 = Flag - Größenänderung mit Eckenabrundung
// 111 = Flag - Anzeige ausgeblendeter DRC-Fehler
// 112 = Flag - DRC-Verletzung Elementscan
// 113 = Bauteilplatzierung - Bahnendenbewegungsmodus
// 0 = Keine Bahnendenbewegung
// 1 = Bahnenden mitbewegen
// 2 = Bahnsegmente mitbewegen
// 114 = Flag - Polygonbearbeitung Autocomplete-Modus
// 115 = Platinenumrandung alternative Dokumentarlage (LAY1)
// 116 = Leiterbahnzusammenfassungsmodus:
// 0 = Bahnen nicht zusammenfassen
// 1 = Bahnen zusammenfassen
// 2 = Bahnzusammenfassungsabfrage
// 117 = Anzeigemodus Leiterbahnen (LAY15)
// 118 = Anzeigemodus Texte (LAY15)
// 119 = Anzeigemodus Kupferpolygone (LAY15)
// 120 = Anzeigemodus Sperrflächen (LAY15)
// 121 = Anzeigemodus Umrandungspolygon (LAY15)
// 122 = Anzeigemodus Potentialflächen (LAY15)
// 123 = Anzeigemodus Dokumentarlinien (LAY15)
// 124 = Anzeigemodus Dokumentarflächen (LAY15)
// 125 = Anzeigemodus Füllflächen mit Ausschnittspolygonen (LAY15)
// 126 = Anzeigemodus Schraffurflächen (LAY15)
// 127 = Anzeigemodus Geteilte Potentialflächen (LAY15)
// 128 = Flag - Farbtabelle gesichert
// 129 = Airlinefarbmodus:
// 0 = Airlinefarbe benutzen
// 1 = Lagenfarbe benutzen
// 130 = Airlineclippingmodus:
// 0 = Kein Airlineclipping
// 1 = Airlines ohne Zielpunkt im Arbeitsbereich ausblenden
// 131 = Bahnkollisionsmodus:
// -1 = Operationsabfrage
// 0 = Kollisionen ignorieren
// 1 = Kollidierende Bahnen löschen
// 2 = Kollidierende Segmente löschen
// 3 = Kollidierende Segmente abschneiden
// 132 = Abfragemodus für Layoutbahnverbindungen:
// 0 = Layoutbahnen nie verbinden
// 1 = Layoutbahnen immer verbinden
// 2 = Verbindungsmodus abfragen
// 133 = Abfragemodus für Bauteilbahnverbindungen:
// 0 = Bauteilbahnen nie verbinden
// 1 = Bauteilbahnen immer verbinden
// 2 = Verbindungsmodus abfragen
// 135 = Polygonanzeigemodus beim Bewegen von Elementen:
// 0 = Umrandungsanzeige
// 1 = Füllanzeige
// 136 = Airlineanzeigemodus beim Bewegen von Gruppen:
// 0 = Airlineanzeige aus
// 1 = Airlines für Gruppenbauteilpins anzeigen
// 137 = Abstandsprüfmodus für Bahnkollisionen:
// 0 = DRC-Abstand für Kollisionscheck benutzen
// 1 = Nur Kreuzungen als Kollisionen interpretieren
// 138 = Pickmodus für Leiterbahnbündel:
// 0 = Kontinuierlicher Segmentpick
// 1 = Pick erstes und letztes Bündelsegment
// 139 = Einfüge-Pickmodus für Leiterbahnsegmente:
// 0 = 3-Klick Selektion
// 1 = 2-Klick Selektion
// 140 = Bauteil-DRC:
// 0 = kein Bauteil-Online-DRC
// 1 = Bauteil-Online-DRC
// 141 = Flag - Optimierung Bohrwerkzeugtabelle
// 142 = Busbahnanzahl
// 143 = Busbahnanzahl editieren
// 144 = Generierungsmodus Busbahnen:
// 0 = Bahnbündel generieren
// 1 = Separate Bahnen generieren
// 145 = Busbahn-Eckenmodus:
// 0 = Gewinkelte Ecken generieren
// 1 = Abgerundete Ecken gnerieren
// 146 = Siebdrucklage (LAY1)
// 147 = Anzeigmodus Makroumrandungen:
// 0 = Keine Makroumrandungsanzeige
// 1 = Makroumrandungen für bewegte Referenzen anzeigen
// 2 = Makroumrandungen anzeigen
int; // Parameterwert
);
Beschreibung
Die Funktion
ged_setintpar dient dazu, Systemparameter vom Typ im
int im
Layouteditor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
ged_setintpar gesetzten Systemparametern können mit der Funktion
ged_getintpar abgefragt werden.
Siehe auch
Funktionen ged_getdblpar,
ged_getintpar,
ged_getstrpar,
ged_setdblpar,
ged_setstrpar.
ged_setlaydefmode - GED Defaultlagenmodus setzen (GED)
Synopsis
int ged_setlaydefmode( // Status
int [0,2]; // Defaultlagenmodus:
// 0 = automatische Lagendefaultzuweisung deaktivieren
// 1 = benutzte Eingabelage ist Lagendefault
// 2 = zuletzt benutzte Lage ist Lagendefault
);
Beschreibung
Die Funktion
ged_setlaydefmode setzt den Defaultlagenmodus im
Layouteditor. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung und ungleich Null im Fehlerfall.
Siehe auch
Funktionen
ged_getlaydefmode,
ged_getlayerdefault,
ged_setlayerdefault.
ged_setlayerdefault - GED Defaultlage setzen (GED)
Synopsis
int ged_setlayerdefault( // Status
int; // Lage (LAY1)
);
Beschreibung
Die Funktion
ged_setlayerdefault setzt die Defaultlage im
Layouteditor. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung und ungleich Null im Fehlerfall.
Siehe auch
Funktionen
ged_getlaydefmode,
ged_getlayerdefault,
ged_setlaydefmode.
ged_setmincon - GED Mincon-Funktion setzen (GED)
Synopsis
int ged_setmincon( // Status
int [0,8]; // Funktionstyp (LAY10)
);
Beschreibung
Die Funktion
ged_setmincon setzt den
-Modus für die Airlineanzeige im
Layouteditor. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Modus angegeben wurde.
ged_setnetattrib - GED Netzattribut setzen (GED)
Synopsis
int ged_setnetattrib( // Status
string; // Netzname
string; // Attributname
string; // Attributwert
);
Beschreibung
Die Funktion
ged_setnetattrib setzt für das namentlich spezifizierte Signalnetz den Wert des angegebenen Attributs. Die maximal speicherbare Stringlänge für den Attributwert beträgt 40 Zeichen. Der Rückgabewert ist Null bei erfolgreicher Attributwertdefinition, (-1) wenn kein gültiges Element geladen ist, (-2) bei fehlenden bzw. ungültigen Parametern, (-3) wenn das Netz nicht gefunden wurde, oder (-4) wenn das Attribut mit dem angegebenen Namen nicht am Netz definiert ist.
ged_setpathwidth - GED Bahnenstandardbreiten setzen (GED)
Synopsis
int ged_setpathwidth( // Status
double ]0.0,[; // Schmal Standardbreite (STD2)
double ]0.0,[; // Breit Standardbreite (STD2)
);
Beschreibung
Die Funktion
ged_setpathwidth setzt die Standardbreiten für schmale und breite Leiterbahnen im
Layouteditor. Es wird ein Wert ungleich Null zurückgegeben, wenn ungültige Breiten spezifiziert wurden.
ged_setpickelem - Set GED default pick element (GED)
Synopsis
int ged_setpickelem( // Status
index L_FIGURE; // Defaultpickelement
);
Beschreibung
Die Funktion
ged_setpickelem setzt ein Defaultelement für nachfogende Pickoperationen im
Layouteditor. Der Funktionsrückgabewert ist ungleich Null im Fehlerfall.
Siehe auch
Funktion ged_pickelem.
ged_setpickmode - GED Elementpickmodus setzen (GED)
Synopsis
int ged_setpickmode( // Status
int [0,2]; // Elementpickmodus:
// 0 = Pick über Vorzugslage
// 1 = Pick mit Elementauswahl
// 2 = Pick exklusiv über Vorzugslage
);
Beschreibung
Die Funktion
ged_setpickmode setzt den Elementpickmodus im
Layouteditor. Der Funktionsrückgabewert ist ungleich Null bei Spezifikation eines ungültigen Elementpickmodus.
Siehe auch
Funktion ged_getpickmode.
ged_setpickpreflay - GED Vorzugslage setzen (GED)
Synopsis
int ged_setpickpreflay( // Status
int; // Lage (LAY1)
);
Beschreibung
Die Funktion
ged_setpickpreflay setzt die Vorzugslage für Elementwahl im
Layouteditor. Es wird ein Wert ungleich Null zurückgegeben, wenn keine gültige Lage angegeben wurde.
ged_setplantoplay - GED oberste Lage setzen (GED)
Synopsis
int ged_setplantoplay( // Status
int [0,99]; // Lage (LAY1)
);
Beschreibung
Die Funktion
ged_setplantoplay setzt die oberste Lage im
Layouteditor. Es wird ein Wert ungleich Null zurückgegeben, wenn keine gültige Signallage angegeben wurde.
ged_setsegmovmode - GED Leiterbahnsegmentbewegungsmodus setzen (GED)
Synopsis
int ged_setsegmovmode( // Status
int [0,12]; // Leiterbahnsegmentbewegungsmodus:
// 0 = Mit Nachbarn bewegen
// 1 = Ohne Nachbarn bewegen
// 2 = Nachbarn anpassen
// 3 = Nachbarn ohne Durchkontaktierungen anpassen
// 8 = Nur unmittelbare Nachbarn anpassen
// |4 = Offene Leiterbahnenden folgen Segmentbewegung
);
Beschreibung
Die Funktion
ged_setsegmovmode setzt den Leiterbahnsegmentbewegungsmodus im
Layouteditor. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Modus angegeben wurde.
Siehe auch
Funktion
ged_getsegmovmode.
ged_setstrpar - GED Stringparameter setzen (GED)
Synopsis
int ged_setstrpar( // Status
int [0,[; // Parametertyp/-nummer:
// [ 0 = Systemparameter - kein Schreibzugriff ]
// [ 1 = Systemparameter - kein Schreibzugriff ]
// 2 = Zuletzt platzierter Textstring
// 3 = Standardbibliotheksname
// [ 4 = Systemparameter - kein Schreibzugriff ]
// 5 = Bohrbauteil-/Bohrpinnamensbasis
// 6 = Bohrbauteilmakronamensmuster
// 7 = Bohrpinmakronamensmuster
// 8 = Eingabeaufforderung Ersatzstring
// [ 9 = Systemparameter - kein Schreibzugriff ]
// 10 = Autosave path name
string; // Parameterwert
);
Beschreibung
Die Funktion
ged_setstrpar dient dazu, Systemparameter vom Typ im
string im
Schaltplaneditor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
ged_setstrpar gesetzten Systemparametern können mit der Funktion
ged_getstrpar abgefragt werden.
Siehe auch
Funktionen ged_getdblpar,
ged_getintpar,
ged_getstrpar,
ged_setdblpar,
ged_setintpar.
ged_setviaoptmode - GED Leiterbahnviaoptimierungsmodus setzen (GED)
Synopsis
int ged_setviaoptmode( // Status
int [0,1]; // Leiterbahnviaoptimierungsmodus:
// 0 = Viaoptimierung
// 1 = Vias beibehalten
);
Beschreibung
Die Funktion
ged_setviaoptmode setzt den Leiterbahnviaoptimierungsmodus im
Layouteditor. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Modus angegeben wurde.
Siehe auch
Funktion
ged_getviaoptmode.
ged_setwidedraw - GED Breitendarstellung setzen (GED)
Synopsis
int ged_setwidedraw( // Status
double ]0.0,[; // Breite (STD2)
);
Beschreibung
Die Funktion
ged_setwidedraw setzt die Breite, ab der im
Layouteditor Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden. Es wird ein Wert ungleich Null zurückgegeben, wenn eine ungültige Breite spezifiziert wurde.
ged_storedrill - GED Bohrung platzieren (GED)
Synopsis
int ged_storedrill( // Status
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double ]0.0,[; // Radius (STD2)
int [0,[; // Bohrklasse (LAY5)
);
Beschreibung
Die Funktion
ged_storedrill platziert eine Bohrung mit den angegebenen Parametern auf dem gegenwärtig geladenen Layoutelement. Der Rückgabewert ist ungleich Null, wenn ungültige Daten übergeben wurden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_storepart - GED Bauteil platzieren (GED)
Synopsis
int ged_storepart( // Status
string; // Bauteilname
string; // Bauteil Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
ged_storepart platziert ein Bauteil mit den angegebenen Parametern auf dem gegenwärtig geladenen Layoutelement. Wird eine Leerzeichenkette für den Bauteilnamen übergeben, so wird das nächste unplatzierte Bauteil der Netzliste verwendet. Der Rückgabewert ist Null, wenn das Bauteil erfolgreich platziert wurde, (1) wenn die Bauteilpins nicht mit der Netzliste übereinstimmen, (-1) bei ungültigen Daten, (-2) wenn alle Bauteile bereits platziert sind, (-3) wenn das Bauteil schon platziert ist, (-4) wenn es nicht ladbar ist und (-6) wenn die Bauteildaten nicht in die Jobdatenbank kopiert werden konnten.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ged_storepath - GED Bahn platzieren (GED)
Synopsis
int ged_storepath( // Status
int [0,99]; // Leiterbahnlage (LAY1)
double ]0.0,[; // Leiterbahnbreite (STD2)
);
Beschreibung
Die Funktion
ged_storepath erzeugt aus der internen Punktliste unter Verwendung der angegebenen Parameter eine Leiterbahn auf dem aktuell geladenen Layout- bzw. Bauteil. Der Rückgabewert ist gleich Null, wenn die Bahn erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei ungültigen Parametern, oder (-3) wenn die Punktliste ungültig ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktionen
bae_storepoint,
ged_drcpath.
ged_storepoly - GED Fläche platzieren (GED)
Synopsis
int ged_storepoly( // Status
int; // Polygonlage (LAY1)
int [1,9]; // Polygontyp (LAY4)
string; // Polygonnetzname (für Pot.- und Füllbereich)
int [0,18]; // Polygonspiegelungsmodus (LAY3)
);
Beschreibung
Die Funktion
ged_storepoly generiert aus der mit
bae_storepoint erzeugten internen Punktliste unter Verwendung der angegebenen Parameter eine Fläche auf dem gegenwärtig geladenen Layoutelement. Der Rückgabewert ist gleich Null, wenn die Fläche erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei ungültigen Parametern, oder (-3) wenn die Punktliste für den gegebenen Flächentyp ungültig ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktionen
bae_storepoint,
ged_drcpoly.
ged_storetext - GED Text platzieren (GED)
Synopsis
int ged_storetext( // Status
string; // Textzeichenkette
double; // Text-X-Koordinate (STD2)
double; // Text-Y-Koordinate (STD2)
double; // Textdrehwinkel (STD3)
double ]0.0,[; // Textgröße (STD2)
int; // Textlage (LAY1)
int; // Textspiegelungsmodus und Textstil (STD14|LAY14)
);
Beschreibung
Die Funktion
ged_storetext platziert einen Text mit den angegebenen Parametern auf dem aktuell geladenen Layoutelement. Der Rückgabewert ist ungleich Null, wenn ungültige Daten übergeben wurden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden. Es können maximal 40 Zeichen der übergebenen Textzeichenkette gespeichert werden. Bei Übergabe längerer Zeichenketten gibt die Funktionen den Fehlerstatus zur Kennzeichnung ungültiger Parameter zurück.
Siehe auch
Funktion
ged_attachtextpos.
ged_storeuref - GED Via bzw. Pad platzieren (GED)
Synopsis
int ged_storeuref( // Status
string; // Referenz Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int; // Lagenoffset (für Pad auf Padstack)
int [0,1]; // Spiegelung (STD14) (für Pad auf Padst.)
);
Beschreibung
Die Funktion
ged_storeuref platziert eine namenlose Referenz mit den angegebenen Parametern auf dem gegenwärtig geladenen Layoutelement. Namenlose Referenzen sind die Vias auf Layout- bzw. Bauteilebene und die Pads auf Padstackebene. Spiegelung, Lagenoffset und Drehwinkel werden für Vias ignoriert. Der Rückgabewert ist gleich Null, wenn die Referenz erfolgreich platziert wurde, (-1) bei ungültigen Daten, (-2) wenn sie nicht ladbar ist und (-3) wenn die Referenzdaten nicht in die Jobdatenbank kopiert werden konnten.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktion
ged_drcpoly.
C.4.3 Autorouter-Funktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp AR zugeordnet, d.h. diese Funktionen können im
Autorouter aufgerufen werden:
ar_asklayer - Autorouter Lagenauswahl (AR)
Synopsis
int ar_asklayer( // Status
& int; // Lagenrückgabe (LAY1|LAY9)
int [0,5]; // Lagenabfragetyp:
// 0 = Dokumentarlagen und Signallagen
// 1 = Signallagen
// 2 = Signallagen
// (inklusive und )
// 3 = Dokumentarlagen
// 4 = Signallagen und Versorgungslagen
// 5 = beliebige Anzeigeelementtypen
);
Beschreibung
Die Funktion
ar_asklayer aktiviert im
Autorouter ein Lagenauswahlmenü. Der Lagenabfragetyp gibt an, welche Lagen bzw. Anzeigelementtypen zur Auswahl angeboten werden. Der Rückgabewert ist Null bei erfolgter Lagenwahl oder (-1) bei Wahl des Menüpunktes Abbruch.
ar_delelem - Autorouter Element löschen (AR)
Synopsis
int ar_delelem( // Status
& index L_FIGURE; // Element
);
Beschreibung
Die Funktion
ar_delelem löscht das übergebene Element aus der Elementliste. Der Rückgabewert ist Null bei erfolgter Löschung und (-1), wenn das übergebene Element ungültig ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktion ar_drawelem.
ar_drawelem - Autorouter Elementanzeige aktualisieren (AR)
Synopsis
void ar_drawelem(
index L_FIGURE; // Element
int [0, 4]; // Zeichenmodus (STD19)
);
Beschreibung
Die Funktion
ar_drawelem aktualisiert die Anzeige des angegebenen Elements unter Verwendung des spezifizierten Zeichenmodus.
Siehe auch
Funktion ar_delelem.
ar_elemangchg - Autorouter Elementwinkel ändern (AR)
Synopsis
int ar_elemangchg( // Status
& index L_FIGURE; // Element
double; // Neuer Winkel (STD3)
);
Beschreibung
Die Funktion
ar_elemangchg ändert den Drehwinkel des übergebenen Elements. Der Drehwinkel wird ausgehend vom Nullwinkel eingestellt, d.h. der vorhergehende Drehwinkel des Elements hat keinen Einfluss auf das Ergebnis. Die Winkelangabe wird als Bogenmaßwert interpretiert. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht drehbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_elemfixchg - Autorouter Element fixiert-Flag ändern (AR)
Synopsis
int ar_elemfixchg( // Status
& index L_FIGURE; // Element
int [0,1]; // Neues fixiert Flag (STD11)
);
Beschreibung
Die Funktion
ar_elemfixchg ändert den Fixiert-Modus des übergebenen Elements. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht fixierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_elemlaychg - Autorouter Elementlage ändern (AR)
Synopsis
int ar_elemlaychg( // Status
& index L_FIGURE; // Element
int; // Neue Lage (LAY1)
);
Beschreibung
Die Funktion
ar_elemlaychg ändert die Lagenzugehörigkeit des übergebenen Elements. Bei Bohrungen gibt die Lage die Bohrungsklasse an. Die Lage kann für Flächen, Leiterbahnen, Bohrungen, Texte und Pads auf Padstackebene geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn die Lage nicht änderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_elemmirrchg - Autorouter Elementspiegelung ändern (AR)
Synopsis
int ar_elemmirrchg( // Status
& index L_FIGURE; // Element
int [0,18]; // Neuer Spiegelungsmodus (STD14|LAY3)
);
Beschreibung
Die Funktion
ar_elemmirrchg ändert den Spiegelungsmodus des übergebenen Elements. Der Spiegelungsmodus kann bei Flächen, Texten und Referenzen geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es keinen Spiegelungsmodus besitzt. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_elemposchg - Autorouter Elementposition ändern (AR)
Synopsis
int ar_elemposchg( // Status
& index L_FIGURE; // Element
double; // X-Position (STD2)
double; // Y-Position (STD2)
);
Beschreibung
Die Funktion
ar_elemposchg ändert die Position des übergebenen Elements. Bei Flächen/Leiterbahnen wird die Fläche/Leiterbahn so verschoben, dass der erste Punkt der Fläche/Leiterbahn auf der angegebenen Position zu liegen kommt. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht positionierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_elemsizechg - Autorouter Elementgröße ändern (AR)
Synopsis
int ar_elemsizechg( // Status
& index L_FIGURE; // Element
double; // Neue Größe (STD2)
);
Beschreibung
Die Funktion
ar_elemsizechg ändert die Größe des übergebenen Elements. Bei Leiterbahnen wird mit der Größe die Leiterbahnbreite spezifiziert. Eine Größenänderung ist nur bei Texten, Bohrungen und Leiterbahnen möglich. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht größenveränderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_getdblpar - Autorouter Doubleparameter abfragen (AR)
Synopsis
int ar_getdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Netzsichtbarkeitsdialog Netznamenskontollelementbreite
// 1 = Benutzerdefiniertes Routingraster
& double; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
ar_getdblpar dient der Abfrage von mit
ar_setdblpar im
Autorouter gesetzten Parametern vom Typ
double . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen ar_getintpar,
ar_getstrpar,
ar_setdblpar,
ar_setintpar,
ar_setstrpar.
ar_getintpar - Autorouter Integerparameter abfragen (AR)
Synopsis
int ar_getintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Farbcode für Oberste Lage
// 1 = Minconaktualisierungsmodus
// 2 = Warnmeldemodus:
// Bit 0: SCM-Änderungs-Warnungen unterdrückt
// Bit 1: im Autorouter nicht benutzt
// Bit 2: Variantenvergleichswarnungen unterdrückt
// 3 = Autosave-Intervall
// 4 = Netzsichtbarkeitsdialogmodus:
// 0 = Einzelspalte für Netznamenslistenanzeige
// 1 = Mehrspaltige Netznamenslistenanzeige
// 5 = Routingsignallagenanzahl
// 6 = Routingrastercode:
// 0 = 1/20 Zoll (1.27 mm) Standard
// 1 = 1/40 Zoll (0.635 mm) Standard
// 2 = 1/50 Zoll (0.508 mm) Standard
// 3 = 1/60 Zoll (0.4233 mm) Standard
// 4 = 1/80 Zoll (0.3175 mm) Standard
// 5 = 1/100 Zoll (0.254 mm) Standard
// 6 = 1/40 Zoll (0.635 mm) ohne Versatz
// 7 = 1/60 Zoll (0.4233 mm) ohne Versatz
// 8 = 1/80 Zoll (0.3175 mm) ohne Versatz
// 9 = 1/100 Zoll (0.254 mm) mit Versatz
// -1 = Anderes Raster ohne Versatz
// -2 = Anderes Raster mit Versatz
// 7 = Mincon-Flächenmodus (Bitmuster):
// 0 = Kein Flächen-Mincon
// |1 = Kupferflächen-Mincon
// |2 = Potentialflächen-Mincon
// 8 = Flag - Farbtabelle gesichert
// 9 = Airlinefarbmodus:
// 0 = Airlinefarbe benutzen
// 1 = Lagenfarbe benutzen
// 10 = Flag - Optimierung Bohrwerkzeugtabelle
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
ar_getintpar dient der Abfrage von mit
ar_setintpar im
Autorouter gesetzten Integerparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen ar_getdblpar,
ar_getstrpar,
ar_setdblpar,
ar_setintpar,
ar_setstrpar.
ar_getmincon - Autorouter Mincon-Funktion abfragen (AR)
Synopsis
int ar_getmincon( // Funktionstyp (LAY10)
);
Beschreibung
Der Rückgabewert der Funktion
ar_getmincon entspricht dem im
Autorouter aktuell eingestellten Wert des
-Modus für die Airlineanzeige
(LAY10).
ar_getpickpreflay - Autorouter Vorzugslage abfragen (AR)
Synopsis
int ar_getpickpreflay( // Vorzugslage (LAY1)
);
Beschreibung
Der Rückgabewert der Funktion
ar_getpickpreflay entspricht der Vorzugslage
(LAY1) für Elementwahl im Autorouter.
ar_getstrpar - Autorouter Stringparameter abfragen (AR)
Synopsis
int ar_getstrpar( // Returns status
int [0,[; // Parameter type/number:
// 0 = Autosave path name
& string; // Returns parameter value
);
Beschreibung
Die Funktion
ar_getstrpar dient der Abfrage von im
Autorouter gesetzten Stringparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen ar_getdblpar,
ar_getintpar,
ar_setdblpar,
ar_setintpar,
ar_setstrpar.
ar_getwidedraw - Autorouter Breitendarstellung abfragen (AR)
Synopsis
double ar_getwidedraw( // Breite (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
ar_getwidedraw entspricht der Breite, ab der im
Autorouter Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden.
ar_highlnet - Autorouter Highlight Netz ein/aus (AR)
Synopsis
int ar_highlnet( // Status
int [0,[; // Netznummer
int [0,1]; // Highlightmodus (0 = aus, 1 = ein)
);
Beschreibung
Die Funktion
ar_highlnet setzt den Highlightmodus des Netzes mit der übergebenen Netznummer. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Highlightmodus oder eine ungültige Netznummer angegeben wurde.
ar_partnamechg - Autorouter Bauteilname in Netzliste ändern (AR)
Synopsis
int ar_partnamechg( // Status
string; // Alter Bauteilname
string; // Neuer Bauteilname
);
Beschreibung
Die Funktion
ar_partnamechg ändert den Namen des angegebenen Bauteils in der Netzliste. Ein Rückgabewert von Null zeigt eine erfolgreiche Änderung an. Bei ungültigen Eingabedaten wird (-1) zurückgegeben, (-2) wenn das Bauteil nicht platziert ist, (-3) wenn das Bauteil nicht in der Netzliste vorhanden ist, (-4) wenn der neue Name schon definiert ist und (-5) wenn versucht wurde, in einem Programmlauf ein Bauteil mehrfach umzubenennen (z.B.
a in
b und anschließend
b in
c ). Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion verändert die Netzliste und erfordert daher einen anschließenden
-Lauf. Die Funktion sollte auch nicht innerhalb von
L_CPART-Index-Schleifen aufgerufen werden, da die vor dem Aufruf der Funktion belegten
L_CPART-Indexvariablen anschließend ungültig sind.
ar_pickelem - Autorouter Element mit Maus selektieren (AR)
Synopsis
int ar_pickelem( // Status
& index L_FIGURE; // Rückgabe Element
int [1,9]; // Elementtyp (LAY6 außer 7)
);
Beschreibung
Mit der Funktion
ar_pickelem kann vom Benutzer mit der Maus ein Element des gewünschten übergebenen Typs selektiert werden. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Element des gewünschten Typs gefunden wurde.
ar_setdblpar - Autorouter Doubleparameter setzen (AR)
Synopsis
int ar_setdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Netzsichtbarkeitsdialog Netznamenskontollelementbreite
// [ 1 = Systemparameter - kein Schreibzugriff ]
double; // Parameterwert
);
Beschreibung
Die Funktion
ar_setdblpar dient dazu, Systemparameter vom Typ
double im
Autorouter zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
ar_setdblpar gesetzten Systemparametern können mit der Funktion
ar_getdblpar abgefragt werden.
Siehe auch
Funktionen ar_getdblpar,
ar_getintpar,
ar_getstrpar,
ar_setintpar,
ar_setstrpar.
ar_setintpar - Autorouter Integerparameter setzen (AR)
Synopsis
int ar_setintpar( // Status
int [0,[; // Parametertyp/-nummer:
// [ 0 = bae_setcolor benutzen ]
// 1 = Minconaktualisierungsmodus
// 2 = Warnmeldemodus:
// Bit 0: SCM-Änderungs-Warnungen unterdrücken
// Bit 1: im Autorouter nicht benutzt
// Bit 2: Variantenvergleichswarnungen unterdrücken
// 3 = Autosave-Intervall
// 4 = Netzsichtbarkeitsdialogmodus:
// 0 = Einzelspalte für Netznamenslistenanzeige
// 1 = Mehrspaltige Netznamenslistenanzeige
// [ 5 = Systemparameter - kein Schreibzugriff ]
// [ 6 = Systemparameter - kein Schreibzugriff ]
// 7 = Mincon-Flächenmodus (Bitmuster):
// 0 = Kein Flächen-Mincon
// |1 = Kupferflächen-Mincon
// |2 = Potentialflächen-Mincon
// 8 = Flag - Farbtabelle gesichert
// 9 = Airlinefarbmodus:
// 0 = Airlinefarbe benutzen
// 1 = Lagenfarbe benutzen
// 10 = Flag - Optimierung Bohrwerkzeugtabelle
int; // Parameterwert
);
Beschreibung
Die Funktion
ar_setintpar dient dazu, Systemparameter vom Typ im
int im
Autorouter zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
ar_setintpar gesetzten Systemparametern können mit der Funktion
ar_getintpar abgefragt werden.
Siehe auch
Funktionen ar_getdblpar,
ar_getintpar,
ar_getstrpar,
ar_setdblpar,
ar_setstrpar.
ar_setmincon - Autorouter Mincon-Funktion setzen (AR)
Synopsis
int ar_setmincon( // Status
int [0,8]; // Funktionstyp (LAY10)
);
Beschreibung
Die Funktion
ar_setmincon setzt den
-Modus für die Airlineanzeige im
Autorouter. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Modus angegeben wurde.
ar_setnetattrib - Autorouter Netzattribut setzen (AR)
Synopsis
int ar_setnetattrib( // Status
string; // Netzname
string; // Attributname
string; // Attributwert
);
Beschreibung
Die Funktion
ar_setnetattrib setzt für das namentlich spezifizierte Signalnetz den Wert des angegebenen Attributs. Die maximal speicherbare Stringlänge für den Attributwert beträgt 40 Zeichen. Der Rückgabewert ist Null bei erfolgreicher Attributwertdefinition, (-1) wenn kein gültiges Element geladen ist, (-2) bei fehlenden bzw. ungültigen Parametern, (-3) wenn das Netz nicht gefunden wurde, oder (-4) wenn das Attribut mit dem angegebenen Namen nicht am Netz definiert ist.
ar_setpickpreflay - Autorouter Vorzugslage setzen (AR)
Synopsis
int ar_setpickpreflay( // Status
int; // Lage (LAY1)
);
Beschreibung
Die Funktion
ar_setpickpreflay setzt die Vorzugslage für Elementwahl im
Autorouter. Es wird ein Wert ungleich Null zurückgegeben, wenn keine gültige Lage angegeben wurde.
ar_setplantoplay - Autorouter oberste Lage setzen (AR)
Synopsis
int ar_setplantoplay( // Status
int [0,99]; // Lage (LAY1)
);
Beschreibung
Die Funktion
ar_setplantoplay setzt die oberste Lage im
Autorouter. Es wird ein Wert ungleich Null zurückgegeben, wenn keine gültige Signallage angegeben wurde.
ar_setstrpar - Autorouter Stringparameter setzen (GED)
Synopsis
int ar_setstrpar( // Returns status
int [0,[; // Parameter type/number:
// 0 = Autosave path name
string; // Parameter value
);
Beschreibung
Die Funktion
ar_setstrpar dient dazu, Systemparameter vom Typ im
string im
Autorouter zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
ar_setstrpar gesetzten Systemparametern können mit der Funktion
ar_getstrpar abgefragt werden.
Siehe auch
Funktionen ar_getdblpar,
ar_getintpar,
ar_getstrpar,
ar_setdblpar,
ar_setintpar.
ar_setwidedraw - Autorouter Breitendarstellung setzen (AR)
Synopsis
int ar_setwidedraw( // Status
double ]0.0,[; // Breite (STD2)
);
Beschreibung
Die Funktion
ar_setwidedraw setzt die Breite, ab der im
Autorouter Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden. Es wird ein Wert ungleich Null zurückgegeben, wenn eine ungültige Breite spezifiziert wurde.
ar_storepart - Autorouter Bauteil platzieren (AR)
Synopsis
int ar_storepart( // Status
string; // Bauteilname
string; // Bauteil Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
ar_storepart platziert ein Bauteil mit den angegebenen Parametern auf dem gegenwärtig geladenen Layoutelement. Wird eine Leerzeichenkette für den Bauteilnamen übergeben, so wird das nächste unplatzierte Bauteil der Netzliste verwendet. Der Rückgabewert ist gleich Null, wenn das Bauteil erfolgreich platziert wurde, (-1) bei ungültigen Daten, (-2) wenn alle Bauteile bereits platziert sind, (-3) wenn das Bauteil schon platziert ist, (-4) wenn es nicht ladbar ist, (-5) wenn die Bauteilpins nicht mit der Netzliste übereinstimmen und (-6) wenn die Bauteildaten nicht in die Jobdatenbank kopiert werden konnten.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_storepath - Autorouter Bahn platzieren (AR)
Synopsis
int ar_storepath( // Status
int [0,99]; // Lage (LAY1)
double ]0.0,[; // Bahnbreite (STD2)
);
Beschreibung
Die Funktion
ar_storepath erzeugt aus der internen Punktliste unter Verwendung der angegebenen Parameter eine Leiterbahn auf dem aktuell geladenen Layout bzw. Bauteil. Der Rückgabewert ist gleich Null, wenn die Bahn erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei ungültigen Parametern, oder (-3) wenn die Punktliste ungültig ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ar_storeuref - Autorouter Via bzw. Pad platzieren (GED)
Synopsis
int ar_storeuref( // Status
string; // Referenz Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int; // Lagenoffset (für Pad auf Stack)
int [0,1]; // Spiegelung (STD14) (für Pad auf Padst.)
);
Beschreibung
Die Funktion
ar_storeuref platziert eine namenlose Referenz mit den angegebenen Parametern auf dem gegenwärtig geladenen Layoutelement. Namenlose Referenzen sind die Vias auf Layout- bzw. Bauteilebene und die Pads auf Padstackebene. Spiegelung, Lagenoffset und Drehwinkel werden für Vias ignoriert. Der Rückgabewert ist gleich Null, wenn die Referenz erfolgreich platziert wurde, (-1) bei ungültigen Daten, (-2) wenn sie nicht ladbar ist und (-3) wenn die Referenzdaten nicht in die Jobdatenbank kopiert werden konnten.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
L_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
C.4.4 CAM-Prozessor-Funktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CAM zugeordnet, d.h. diese Funktionen können im
CAM-Prozessor aufgerufen werden:
cam_askplotlayer - CAM Plotlagenauswahl (CAM)
Synopsis
int cam_askplotlayer( // Status
& int; // Lagenrückgabe (LAY1)
);
Beschreibung
Die Funktion
cam_askplotlayer aktiviert im
CAM-Prozessor ein Menü zur Auswahl der Plot- bzw. Ausgabelage. Der Rückgabewert ist Null bei erfolgreicher Lagenauswahl oder (-1) bei Wahl des Menüpunktes Abbruch.
cam_getdblpar - CAM Doubleparameter abfragen (CV)
Synopsis
int cam_getdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// [ 0 = Systemparameter, nur Schreibzugriff ]
// 1 = Bitmapplotpixelauflösung (STD2)
// 2 = Letztes Bitmapplotpixelverhätnis
& double; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
cam_getdblpar dient der Abfrage von mit
cam_setdblpar in
CAM-Prozessor gesetzten Parametern vom Typ
double . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen cam_getintpar,
cam_setdblpar,
cam_setintpar.
cam_getdrlaccuracy - CAM Bohrwerkzeugtoleranz abfragen (CAM)
Synopsis
double cam_getdrlaccuracy( // Bohrwerkzeugtoleranz (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
cam_getdrlaccuracy entspricht dem aktuell im
CAM-Prozessor eingestellten Wert für die Toleranz des Bohrwerkzeugs.
Siehe auch
Funktion
cam_setdrlaccuracy.
cam_getgenpltparam - CAM allgemeine Plotparameter abfragen (CAM)
Synopsis
void cam_getgenpltparam(
& int; // Alle Lagen Modus:
// 0 = aus
// 1 = ein
& int; // Umrandungsmodus:
// 0 = aus
// 1 = ein
& int; // Drehung:
// 0 = Drehung 0 Grad
// 1 = Drehung 90 Grad links
& int; // Spiegelung (CAM1)
& int; // Passermarkenmodus:
// 0 = aus
// 1 = ein
& double; // Plotgenauigkeit (STD2)
& double; // Plot Nullpunkt X-Koordinate (STD2)
& double; // Plot Nullpunkt Y-Koordinate (STD2)
);
Beschreibung
Die Funktion
cam_getgenpltparam gibt die aktuell im
CAM-Prozessor eingestellten allgemeinen Plotparameter zurück.
cam_getgerberapt - CAM Gerberblendendefinition abfragen (CAM)
Synopsis
int cam_getgerberapt( // Status
int [1,900]; // Blendentabellenindex
& int; // Blende D-Code:
// 10..999 = gültige D-Codes
// (-1) = Blende nicht definiert
& int; // Blendentyp:
// 0 = Spezialblende
// 1 = Runde Blende
// 2 = Quadratische Blende
// 3 = Therm. Blende (Wärmefalle)
// 4 = Rechteckige Blende
& int; // Blendenzeichenmodus:
// 0 = Blende für alle Zeichenmodi
// 1 = Blende zum Blitzen
// 2 = Blende für Linienstrukturen
& double; // Blendengröße (STD2)
& double; // Blendengröße 2 (STD2)
);
Beschreibung
Die Funktion
cam_getgerberapt ermittelt die Definition der unter dem angegebenen Index der aktuell im
CAM-Prozessor geladenen Blendentabelle eingetragenen Gerberblende. Wird der Wert (-1) für den D-Code zurückgegeben, dann bedeutet dies, dass keine Blende an der angegebenen Tabellenposition definiert ist. Der Funktionsrückgabewert ist ungleich Null bei fehlenden bzw. ungültigen Parametern.
cam_getgerberparam - CAM Gerber-Parameter abfragen (CAM)
Synopsis
void cam_getgerberparam(
& string; // Gerber Dateiname
& double; // Standardlinienbreite (STD2)
& int; // Gerber Format (CAM4)
& int; // Gerber Optimierung:
// 0 = Optimierung aus
// 1 = Optimierung ein
& int; // Füllverfahren:
// 0 = Linien-Füllen
// 1 = Multiblenden-Füllen
// 2 = G36/G36-Füllmodus
& int; // Kreisbogen-Ausgabemodus:
// 0 = Kreisbogen-Interpolation
// 1 = Ausg. mit Gerber I/J-Befehlen
& int; // Extended Gerber (RS-274-X) Modus:
// 0 = Kein Extended Gerber
// 1 = Extended Gerber mit Standard-Blendentabelle
// 2 = Extended Gerber mit dynamischer Blendentabelle
);
Beschreibung
Die Funktion
cam_getgerberparam gibt die aktuell im
CAM-Prozessor eingestellten Gerber-Plotparameter zurück.
cam_gethpglparam - CAM HP-GL-Parameter abfragen (CAM)
Synopsis
void cam_gethpglparam(
& string; // HP-GL Plotdateiname
& double; // HP-GL Maßstab
& double; // HP-GL Geschwindigkeit (-1.0 volle Geschw.)
& double; // HP-GL Stiftbreite (STD2)
& int; // HP-GL Füllmodus:
// 0 = Füllen aus
// 1 = Füllen ein
);
Beschreibung
Die Funktion
cam_gethpglparam gibt die aktuell im
CAM-Prozessor eingestellten HP-GL-Plotparameter zurück.
cam_getintpar - CAM Integerparameter abfragen (CAM)
Synopsis
int cam_getintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Farbcode für Oberste Lage
// 1 = Wärmefallenbasiswinkel
// 2 = Warnmeldemodus:
// Bit 0: SCM-Änderungs-Warnungen unterdrückt
// Bit 1: im CAM-Prozessor nicht benutzt
// Bit 2: Variantenvergleichswarnungen unterdrückt
// 3 = Flächenspiegelsicht:
// 0 = Standardflächenspiegelsicht
// 1 = Flächenspiegelsicht deaktiviert
// 4 = Letzter Pixelplotergebnistyp:
// -1 = noch kein Pixelplot
// 0 = Pixelverhältnis Platinenumrandung
// 1 = Pixelverhältnis Elementgrenzen
// 5 = Letzte Pixelplot-Pixelanzahl
// 6 = Letzte Pixelplot-Kupferpixelanzahl
// 7 = Skalierungsmodus Generische Printausgabe:
// 0 = Fester Skalierungsfaktor
// 1 = Skalierung auf Papiergröße/span>
// 8 = Flag - Farbtabelle gesichert
// 9 = Airlinefarbmodus:
// 0 = Airlinefarbe benutzen
// 1 = Lagenfarbe benutzen
// 10 = Bitmapumrandungsfräsmodus:
// 0 = Keine Fräsung
// 1 = Gefüllte Umrandung fräsen
// 11 = Generischer Printer Zeichenmodus:
// 0 = Farbe setzen
// 1 = Farbe mischen
// 12 = Batchausgabeflag
// 13 = Flag - Optimierung Bohrwerkzeugtabelle
// 14 = Plotvorschaumodus:
// 0 = Keine Plotvorschau
// 1 = Plotterstiftbreite
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
cam_getintpar dient der Abfrage von mit
cam_setintpar im
CAM-Prozessor gesetzten Integerparametern. Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktions cam_getdblpar,
cam_setdblpar,
cam_setintpar.
cam_getplotlaycode - CAM Plotlagencode abfragen (CAM)
Synopsis
int cam_getplotlaycode( // HP-GL-Plot-Stiftnummer (CAM4)
int; // Lagennummer (LAY1)
);
Beschreibung
Die Funktion
cam_getplotlaycode ermittelt die für die spezifizierte Lage aktuell selektierte bzw. gesetzte HP-GL-Plot-Stiftnummer für Multilayer-Plots. Die lagenspezifischen HP-GL-Plot-Stiftnummern werden auch bei der Erzeugung von Multilayer-Plots in anderen Formaten als HP-GL ausgewertet. Positive Stiftnummern kennzeichnen hierbei Lagen, die für die Ausgabe selektiert sind, während Lagen mit negativer Stiftnummer nicht geplottet werden.
Siehe auch
Funktion
cam_setplotlaycode.
cam_getpowpltparam - CAM Versorgungslagen-Parameter abfragen (CAM)
Synopsis
void cam_getpowpltparam(
& double; // Min. Distanz Wärmefalle-Bohrung (STD2)
& double; // Min. Distanz Isolation-Bohrung (STD2)
& double; // Toleranz Wärmefalle-Bohrung (STD2)
& double; // Toleranz Isolation-Bohrung (STD2)
& double; // Breite Vers.-lagenumrandung (STD2)
& double; // Breite Power Plane Isolation (STD2)
);
Beschreibung
Die Funktion
cam_getpowpltparam gibt die aktuell im
CAM-Prozessor eingestellten Versorgungslagen-Plotparameter zurück.
cam_getwidedraw - CAM Breitendarstellung abfragen (CAM)
Synopsis
double cam_getwidedraw( // Breite (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
cam_getwidedraw entspricht der Breite, ab der im
CAM-Prozessor Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden.
cam_plotgerber - CAM Gerber-Ausgabe (CAM)
Synopsis
int cam_plotgerber( // Status
int; // Lage (LAY1)
string; // Gerber Dateiname
double [0.00001,0.01]; // Standardlinienbreite (STD2)
double ]0.00000000053,[;// Länge einer Ploteinheit (CAM2)
int [0,1]; // Gerber Optimierung:
// 0 = Optimierung aus
// 1 = Optimierung ein
int [0,2]; // Füllverfahren:
// 0 = Linien-Füllen
// 1 = Multiblenden-Füllen
// 2 = G36/G36-Füllmodus
int [0,1]; // Kreisbogenausgabemodus:
// 0 = Kreisbogeninterpolation
// 1 = Ausg. mit Gerber I/J-Befehlen
int [0,2]; // Extended Gerber (RS-274-X) Modus:
// 0 = Kein Extended Gerber
// 1 = Ext. Gerber mit Standard-Blendentabelle
// 2 = Ext. Gerber mit dynamischer Blendentabelle
int [0,1]; // Error Reset Flag:
// 0 = alte Fehler nicht löschen
// 1 = alte Fehler löschen
& int; // Anzahl geblitzte Strukturen
& int; // Anzahl rechteckgefüllte Strukturen
& int; // Anzahl kreisgefüllte Strukturen
& int; // Anzahl multigefüllte Strukturen
& int; // Anzahl liniengefüllte Strukturen
& int; // Anzahl gezeichneter Wärmefallen
& int; // Anzahl Überzeichnungsfehler
);
Beschreibung
Die Funktion
cam_plotgerber erzeugt die Gerber-Plotdaten für die spezifizierte Lage und schreibt die Plotdaten in eine Datei. Wird für den Dateinamen eine Leerzeichenkette übergeben, so werden nur die übergebenen Parameter für Standardlinienbreite, Füllverfahren und Kreisbogen-Ausgabemodus gesetzt und ggf. die Fehleranzeige gelöscht. Der Rückgabewert dieser Funktion ist Null bei fehlerfreiem Plot, 1 bei ungültigen Parametern (Parameter nicht im Wertebereich, keine passende Blende für Standardlinienbreite, ...), und (-1) wenn Plot-Fehler aufgetreten sind. Überzeichnungsfehler werden am Bildschirm hervorgehoben (d.h. mit Highlight) dargestellt.
cam_plothpgl - CAM HP-GL-Ausgabe (CAM)
Synopsis
int cam_plothpgl( // Status
int; // Lage (LAY1)
int [1,99]; // Stiftnummer
string; // HP-GL Dateiname
double [0.1,100]; // Maßstab
double [-1.0,99]; // Geschwindigkeit ([Zentimeter/Sekunde]) oder:
// -1.0 = volle Geschwindigkeit
double [0.00001,0.01]; // Stiftbreite (STD2)
int [0,1]; // Füllmodus:
// 0 = Füllen aus
// 1 = Füllen ein
int [0,1]; // Error Reset Flag:
// 0 = alte Fehler nicht löschen
// 1 = alte Fehler löschen
& int; // Rückgabe Anzahl Überzeichnungsfehler
);
Beschreibung
Die Funktion
cam_plothpgl erzeugt die HP-GL-Plotdaten für die spezifizierte Lage und schreibt die Plotdaten in eine Datei. Wird für den Dateinamen eine Leerzeichenkette übergeben, so werden nur die übergebenen Parameter gesetzt. Der Rückgabewert dieser Funktion ist Null bei fehlerfreiem Plot, und (-1) bei ungültigen Parametern bzw. wenn Plot-Fehler aufgetreten sind. Überzeichnungsfehler werden am Bildschirm hervorgehoben dargestellt.
cam_setdblpar - CAM Doubleparameter setzen (CAM)
Synopsis
int cam_setdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Wert für dynamische Blendenexpansion hinzufügen, 0.0 = Liste löschen (STD2)
// 1 = Bitmapplotpixelauflösung (STD2)
// 2 = Letztes Bitmapplotpixelverhätnis
double; // Parameterwert
);
Beschreibung
Die Funktion
cam_setdblpar dient dazu,
CAM-Prozessor-Systemparameter vom Typ
double zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
cam_setdblpar gesetzten Systemparametern können mit der Funktion
cam_getdblpar abgefragt werden.
Siehe auch
Funktionen cam_getdblpar,
cam_getintpar,
cam_setintpar.
cam_setdrlaccuracy - CAM Bohrwerkzeugtoleranz setzen (CAM)
Synopsis
int cam_setdrlaccuracy( // Status
double [0.0,0.01]; // Bohrwerkzeugtoleranz (STD2)
);
Beschreibung
Die Funktion
cam_getdrlaccuracy setzt den Wert für die Toleranz des Bohrwerkzeugs im
CAM-Prozessor. Der Funktionsrückgabewert ergibt sich zu Null bei erfolgreicher Einstellung des Toleranzwerts oder zu einem Wert ungleich Null, wenn die Einstellung nicht vorgenommen werden konnte.
Siehe auch
Funktion
cam_getdrlaccuracy.
cam_setgenpltparam - CAM allgemeine Plotparameter setzen (CAM)
Synopsis
int cam_setgenpltparam( // Status
int [0,1]; // Alle Lagen Modus:
// 0 = Alle Lagen Modus deaktiviert
// 1 = Alle Lagen Modus aktiviert
// 2 = Plotten alle angeschlossenen Pins/Vias
// 3 = Plotten alle Pins und angeschlossene Vias
// 4 = Plotten alle Vias und angeschlossene Pins
int [0,1]; // Umrandungsmodus:
// 0 = aus
// 1 = ein
int [0,1]; // Drehung:
// 0 = Drehung 0 Grad
// 1 = Drehung 90 Grad links
int [0,5]; // Spiegelung (CAM1)
int [0,1]; // Passermarkenmodus:
// 0 = aus
// 1 = ein
double [0.0,0.01]; // Plotgenauigkeit (STD2)
double; // Plot Nullpunkt X-Koordinate (STD2)
double; // Plot Nullpunkt Y-Koordinate (STD2)
);
Beschreibung
Die Funktion
cam_setgenpltparam setzt die allgemeinen Plotparameter im
CAM-Prozessor. Der Rückgabewert der Funktion ist ungleich Null, wenn ungültige Parameter angegeben wurden.
cam_setgerberapt - CAM Gerberblende definieren (CAM)
Synopsis
int cam_setgerberapt( // Status
int [1,900]; // Blendentabellenindex
int; // Blende D-Code:
// 10..999 = gültige D-Codes
// (-1) = Blendendef. löschen
int [0,3]; // Blendentyp:
// 0 = Spezialblende
// 1 = Runde Blende
// 2 = Quadratische Blende
// 3 = Therm. Blende (Wärmefalle)
// 4 = Rechteckige Blende
int [0,2]; // Blendenzeichenmodus:
// 0 = Blende für alle Zeichenmodi
// 1 = Blende zum Blitzen
// 2 = Blende für Linienstrukturen
double [0.0,[; // Blendengröße (STD2)
double [0.0,[; // Blendengröße 2 (STD2)
);
Beschreibung
Die Funktion
cam_setgerberapt definiert eine Gerberblende mit den angegebenen Parametern unter dem angegebenen Index der aktuell im
CAM-Prozessor geladenen Blendentabelle. Wird der Wert (-1) für den D-Code angegeben, dann wird die in der angegebenen Tabellenposition eingetragene Blendendefinition gelöscht. Bei der Definition einer Spezialblende wird die Blendengröße ignoriert. Der Funktionsrückgabewert ist ungleich Null bei fehlenden bzw. ungültigen Parametern.
cam_setintpar - CAM Integerparameter setzen (CAM)
Synopsis
int cam_setintpar( // Status
int [0,[; // Parametertyp/-nummer:
// [ 0 = bae_setcolor benutzen ]
// 1 = Wärmefallenbasiswinkel
// 2 = Warnmeldemodus:
// Bit 0: SCM-Änderungs-Warnungen unterdrücken
// Bit 1: im CAM-Prozessor nicht benutzt
// Bit 2: Variantenvergleichswarnungen unterdrücken
// [ 3 = Systemparameter - kein Schreibzugriff ]
// [ 4 = Systemparameter - kein Schreibzugriff ]
// [ 5 = Systemparameter - kein Schreibzugriff ]
// [ 6 = Systemparameter - kein Schreibzugriff ]
// 7 = Skalierungsmodus Generische Printausgabe:
// 0 = Fester Skalierungsfaktor
// 1 = Skalierung auf Papiergröße/span>
// 8 = Flag - Farbtabelle gesichert
// 9 = Airlinefarbmodus:
// 0 = Airlinefarbe benutzen
// 1 = Lagenfarbe benutzen
// 10 = Bitmapumrandungsfräsmodus:
// 0 = Keine Fräsung
// 1 = Gefüllte Umrandung fräsen
// 11 = Generischer Printer Zeichenmodus:
// 0 = Farbe setzen
// 1 = Farbe mischen
// 12 = Batchausgabeflag
// 13 = Flag - Optimierung Bohrwerkzeugtabelle
// 14 = Plotvorschaumodus:
// 0 = Keine Plotvorschau
// 1 = Plotterstiftbreite
int; // Parameterwert
);
Beschreibung
Die Funktion
cam_setintpar dient dazu, Systemparameter vom Typ im
int im
CAM-Prozessor zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
cam_setintpar gesetzten Systemparametern können mit der Funktion
cam_getintpar abgefragt werden.
Siehe auch
Funktions cam_getdblpar,
cam_getintpar,
cam_setdblpar.
cam_setplotlaycode - CAM Plotlagencode setzen (CAM)
Synopsis
void cam_setplotlaycode(
int; // Lagennummer (LAY1)
int; // HP-GL-Stiftnummer (CAM4)
);
Beschreibung
Die Funktion
cam_setplotlaycode selektiert bzw. setzt die angegebene lagenspezifische HP-GL-Plot-Stiftnummer für Multilayer-Plots. Die lagenspezifischen HP-GL-Plot-Stiftnummern werden auch bei der Erzeugung von Multilayer-Plots in anderen Formaten als HP-GL ausgewertet. Positive Stiftnummern kennzeichnen hierbei Lagen, die für die Ausgabe selektiert sind, während Lagen mit negativer Stiftnummer nicht geplottet werden.
Siehe auch
Funktion
cam_getplotlaycode.
cam_setpowpltparam - CAM Versorgungslagen-Parameter setzen (CAM)
Synopsis
int cam_setpowpltparam( // Status
double [0.0,0.01]; // Min. Distanz Wärmefalle-Bohrung (STD2)
double [0.0,0.01]; // Min. Distanz Isolation-Bohrung (STD2)
double [0.0,0.01]; // Toleranz Wärmefalle-Bohrung (STD2)
double [0.0,0.01]; // Toleranz Isolation-Bohrung (STD2)
double [0.0,0.02]; // Breite Vers.-lagenumrandung (STD2)
double [0.0,0.02]; // Breite Power Plane Isolation (STD2)
);
Beschreibung
Die Funktion
cam_setpowpltparam setzt die Versorgungslagen-Plotparameter im
CAM-Prozessor. Der Rückgabewert der Funktion ist ungleich Null, wenn ungültige Parameter angegeben wurden.
cam_setwidedraw - CAM Breitendarstellung setzen (CAM)
Synopsis
int cam_setwidedraw( // Status
double ]0.0,[; // Breite (STD2)
);
Beschreibung
Die Funktion
cam_setwidedraw setzt die Breite, ab der im
CAM-Prozessor Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden. Es wird ein Wert ungleich Null zurückgegeben, wenn eine ungültige Breite spezifiziert wurde.
C.4.5 CAM-View-Funktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CV zugeordnet, d.h. diese Funktionen können im
CAM-View-Modul aufgerufen werden:
cv_aptgetcolor - CAM-View Blendenfarbe abfragen (CV)
Synopsis
int cv_aptgetcolor( // Farbwert (STD18)
int; // Blendenindex
int; // Blendenmodus
);
Beschreibung
Die Funktion
cv_aptgetcolor ermittelt den Farbwert, der in
CAM-View zur Darstellung des angegebenen Gerber-Blendentyps benutzt wird.
Siehe auch
Funktion cv_aptsetcolor.
cv_aptsetcolor - CAM-View Blendenfarbe setzen (CV)
Synopsis
int cv_aptsetcolor( // Status
int; // Blendenindex
int; // Blendenmodus
int [-33554432,33554431];
// Farbwert (STD18)
);
Beschreibung
Die Funktion
cv_aptsetcolor setzt den Farbwert, der in
CAM-View zur Darstellung des angegebenen Gerber-Blendentyps benutzt werden soll. Der Funktionsrückgabewert ist Null bei erfolgreicher Zuweisung oder ungleich Null andernfalls.
Siehe auch
Funktion cv_aptgetcolor.
cv_deldataset - CAM-View Datensatz löschen (CV)
Synopsis
int cv_deldataset( // Status
int [0,[; // Datensatz Index
);
Beschreibung
Die Funktion
cv_deldataset löscht den angebenen
CAM-View-Datensatz aus dem Arbeitsbereich. Der Funktionsrückgabewert ist Null bei erfolgreicher Ausführung der Operation oder ungleich Null andernfalls.
Siehe auch
Funktion cv_movedataset.
cv_getdblpar - CAM-View Doubleparameter abfragen (CV)
Synopsis
int cv_getdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Eingabe X-Offset (STD2)
// 1 = Eingabe Y-Offset (STD2)
// 2 = Wärmefallenisolationsbreite (STD2)
// 3 = Breitendarstellung Startbreite (STD2)
// 4 = Länge einer Gerber Plottereinheit (STD2)
& double; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
cv_getdblpar dient der Abfrage von mit
cv_setdblpar in
CAM-View gesetzten Parametern vom Typ
double . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen cv_getintpar,
cv_setdblpar,
cv_setintpar.
cv_getintpar - CAM-View Integerparameter abfragen (CV)
Synopsis
int cv_getintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Lagenabfragemodus für Gerber-Import:
// 0 = Lage für Line- und Flashstrukturen identisch
// 1 = Lagenabfrage für Line- und Flashstrukturen
// 1 = Gerber-Lagenabfrage:
// 0 = Lage nicht benutzt
// 1 = Lage benutzt
// 2 = Farbtabelle/Farbzuweisung:
// 0 = Blendenspezifische Farbtabelle/Farbzuweisung
// 1 = Lagenspezifische Farbtabelle/Farbzuweisung
// 3 = Flächenbilddarstellungsmodus:
// 0 = Füllflächenanzeige
// 1 = Umrandungsanzeige
// 4 = Via D-Code
// 5 = Wärmefallenbasiswinkel
// 6 = Gerber Optimierung:
// 0 = Koordinatenoptimierung aus
// 1 = Koordinatenoptimierung ein
// 7 = Gerber Kreisbogenmodus:
// 0 = Beliebige Gerber-Kreisbogenwinkel
// 1 = Maximal 90 Grad Gerber-Kreisbogenwinkel
// 8 = Eingabedatenspiegelungsmodus:
// 0 = Spiegeln aus
// 1 = Spiegeln an X-Achse
// 2 = Spiegeln an Y-Achse
// 3 = Spiegeln am Ursprung
// 9 = Nullzifferunterdrückung:
// 0 = Führende Nullen unterdrücken
// 1 = Nachfolgende Nullen unterdrücken
// 10 = Extended Gerber:
// 0 = Extended Gerber aus
// 1 = Extended Gerber ein
// 11 = Gerber Koordinatenangabe:
// 0 = Absolut-Koordinaten
// 1 = Inkremental-Koordinaten mit Reset
// 2 = Inkremental-Koordinaten ohne Reset
// 12 = Gerber Documentarlagenmodus:
// 0 = Flashes als Dokumentarlinie
// 1 = Flashes als Dokumentarfläche
& int; // Rückgabe Parameterwert
);
Beschreibung
Die Funktion
cv_getintpar dient der Abfrage von mit
cv_setintpar in
CAM-View gesetzten Parametern vom Typ
int . Der Funktionsrückgabewert ist Null bei erfolgreicher Abfrage oder (-1) im Fehlerfall.
Siehe auch
Funktionen cv_getdblpar,
cv_setdblpar,
cv_setintpar.
cv_movedataset - CAM-View Datensatz verschieben (CV)
Synopsis
int cv_movedataset( // Status
int [0,[; // Datensatz Index
int; // Datensatz Spiegelungsflag
double; // Datensatz Verschiebung X-Versatz (STD2)
double; // Datensatz Verschiebung Y-Versatz (STD2)
);
Beschreibung
Die Funktion
cv_movedataset verschiebt (und spiegelt) den angebenen
CAM-View-Datensatz um den spezifizierten Versatz in X- und Y-Richtung. Der Funktionsrückgabewert ist Null bei erfolgreicher Ausführung der Operation oder ungleich Null andernfalls.
Siehe auch
Funktion cv_deldataset.
cv_setdblpar - CAM-View Doubleparameter setzen (CV)
Synopsis
int cv_setdblpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Eingabe X-Offset (STD2)
// 1 = Eingabe Y-Offset (STD2)
// 2 = Wärmefallenisolationsbreite (STD2)
// 3 = Breitendarstellung Startbreite (STD2)
// 4 = Länge einer Gerber Plottereinheit (STD2)
double; // Parameterwert
);
Beschreibung
Die Funktion
cv_setdblpar dient dazu,
CAM-View-Systemparameter vom Typ
double zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
cv_setdblpar gesetzten Systemparametern können mit der Funktion
cv_getdblpar abgefragt werden.
Siehe auch
Funktionen cv_getdblpar,
cv_getintpar,
cv_setintpar.
cv_setintpar - CAM-View Integerparameter setzen (CV)
Synopsis
int cv_setintpar( // Status
int [0,[; // Parametertyp/-nummer:
// 0 = Lagenabfragemodus für Gerber-Import:
// 0 = Lage für Line- und Flashstrukturen identisch
// 1 = Lagenabfrage für Line- und Flashstrukturen
// 1 = Gerber-Lagenbenutzung:
// Parameter nur für Lesezugriff!
// 2 = Farbtabelle/Farbzuweisung:
// 0 = Blendenspezifische Farbtabelle/Farbzuweisung
// 1 = Lagenspezifische Farbtabelle/Farbzuweisung
// 3 = Flächenbilddarstellungsmodus:
// 0 = Füllflächenanzeige
// 1 = Umrandungsanzeige
// 4 = Via D-Code
// 6 = Gerber Optimierung:
// 0 = Koordinatenoptimierung aus
// 1 = Koordinatenoptimierung ein
// 7 = Gerber Kreisbogenmodus:
// 0 = Beliebige Gerber-Kreisbogenwinkel
// 1 = Maximal 90 Grad Gerber-Kreisbogenwinkel
// 8 = Eingabedatenspiegelungsmodus:
// 0 = Spiegeln aus
// 1 = Spiegeln an X-Achse
// 2 = Spiegeln an Y-Achse
// 3 = Spiegeln am Ursprung
// 9 = Nullzifferunterdrückung:
// 0 = Führende Nullen unterdrücken
// 1 = Nachfolgende Nullen unterdrücken
// 10 = Extended Gerber:
// 0 = Extended Gerber aus
// 1 = Extended Gerber ein
// 11 = Gerber Koordinatenangabe:
// 0 = Absolut-Koordinaten
// 1 = Inkremental-Koordinaten mit Reset
// 2 = Inkremental-Koordinaten ohne Reset
// 12 = Gerber Documentarlagenmodus:
// 0 = Flashes als Dokumentarlinie
// 1 = Flashes als Dokumentarfläche
int; // Parameterwert
);
Beschreibung
Die Funktion
cv_setintpar dient dazu,
CAM-View-Systemparameter vom Typ
int zu setzen. Der Funktionsrückgabewert ist Null bei erfolgreicher Parameterzuweisung oder (-1) im Fehlerfall. Die Werte von mit
cv_setintpar gesetzten Systemparametern können mit der Funktion
cv_getintpar abgefragt werden.
Siehe auch
Funktionen cv_getdblpar,
cv_getintpar,
cv_setdblpar.
C.5 IC-Design-Systemfunktionen
In diesem Abschnitt werden (in alphabetischer Reihenfolge) die in der
Bartels User Language definierten
IC-Design-Systemfunktionen beschrieben. Beachten Sie bitte die Konventionen zur Funktionsbeschreibung in
Anhang C.1.
C.5.1 IC-Design-Datenzugriffsfunktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp ICD zugeordnet, d.h. diese Funktionen können im
Chipeditor aufgerufen werden:
icd_altpinlay - IC Design Setup Alternativpinlayer (ICD)
Synopsis
int icd_altpinlay( // Alternativpinlayer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_altpinlay entspricht der in der Setupdatei angegebenen Einstellung für den in der GDS-Dateneingabe verwendeten Alternativpinlayer.
icd_cellconlay - IC Design Setup Lage interne Zellverbindungen (ICD)
Synopsis
int icd_cellconlay( // Zellverbindungslayer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_cellconlay entspricht der in der Setupdatei angegebenen Einstellung für den beim automatischen Routen zur Herstellung interner Zellverbindungen verwendeten Layer.
icd_cellscan - IC Design Setup DRC auf Zellebene (ICD)
Synopsis
int icd_cellscan( // Zell DRC-Modus
);
Beschreibung
Der Rückgabewert der Funktion
icd_cellscan entspricht der in der Setupdatei angegebenen Einstellung für den DRC auf Zellebene (0 = kein DRC für Zellstrukturen, 1 = DRC für Zellstrukturen).
icd_cellshr - IC Design Setup Zellsperrflächenoffset (ICD)
Synopsis
double icd_cellshr( // Zellsperrflächenoffset (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_cellshr entspricht der in der Setupdatei angegebenen Einstellung für die Flächenverkleinerung für die automatische Generierung von Zellsperrflächen aus der Zellumrandung.
icd_ciflayname - IC Design CIF-Ausgabelage abfragen (ICD)
Synopsis
string icd_ciflayname( // Lagenname
int [0,99]; // Lagennummer (ICD1)
);
Beschreibung
Die Funktion
icd_ciflayname ermittelt die in der Setupdatei angegebene CIF-Ausgabelagenbezeichnung für die angegebene Lage
(ICD1).
icd_cstdsiz - IC Design Setup Standardzellenhöhe abfragen (ICD)
Synopsis
double icd_cstdsiz( // Standardzellenhöhe (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_cstdsiz entspricht der in der Setupdatei angegebenen Einstellung für die vom automatischen Zellplatzierer zu verwendende Höhe von Standardzellen.
icd_defelemname - IC Design Setup default Elementname (ICD)
Synopsis
string icd_defelemname( // Default Layout Elementname
);
Beschreibung
Der Rückgabewert der Funktion
icd_defelemname entspricht dem in der Setupdatei eingestellten Defaultnamen für Chip Layoutplanelemente.
icd_deflibname - IC Design Setup default Bibliothek (ICD)
Synopsis
string icd_deflibname( // Default IC Design Bibliotheksname
);
Beschreibung
Der Rückgabewert der Funktion
icd_deflibname entspricht dem in der Setupdatei eingestellten Defaultnamen für die
IC-Design-Bibliothek.
icd_drcarc - IC Design Setup DRC Kreisbögen abfragen (ICD)
Synopsis
int icd_drcarc( // DRC Kreisbogenmodus
);
Beschreibung
Der Rückgabewert der Funktion
icd_drcarc entspricht der in der Setupdatei angegebenen Einstellung für den Design Rule Check (DRC) für Kreisbögen (0 = Kreisbögen erlaubt, 1 = keine Kreisbögen erlaubt).
icd_drcgrid - IC Design Setup DRC Raster abfragen (ICD)
Synopsis
double icd_drcgrid( // DRC Raster (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_drcgrid entspricht der in der Setupdatei angegebenen Einstellung für das durch den Design Rule Check (DRC) einzuhaltende Raster.
icd_drclaymode - IC Design Setup DRC Lagenberücksichtigung (ICD)
Synopsis
int icd_drclaymode( // Lage DRC-Modus
int [0,99]; // Lagennummer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_drclaymode entspricht der in der Setupdatei angegebenen Einstellung für den Design Rule Check (DRC) auf der angegebenen Lage (0 = kein DRC auf angegebener Lage, 1 = DRC auf angegebener Lage).
icd_drcmaxpar - IC Design Setup DRC Parallelcheck abfragen (ICD)
Synopsis
double icd_drcmaxpar( // DRC maximale Parallellänge (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_drcmaxpar entspricht der in der Setupdatei angegebenen Einstellung für die beim Design Rule Check (DRC) maximal zulässige Länge paralleler Strukturen.
icd_drcminwidth - IC Design Setup DRC minimale Strukturgröße (ICD)
Synopsis
double icd_drcminwidth( // DRC minimale Strukturgröße (STD2)
int [0,99]; // Lagennummer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_drcminwidth entspricht der in der Setupdatei angegebenen Einstellung für die beim Design Rule Check (DRC) minimal zulässige Strukturgröße für die angegebene Lage. Ein negativer Rückgabewert bedeutet, dass nur quadratische Strukturen mit exakt der angegebenen Größe erlaubt sind.
icd_drcrect - IC Design Setup DRC Orthogonalcheck abfragen (ICD)
Synopsis
int icd_drcrect( // DRC rechte Winkel Modus
);
Beschreibung
Der Rückgabewert der Funktion
icd_drcrect entspricht der in der Setupdatei angegebenen Einstellung für den Design Rule Check (DRC) für rechte Winkel (0 = beliebige Winkel erlaubt, 1 = nur rechte Winkel erlaubt).
icd_ecnlaymode - IC Design Setup Lagenconnectivity (ICD)
Synopsis
int icd_ecnlaymode( // Lage Connectivity-Modus
int [0,99]; // Lagennummer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_ecnlaymode entspricht der in der Setupdatei angegebenen Einstellung für die Connectivity auf der angegebenen Lage (0 = keine Connectivity auf der angegebenen Lage, 1 = Connectivity auf der angegebener Lage).
icd_findconpart - IC Design Bauteil in Netzliste suchen (ICD)
Synopsis
int icd_findconpart( // Status
string; // Bauteilname
& index I_CPART; // Rückgabe Netzlistenbauteil
);
Beschreibung
Die Funktion
icd_findconpart sucht den angegebenen Bauteilnamen in der Netzliste und gibt den Bauteileintrag gegebenenfalls in dem Bauteilrückgabeparameter zurück. Der Rückgabewert dieser Funktion ist ungleich Null, wenn das Bauteil nicht gefunden wurde.
Siehe auch
Funktionen icd_findconpartpin,
icd_findcontree.
icd_findconpartpin - IC Design Bauteilpin in Netzliste suchen (ICD)
Synopsis
int icd_findconpartpin( // Status
string; // Pinname
index I_CPART; // Netzlistenbauteil
& index I_CPIN; // Rückgabe Netzlistenbauteilpin
);
Beschreibung
Die Funktion
icd_findconpartpin sucht den Bauteilpin mit dem angegebenen Namen auf dem spezifizierten Netzlistenbauteil und gibt den Bauteilpineintrag gegebenenfalls in dem Bauteilpinrückgabeparameter zurück. Der Rückgabewert dieser Funktion ist ungleich Null, wenn der Bauteilpin nicht gefunden wurde.
Siehe auch
Funktionen icd_findconpart,
icd_findcontree.
icd_findcontree - IC Design Netz in Netzliste suchen (ICD)
Synopsis
int icd_findcontree( // Status
string; // Netzname
& index I_CNET; // Rückgabe Netzlisteneintrag
);
Beschreibung
Die Funktion
icd_findcontree sucht den angegebenen Netznamen in der Netzliste und gibt den Netzlisteneintrag ggf. in dem Netzrückgabeparameter zurück. Der Rückgabewert dieser Funktion ist ungleich Null, wenn das Netz nicht gefunden wurde.
Siehe auch
Funktionen icd_findconpart,
icd_findconpartpin.
icd_getrulecnt - IC Design-Element Regelanzahl abfragen (ICD)
Synopsis
int icd_getrulecnt( // Regelanzahl oder (-1) bei Fehler
int; // Object class code
int; // Object ident code (int oder Indextyp)
);
Beschreibung
Mit der Funktion
icd_getrulecnt kann die Anzahl der an ein spezifisches Objekt zugewiesenen Regeln ermittelt werden. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
I_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
I_POOL für die Objektidentifikation) durchgeführt werden. Die von
icd_getrulecnt ermittelte (nicht-negative) objektspezifische Regelanzahl wird im Rückgabewert der Funktion übergeben und bestimmt den Wertebereich für den Regelnamenslistenindex in nachfolgenden Aufrufen der Funktion
icd_getrulename zur Ermittlung von Regelnamen für das entsprechende Objekt. Der Rückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Siehe auch
Funktionen
icd_getrulename,
icd_ruleerr,
icd_rulefigatt,
icd_rulefigdet,
icd_ruleplanatt,
icd_ruleplandet,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_getrulename - IC Design-Element Regelname abfragen (ICD)
Synopsis
int icd_getrulename( // Status
int; // Object class code
int; // Object ident code (int oder Indextyp)
int [0,[; // Regelnamenslistenindex
& string; // Regelname
);
Beschreibung
Mit der Funktion
icd_getrulename können die Namen der an ein spezifisches Objekt zugewiesenen Regeln ermittelt werden. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
I_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
I_POOL für die Objektidentifikation) durchgeführt werden. Der Regelnamenslistenindex zur Auswahl der gewünschten Regel muss mindestens Null jedoch kleiner als die mit der Funktion
icd_getrulecnt abfragbare Anzahl objektspezifischer Regeln sein. Der ermittelte Regelname wird über den letzten Funktionsparameter an den Aufrufer zurückgegeben. Der Rückgabewert der Funktion
icd_getrulename ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Siehe auch
Funktionen
icd_getrulecnt,
icd_ruleerr,
icd_rulefigatt,
icd_rulefigdet,
icd_ruleplanatt,
icd_ruleplandet,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_gettreeidx - IC Design Netznummer in Netzliste suchen (ICD)
Synopsis
int icd_gettreeidx( // Status
int; // Netznummer
& index I_CNET; // Rückgabe Netzlisteneintrag
);
Beschreibung
Die Funktion
icd_gettreeidx sucht die angegebene Netznummer in der Netzliste und gibt den Netzlisteneintrag gegebenenfalls in dem Netzrückgabeparameter zurück. Der Rückgabewert ist ungleich Null, wenn die Netznummer nicht gefunden wurde.
icd_grpdisplay - IC Design Setup Gruppenlage abfragen (ICD)
Synopsis
int icd_grpdisplay( // Lagennummer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_grpdisplay entspricht der in der Setupdatei eingestellten Lage für die Gruppendarstellung.
icd_lastfigelem - Zuletzt modifiziertes IC Design Element ermitteln (ICD)
Synopsis
int icd_lastfigelem( // Status
& index I_FIGURE; // Rückgabe Element
);
Beschreibung
Die Funktion
icd_lastfigelem ermittelt das zuletzt erzeugte bzw. modifizierte IC Design Element und übergibt den entsprechenden Index aus der Figurenliste im Rückgabeparameter. Der Rückgabewert der Funktion ist Null wenn ein derartiges Element existiert, oder ungleich Null andernfalls.
icd_maccoords - IC Design Makrokoordinaten abfragen (ICD)
Synopsis
void icd_maccoords(
& double; // X-Position (STD2)
& double; // Y-Position (STD2)
& double; // Drehwinkel (STD3)
& double; // Skalierungsfaktor
& int; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
icd_maccoords gibt in den Parametern die Platzierungsdaten für das aktuell bearbeitete Makro zurück. Ein Aufruf dieser Funktion ist nur innerhalb der Makroscanfunktion von
icd_scanall,
icd_scanfelem,
icd_scanpool sinnvoll. An anderer Stelle werden Null-Defaultwerte zurückgegeben.
Siehe auch
Funktionen
icd_scanall,
icd_scanfelem,
icd_scanpool.
icd_nrefsearch - IC Design Name auf Plan suchen (ICD)
Synopsis
int icd_nrefsearch( // Status
string; // Bauteilname
& index I_FIGURE; // Rückgabe Element
);
Beschreibung
Die Funktion
icd_nrefsearch prüft, ob das angegebene Bauteil platziert ist und gibt gegebenenfalls das zugehörige Element zurück. Der Rückgabewert ist ungleich Null, wenn das Bauteil nicht gefunden wurde.
icd_outlinelay - IC Design Setup Zellumrandung Lage abfragen (ICD)
Synopsis
int icd_outlinelay( // Zellumrandungslage (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_outlinelay entspricht der in der Setupdatei angegebenen Einstellung für die Zellumrandungslage.
icd_pindist - IC Design Setup Pinaussparung abfragen (ICD)
Synopsis
double icd_pindist( // Pinaussparung (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_pindist entspricht der in der Setupdatei angegebenen Einstellung für die Aussparung von Pins bei der automatischen Generierung von Zellsperrflächen aus der Zellumrandung.
icd_plcxgrid - IC Design Setup Platzierungsraster abfragen (ICD)
Synopsis
double icd_plcxgrid( // Platzierungsraster (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_plcxgrid entspricht der in der Setupdatei angegebenen Einstellung für das Platzierungsraster in X-Richtung bei der automatischen Zellplatzierung.
icd_plcxoffset - IC Design Setup Platzierungsoffset abfragen (ICD)
Synopsis
double icd_plcxoffset( // Platzierungsoffset (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
icd_plcxoffset entspricht der in der Setupdatei angegebenen Einstellung für den Platzierungsoffset in X-Richtung bei der automatischen Zellplatzierung.
icd_routcellcnt - IC Design Setup Anzahl Stromversorgungszellen (ICD)
Synopsis
int icd_routcellcnt( // Anzahl Stromversorgungszellen
);
Beschreibung
Der Rückgabewert der Funktion
icd_routcellcnt entspricht der Anzahl der in der Setupdatei angegebenen Stromversorgungszellen.
icd_routcellname - IC Design Standardlayer Name abfragen (ICD)
Synopsis
string icd_routcellname( // Lagenname
int [0,[; // Zellindex
);
Beschreibung
Die Funktion
icd_routcellname ermittelt die in der Setupdatei unter dem angegebenen Index aufgeführte Stromversorgungszelle. Der übergebene Zellindex darf im Bereich 0 bis
icd_routcellcnt()-1 liegen.
icd_ruleerr - Regelsystem Fehlerstatus abfragen (ICD)
Synopsis
void icd_ruleerr(
& int; // Fehlercode
& string; // Fehlerstring
);
Beschreibung
Die Funktion
icd_ruleerr dient der Ermittlung des Regelsystemstatus, d.h. die Funktion
icd_ruleerr kann zur genauen Bestimmung der Fehlerursache im Falle eines fehlerhaften Aufrufs einer Regelsystemfunktion verwendet werden.
Diagnose
Zur Bestimmung der Fehlerursache sind die durch
icd_ruleerr zurückgegebenen Parameterwerte heranzuziehen. Der zurückgegebene Fehlerstring dient ggf. der Identifizierung des fehlerverursachenden Elements. Die möglichen Werte, die der Fehlercode durch die Ausführung eines Regelsystemfunktion annehmen kann, haben folgende Bedeutung:
Fehlercode | Bedeutung |
0 | Regelsystem Operation/Funktion erfolgreich beendet |
1 | Regelsystem Hauptspeicher nicht ausreichend |
2 | Regelsystem Interner Fehler <e> |
3 | Regelsystem Funktionsparameter ungültig |
128 | Regelsystem Datenbankdatei kann nicht angelegt werden |
129 | Regelsystem Datenbankdatei Lese-/Schreibfehler |
130 | Regelsystem Datenbankdatei von falschem Typ |
131 | Regelsystem Datenbankdateistruktur beschädigt |
132 | Regelsystem Datenbankdatei nicht gefunden |
133 | Regelsystem Datenbankfehler allgemein (Interner Fehler) |
134 | Regelsystem Regel <r> nicht Regeldatenbank gefunden |
135 | Regelsystem Regel in falschem Format in Datenbank (Interner Fehler <e> ) |
136 | Regelsystem Objekt nicht gefunden |
137 | Regelsystem Objekt mehrfach definiert (Interner Fehler) |
138 | Regelsystem Inkompatible Definition der Variable <v> |
139 | Regelsystem Regel <r> mit inkompatibler Compiler-Version übersetzt |
Der Fehlerstring kann je nach Fehlerfall eine Regel
<r> , eine Variable
<v> oder einen (internen) Fehlerstatus
<e> bezeichnen. Datenbankdateifehler beziehen sich auf Probleme beim Zugriff auf die Regeldatenbankdatei
brules.vdb im BAE-Programmverzeichnis. Interne Fehler weisen üblicherweise auf Implementierungslücken im Regelsystem hin und sollten in jedem Fall an Bartels gemeldet werden.
Siehe auch
Funktionen
icd_getrulecnt,
icd_getrulename,
icd_rulefigatt,
icd_rulefigdet,
icd_ruleplanatt,
icd_ruleplandet,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_rulefigatt - Regelzuweisung an Figurenelement (ICD)
Synopsis
int icd_rulefigatt( // Status
index I_FIGURE; // Figurenlistenelement
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
icd_rulefigatt erlaubt die Zuweisung von Regeln an das mit dem ersten Funktionsparameter spezifizierte Figurenlistenelement des aktuell geladenes Elements. Der zweite Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das spezifizierte Figurenlistenelement gelöscht werden. Der Rückgabewert der Funktion
icd_rulefigatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Siehe auch
Funktionen
icd_getrulecnt,
icd_getrulename,
icd_ruleerr,
icd_rulefigdet,
icd_ruleplanatt,
icd_ruleplandet,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_rulefigdet - Regelzuweisungen von Figurenelement lösen (ICD)
Synopsis
int icd_rulefigdet( // Status
index I_FIGURE; // Figurenlistenelement
);
Beschreibung
Die Funktion
icd_rulefigdet löscht alle aktuell bestehenden Regelzuweisungen an das über den Funktionsparameter spezifizierte Figurenlistenelement des aktuell geladenen Elements. Der Rückgabewert der Funktion
icd_rulefigdet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Siehe auch
Funktionen
icd_getrulecnt,
icd_getrulename,
icd_ruleerr,
icd_rulefigatt,
icd_ruleplanatt.
icd_ruleplandet,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_ruleplanatt - Regelzuweisung an aktuell geladenes Element (ICD)
Synopsis
int icd_ruleplanatt( // Status
void; // Regelname oder Regelnamensliste
);
Beschreibung
Die Funktion
icd_ruleplanatt erlaubt die Zuweisung von Regeln an das aktuell geladenes Elements. Der Funktionsparameter erlaubt dabei sowohl die Spezifikation eines einzelnen Regelnamens (d.h. eines Wertes vom Typ
string ) als auch die Angabe einer ganzen Liste von Regelnamen (d.h. eines Arrays vom Typ
string ). Beachten Sie, dass vor der Zuweisung des angegebenen Regelsatzes zunächst alle bestehenden Regelzuweisungen an das aktuelle Element gelöscht werden. Der Rückgabewert der Funktion
icd_ruleplanatt ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Siehe auch
Funktionen
icd_getrulecnt,
icd_getrulename,
icd_ruleerr,
icd_rulefigatt,
icd_rulefigdet,
icd_ruleplandet,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_ruleplandet - Regelzuweisungen von aktuell geladenem Element lösen (ICD)
Synopsis
int icd_ruleplandet( // Status
);
Beschreibung
Die Funktion
icd_ruleplandet löscht alle aktuell bestehenden Regelzuweisungen an das aktuell geladene Element. Der Rückgabewert der Funktion
icd_ruleplandet ist Null, wenn die Funktion erfolgreich beendet wurde oder ungleich Null, wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Siehe auch
Funktionen
icd_getrulecnt,
icd_getrulename,
icd_ruleerr,
icd_rulefigatt,
icd_rulefigdet,
icd_ruleplanatt,
icd_rulequery;
Neuronales Regelsystem und
Rule System Compiler.
icd_rulequery - IC Design-Element Regelabfrage durchführen (ICD)
Synopsis
int icd_rulequery( // Trefferanzahl oder (-1) bei Fehler
int; // Object class code
int; // Object ident code (int oder Indextyp)
string; // Subjektname
string; // Prädikatname
string; // Abfragekommando
& void; // Abfrageergebnis
[] // Optionale Abfrageparameter
);
Beschreibung
Die Funktion
icd_rulequery führt eine Regelabfrage für ein spezifisches Objekt durch. Die Abfrage kann für das aktuell geladene Element (Objektklasse 0 mit
int -Wert 0 für die Objektidentifikation), ein Element aus der Figurenliste des aktuell geladenen Elements (Objektklasse 1 mit gültigem Wert vom Typ index
I_FIGURE für die Objektidentifikation) oder ein Poolelement (Objektklasse 2 mit gültigem Wert vom Typ index
I_POOL für die Objektidentifikation) durchgeführt werden. Zur Durchführung der Abfrage müssen sowohl ein Regelsubjekt als auch ein Regelprädikat namentlich angegeben werden. Zusätzlich ist ein Abfragekommando zu spezifizieren. Das Abfragekommando kann Platzhalter für Wertvorgaben und einen Abfrageoperator enthalten. Folgende Abfrageoperatoren stehen zur Verfügung:
?d | zur Abfrage von int -Werten |
?f | zur Abfrage von double -Werten |
?s | zur Abfrage von string -Werten |
Dem Abfrageoperator kann wahlweise einer der folgenden Selektionsoperatoren vorangestellt werden:
+ | zur Abfrage des Maximums aller gefundenen Werte |
- | zur Abfrage des Minimums aller gefundenen Werte |
Standardmäßig, d.h. bei Auslassung des Selektionsoperators wird der
+ -Operator verwendet. Der über die Abfrage gefundene Werteintrag wird im Funktionsparameter für das Abfrageergebnis zurückgegeben. Hierbei ist sicherzustellen, dass der Datentyp des Parameters für das Abfrageergebnis mit dem Abfragedatentyp übereinstimmt
(int für ?d ,
double für ?f ,
string für ?s ). Neben dem Abfrageoperator können folgende Platzhalter für Wertvorgaben im Abfragekommando spezifiziert werden:
%d | zur Angabe von int -Werten |
%f | zur Angabe von double -Werten |
%s | zur Angabe von string -Werten |
Für jeden im Abfragekommando spezifizierten Platzhalter für Wertvorgaben ist ein optionaler Abfrageparameter an die Funktion
icd_rulequery zu übergeben. Die Reihenfolge dieser optionalen Parameter sowie deren Datentypen müssen mit den Spezifikationen im Abfragekommando übereinstimmen. Nach erfolgreicher Abarbeitung der Regelabfrage wird im Rückgabewert die (nicht-negative) Anzahl der gefundenen Einträge an den Aufrufer zurückgegeben. Der Rückgabewert ergibt sich zu (-1), wenn ein Fehler aufgetreten ist. Im Fehlerfall kann die genaue Fehlerursache mit Hilfe der Funktion
icd_ruleerr ermittelt werden.
Beispiele
Sofern die Regel
rule somerule
{
subject subj
{
pred := ("A", 2);
pred := ("A", 4);
pred := ("B", 1);
pred := ("C", 3);
pred := ("B", 6);
pred := ("D", 5);
pred := ("D", 6);
pred := ("A", 3);
}
}
definiert und dem aktuell geladenen Element zugewiesen ist, würde der
icd_rulequery-Aufruf
hitcount = icd_rulequery(0,0,"subj","pred","%s ?d",intresult,"A") ;
die
int -Variable
hitcount auf 3 und die
int -Variable
intresult auf 4 setzen, während der Aufruf
hitcount = icd_rulequery(0,0,"subj","pred","-?s %d",strresult,6) ;
die Variable
hitcount auf 2 und die
string -Variable
strresult auf
B setzt.
Siehe auch
Funktionen
icd_getrulecnt,
icd_getrulename,
icd_ruleerr,
icd_rulefigatt,
icd_rulefigdet,
icd_ruleplanatt,
icd_ruleplandet;
Neuronales Regelsystem und
Rule System Compiler.
icd_scanall - IC Design Scan über alle Elemente (ICD)
Synopsis
int icd_scanall( // Scan Status
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
int [0,1]; // Connectivity Scan Flag:
// 0 = kein Scan
// 1 = Scan erlaubt
* int; // Makrofunktion
* int; // Polygonfunktion
* int; // Leiterbahnfunktion
* int; // Textfunktion
* int; // Lagencheckfunktion
* int; // Levelcheckfunktion
);
Beschreibung
Die Funktion
icd_scanall scannt alle auf dem aktuell geladenen Element platzierten Elemente über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben. Der Rückgabewert der Funktion
icd_scanall ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
icd_scanall zurückgemeldet hat.
Makrofunktion
int macrofuncname(
index I_MACRO macro, // Makro Index
index I_POOL pool, // Pool Element Index
int macinws, // Makro in Arbeitsbereich Flag (STD10)
string refname, // Makro Referenzname
index I_LEVEL level, // Makro Level
int stkcnt // Makro Stacktiefe
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Die Makroplatzierungsdaten können mit der Funktion
icd_maccoords abgefragt werden. Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan für dieses Makro nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll.
Polygonfunktion
int polyfuncname(
index I_POLY poly, // Polygondaten
int layer, // Lage (ICD1)
int polyinws, // Polygon in Arbeitsbereich Flag (STD10)
int tree, // Netznummer oder (-1)
index I_LEVEL level // Polygon Level
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Leiterbahnfunktion
int pathfuncname(
index I_LINE path, // Leiterbahndaten
int layer, // Lage (ICD1)
int pathinws, // Bahn in Arbeitsbereich Flag (STD10)
index I_LEVEL level // Bahn Level
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Textfunktion
int textfuncname(
index I_TEXT text, // Textdaten
double x, // X-Koordinate (STD2)
double y, // Y-Koordinate (STD2)
double angle, // Drehwinkel (STD3)
int mirr, // Spiegelung (STD14)
int layer, // Lage (ICD1)
double size, // Text Größe (STD2)
string textstr, // Textzeichenkette
int textinws // Text in Arbeitsbereich Flag (STD10)
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
Lagencheckfunktion
int laycheckfuncname(
int layer, // Lage (ICD1)
int class // Elementklasse (STD1)
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan bei der übergebenen Lage nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll. Bei Beschränkung auf die interessierenden Lagen durch diese Funktion wird der Scanvorgang erheblich beschleunigt.
Levelcheckfunktion
int levcheckfuncname(
index I_LEVEL level // Level
)
{
// Verarbeitungsprogramm
:
return(contscan);
}
Der Rückgabewert dieser Funktion sollte gleich Null sein, wenn der Scan bei dem übergebenen Level nicht weitergeführt werden soll, (-1) wenn ein Fehler aufgetreten ist und 1 wenn weitergescannt werden soll. Bei Beschränkung auf die interessierenden Levels durch diese Funktion wird der Scanvorgang erheblich beschleunigt.
Siehe auch
Funktionen
icd_maccoords,
icd_scanfelem,
icd_scanpool.
icd_scanfelem - IC Design Scan über Figurenelement (ICD)
Synopsis
int icd_scanfelem( // Scan Status
index I_FIGURE; // Figurenelement
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
int [0,1]; // Connectivity Scan Flag:
// 0 = kein Scan
// 1 = Scan erlaubt
* int; // Makrofunktion
* int; // Polygonfunktion
* int; // Leiterbahnfunktion
* int; // Textfunktion
* int; // Lagencheckfunktion
* int; // Levelcheckfunktion
);
Beschreibung
Die Funktion
icd_scanfelem scannt das angegebene Figurenelement über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben (Definition der referenzierten Anwenderfunktionen siehe
icd_scanall). Der Rückgabewert der Funktion
icd_scanfelem ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
icd_scanfelem zurückgemeldet hat.
Siehe auch
Funktionen
icd_maccoords,
icd_scanall,
icd_scanpool.
icd_scanpool - IC Design Scan über Poolelement (ICD)
Synopsis
int icd_scanpool( // Scan Status
void; // Poolelement
double; // X-Offset (STD2)
double; // Y-Offset (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Element in Arbeitsbereich Flag (STD10)
int [0,1]; // Connectivity Scan Flag:
// 0 = kein Scan
// 1 = Scan erlaubt
* int; // Makrofunktion
* int; // Polygonfunktion
* int; // Leiterbahnfunktion
* int; // Textfunktion
* int; // Lagencheckfunktion
* int; // Levelcheckfunktion
);
Beschreibung
Die Funktion
icd_scanpool scannt das angegebene Poolelement über alle Hierarchiestufen. Dabei werden für alle gefundenen Elemente die referenzierten Anwenderfunktionen aufgerufen. Soll ein Funktionstyp nicht aufgerufen werden, so ist für den entsprechenden Parameter
NULL anzugeben (Definition der referenzierten Anwenderfunktionen siehe
icd_scanall). Der Rückgabewert der Funktion
icd_scanpool ist ungleich Null, wenn ungültige Parameter angegeben wurden, oder wenn eine der referenzierten Anwenderfunktionen einen Fehler an die Funktion
icd_scanpool zurückgemeldet hat.
Siehe auch
Funktionen
icd_maccoords,
icd_scanall,
icd_scanfelem.
icd_stdlayname - IC Design Standardlayer Name abfragen (ICD)
Synopsis
string icd_stdlayname( // Lagenname
int [0,99]; // Lagennummer (ICD1)
);
Beschreibung
Die Funktion
icd_stdlayname ermittelt die in der Setupdatei angegebene Lagenbezeichnung für die angegebene Lage
(ICD1).
icd_stdpinlay - IC Design Setup Standardpinlayer (ICD)
Synopsis
int icd_stdpinlay( // Standardpinlayer (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
icd_stdpinlay entspricht der in der Setupdatei angegebenen Einstellung für den in der GDS-Dateneingabe verwendeten Standardpinlayer.
icd_vecttext - IC Design Text vektorisieren (ICD)
Synopsis
int icd_vecttext( // Status
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
int [0,1]; // Spiegelung (STD14)
double ]0.0,[; // Text Größe (STD2)
int [0,1]; // Physical Flag:
// 0 = Logical
// 1 = Physical
int [0,2]; // Lagenspiegelung:
// 0 = Spiegelung aus
// 1 = X-Spiegelung
// 2 = Y-Spiegelung
int [0,[; // Text Stil
string; // Text Zeichenkette
* int; // Vektorisierungsfunktion
);
Beschreibung
Die Funktion
icd_vecttext vektorisiert den übergebenen Text unter Verwendung des aktuell geladenen Zeichensatzes. Dazu wird für jedes Textsegment die übergebene Vektorisierungsfunktion aufgerufen. Der Rückgabewert dieser Funktion ist ungleich Null, wenn ungültige Parameter angegeben wurden oder die vom Benutzer definierte Vektorisierungsfunktion einen Wert ungleich Null zurückgegeben hat.
Vektorisierungsfunktion
int vecfuncname(
double x1, // X-Koordinate erster Punkt (STD2)
double y1, // Y-Koordinate erster Punkt (STD2)
double x2, // X-Koordinate zweiter Punkt (STD2)
double y2 // Y-Koordinate zweiter Punkt (STD2)
)
{
// Verarbeitungsprogramm
:
return(errstat);
}
Der Rückgabewert dieser Funktion sollte ungleich Null sein, wenn ein Fehler aufgetreten ist.
C.5.2 Chipeditor-Funktionen
Die nachfolgend aufgelisteten Systemfunktionen sind dem Aufruftyp CED zugeordnet, d.h. diese Funktionen können im
Chipeditor aufgerufen werden:
ced_asklayer - CED Lagenauswahl (CED)
Synopsis
int ced_asklayer( // Status
& int; // Lagenrückgabe (ICD1)
);
Beschreibung
Die Funktion
ced_asklayer aktiviert im
Chipeditor ein Lagenauswahlmenü. Der Rückgabewert ist Null bei erfolgter Lagenwahl oder (-1) bei Wahl des Menüpunktes Abbruch.
ced_delelem - CED Element löschen (CED)
Synopsis
int ced_delelem( // Status
& index I_FIGURE; // Element
);
Beschreibung
Die Funktion
ced_delelem löscht das übergebene Element aus der Elementliste. Der Rückgabewert ist Null bei erfolgter Löschung und (-1), wenn das übergebene Element ungültig ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Siehe auch
Funktion ced_drawelem.
ced_drawelem - CED Elementanzeige aktualisieren (CED)
Synopsis
void ced_drawelem(
index I_FIGURE; // Element
int [0, 4]; // Zeichenmodus (STD19)
);
Beschreibung
Die Funktion
ced_drawelem aktualisiert die Anzeige des angegebenen Elements unter Verwendung des spezifizierten Zeichenmodus.
Siehe auch
Funktion ced_delelem.
ced_elemangchg - CED Elementwinkel ändern (CED)
Synopsis
int ced_elemangchg( // Status
& index I_FIGURE; // Element
double; // Neuer Winkel (STD3)
);
Beschreibung
Die Funktion
ced_elemangchg ändert den Drehwinkel des übergebenen Elements. Der Drehwinkel wird ausgehend vom Nullwinkel eingestellt, d.h. der vorhergehende Drehwinkel des Elements hat keinen Einfluss auf das Ergebnis. Die Winkelangabe wird als Bogenmaßwert interpretiert. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht drehbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_elemfixchg - CED Element fixiert-Flag ändern (CED)
Synopsis
int ced_elemfixchg( // Status
& index I_FIGURE; // Element
int [0,1]; // Neues fixiert Flag (STD11)
);
Beschreibung
Die Funktion
ced_elemfixchg ändert den Fixiert-Modus des übergebenen Elements. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht fixierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_elemgrpchg - CED Element Gruppenflag ändern (CED)
Synopsis
int ced_elemgrpchg( // Status
index I_FIGURE; // Element
int [0,2]; // Neues Gruppenflag (STD13)
);
Beschreibung
Die Funktion
ced_elemgrpchg ändert die Gruppenzugehörigkeit des übergebenen Elements. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es sich nicht um ein gruppenselektierbares Element handelt. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
ced_elemlaychg - CED Elementlage ändern (CED)
Synopsis
int ced_elemlaychg( // Status
& index I_FIGURE; // Element
int; // Neue Lage (ICD1)
);
Beschreibung
Die Funktion
ced_elemlaychg ändert die Lagenzugehörigkeit des übergebenen Elements. Die Lage kann für Flächen, Leiterbahnen und Texte geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn die Lage nicht änderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_elemmirrchg - CED Elementspiegelung ändern (CED)
Synopsis
int ced_elemmirrchg( // Status
& index I_FIGURE; // Element
int [0,2]; // Neuer Spiegelungsmodus (STD14|ICD3)
);
Beschreibung
Die Funktion
ced_elemmirrchg ändert den Spiegelungsmodus des übergebenen Elements. Der Spiegelungsmodus kann bei Flächen, Texten, benannten und unbenannten Referenzen geändert werden. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig ist oder (-2) wenn es keinen Spiegelungsmodus besitzt. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_elemposchg - CED Elementposition ändern (CED)
Synopsis
int ced_elemposchg( // Status
& index I_FIGURE; // Element
double; // X-Position (STD2)
double; // Y-Position (STD2)
);
Beschreibung
Die Funktion
ced_elemposchg ändert die Position des übergebenen Elements. Bei Flächen/Leiterbahnen wird die Fläche/Leiterbahn so verschoben, dass der erste Punkt der Fläche/Leiterbahn auf der angegebenen Position zu liegen kommt. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht positionierbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_elemsizechg - CED Elementgröße ändern (CED)
Synopsis
int ced_elemsizechg( // Status
& index I_FIGURE; // Element
double; // Neue Größe (STD2)
);
Beschreibung
Die Funktion
ced_elemsizechg ändert die Größe des übergebenen Elements. Bei Leiterbahnen wird mit der Größe die Leiterbahnbreite spezifiziert. Bei benannten und unbenannten Referenzen gibt die Größe den Skalierungsfaktor an. Eine Größenänderung ist nur bei Texten, Leiterbahnen, benannten und unbenannten Bauteilreferenzen möglich. Der Rückgabewert ist Null bei erfolgter Änderung, (-1) wenn das übergebene Element ungültig oder (-2) wenn es nicht größenveränderbar ist. Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_getlaydispmode - CED Lagenanzeigemodus abfragen (CED)
Synopsis
int ced_getlaydispmode( // Anzeigemodus (ICD9)
int; // Lage (ICD1)
);
Beschreibung
Die Funktion
ced_getlaydispmode ermittelt den Bildschirmanzeigemodus
(ICD9) für die angegebene Lage.
ced_getmincon - CED Mincon-Funktion abfragen (CED)
Synopsis
int ced_getmincon( // Funktionstyp (ICD10)
);
Beschreibung
Der Rückgabewert der Funktion
ced_getmincon entspricht dem im
Chipeditor aktuell eingestellten Wert des
-Modus für die Airlineanzeige
(ICD10).
ced_getpathwidth - CED Bahnenstandardbreite abfragen (CED)
Synopsis
void ced_getpathwidth(
& double; // Schmal Standardbreite (STD2)
& double; // Breit Standardbreite (STD2)
);
Beschreibung
Die Funktion
ced_getpathwidth gibt in den beiden Parametern die Werte der aktuell im
Chipeditor eingestellten Standardbreiten für schmale und breite Leiterbahnen zurück.
ced_getpickpreflay - CED Vorzugslage abfragen (CED)
Synopsis
int ced_getpickpreflay( // Vorzugslage (ICD1)
);
Beschreibung
Der Rückgabewert der Funktion
ced_getpickpreflay entspricht der Vorzugslage
(ICD1) für Elementwahl im
Chipeditor.
ced_getwidedraw - CED Breitendarstellung abfragen (CED)
Synopsis
double ced_getwidedraw( // Breite (STD2)
);
Beschreibung
Der Rückgabewert der Funktion
ced_getwidedraw entspricht der Breite, ab der im
Chipeditor Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden.
ced_groupselect - CED Gruppenselektion (CED)
Synopsis
int ced_groupselect( // Anzahl Änderungen oder (-1) bei Fehler
int [0,3]; // Element Selektionstyp:
// 0 = Selektion nach Elementtyp
// 1 = Selektion nach Lage
// 2 = Selektion nach Fixiertflag
// 3 = Selektion nach Sichtbarkeit
int; // Element Selektionswert entspr. Selektionstyp:
// 0 - Elementtyp (0|ICD5)
// 1 - Elementlage (ICD1)
// 2 - Element-Fixiertflag (STD11)
// 3 - Elementsichtbarkeit (0|1)
int [0,2]; // Neues Gruppenflag (STD13)
);
Beschreibung
Die Funktion
ced_groupselect ändert die Gruppenzugehörigkeit aller Element des spezifizierten Typs bzw. mit der spezifizierten Eigenschaft. Der Rückgabewert entspricht der Anzahl der durchgeführtem Änderungen oder dem Wert (-1) bei fehlerhaften bzw. inkompatiblen Parameterangaben. Der Selektionswert Null bei der Selektion nach dem Elementtyp kann dazu benutzt werden, Elemente beliebigen Typs auszuwählen.
Warnung
Interne
IC-Design-Elementtypen wie z.B. die Standardvia-Definition(en) sind von der Gruppen(de)selektion mit
ced_groupselect ausgenommen, um ein versehentliches Löschen bzw. Ändern derartiger Elemente durch die anschließende Anwendung anderer Gruppenfunktionen zu verhindern.
ced_highlnet - CED Highlight Netz ein/aus (CED)
Synopsis
int ced_highlnet( // Status
int [0,[; // Netznummer
int [0,1]; // Highlightmodus (0 = aus, 1 = ein)
);
Beschreibung
Die Funktion
ced_highlnet setzt den Highlightmodus des Netzes mit der übergebenen Netznummer. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Highlightmodus oder eine ungültige Netznummer angegeben wurde.
ced_layergrpchg - CED Gruppenselektion nach Lage (CED)
Synopsis
int ced_layergrpchg( // Anzahl Elemente
int; // Lagennummer (ICD1)
int [0,2]; // Neues Gruppenflag (STD13)
);
Beschreibung
Die Funktion
ced_layergrpchg ändert die Gruppenzugehörigkeit aller Elemente, die auf der angegebenen Lage platziert sind. Der Rückgabewert ist die Anzahl der (de)selektierten Elemente oder (-1) bei Fehler.
ced_partaltmacro - CED Bauteilzellentyp ändern (CED)
Synopsis
int ced_partaltmacro( // Status
string; // Bauteilname
string; // Neuer Zellen-Bibiotheksteilname
);
Beschreibung
Die Funktion
ced_partaltmacro ändert den Zellentyp des angegebenen Bauteiles. Ein Rückgabewert von Null zeigt eine erfolgreiche Änderung an. Bei ungültigen Eingabedaten wird (-1) zurückgegeben, (-2) wenn der neue Zellentyp nicht alle für dieses Bauteil in der Netzliste verwendeten Pins enthält (Zellenänderung wird trotzdem durchgeführt), (-3) wenn das Bauteil nicht in der Netzliste vorhanden ist, (-4) wenn der neue Zellentyp für dieses Bauteil nicht erlaubt ist, (-5) wenn der neue Zellentyp nicht ladbar ist, (-6) wenn die Zellendaten nicht in die Jobdatenbank kopiert werden konnten und (-7) wenn versucht wurde, in einem Programmlauf einen Bauteilzellentyp mehrfach umzuändern (z.B.
a in
b und anschließend
b in
c ). Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion sollte nicht innerhalb von
I_CPART-Index-Schleifen aufgerufen werden, da die vor dem Aufruf der Funktion belegten
I_CPART-Indexvariablen anschließend ungültig sind.
ced_partnamechg - CED Bauteilname in Netzliste ändern (CED)
Synopsis
int ced_partnamechg( // Status
string; // Alter Bauteilname
string; // Neuer Bauteilname
);
Beschreibung
Die Funktion
ced_partnamechg ändert den Namen des angegebenen Bauteiles in der Netzliste. Ein Rückgabewert von Null zeigt eine erfolgreiche Änderung an. Bei ungültigen Eingabedaten wird (-1) zurückgegeben, (-2) wenn das Bauteil nicht platziert ist, (-3) wenn das Bauteil nicht in der Netzliste vorhanden ist, (-4) wenn der neue Name schon definiert ist und (-5) wenn versucht wurde, in einem Programmlauf ein Bauteil mehrfach umzubenennen (z.B.
a in
b und anschließend
b in
c ). Die Änderung kann nach dem Programmlauf mit
wieder rückgängig gemacht werden.
Warnung
Diese Funktion verändert die Netzliste und erfordert daher einen anschließenden
-Lauf. Die Funktion sollte auch nicht innerhalb von
I_CPART-Index-Schleifen aufgerufen werden, da die vor dem Aufruf der Funktion belegten
I_CPART-Indexvariablen anschließend ungültig sind.
ced_pickelem - CED Element selektieren (CED)
Synopsis
int ced_pickelem( // Status
& index I_FIGURE; // Rückgabe Element
int [1,8]; // Elementtyp (ICD5 außer 6)
);
Beschreibung
Mit der Funktion
ced_pickelem kann vom Benutzer mit der Maus ein Element des gewünschten übergebenen Typs selektiert werden. Der Rückgabewert ist Null bei erfolgter Selektion und (-1) wenn an der Pickposition kein Element des gewünschten Typs gefunden wurde.
ced_setlaydispmode - CED Lagenanzeigemodus setzen (CED)
Synopsis
int ced_setlaydispmode( // Status
int [0,99]; // Lage (ICD1)
int [0,127]; // Anzeigemodus (ICD9)
);
Beschreibung
Die Funktion
ced_setlaydispmode setzt den Bildschirmanzeigemodus für die angegebenen Lage. Der Rückgabewert ist ungleich Null, wenn der Anzeigemodus nicht gesetzt werden konnte.
ced_setmincon - CED Mincon-Funktion setzen (CED)
Synopsis
int ced_setmincon( // Status
int [0,8]; // Funktionstyp (ICD10)
);
Beschreibung
Die Funktion
ced_setmincon setzt den
-Modus für die Airlineanzeige im
Chipeditor. Es wird ein Wert ungleich Null zurückgegeben, wenn ein ungültiger Modus angegeben wurde.
ced_setpathwidth - CED Bahnenstandardbreiten setzen (CED)
Synopsis
int ced_setpathwidth( // Status
double ]0.0,[; // Schmal Standardbreite (STD2)
double ]0.0,[; // Breit Standardbreite (STD2)
);
Beschreibung
Die Funktion
ced_setpathwidth setzt die Standardbreiten für schmale und breite Leiterbahnen im
Chipeditor. Es wird ein Wert ungleich Null zurückgegeben, wenn ungültige Breiten spezifiziert wurden.
ced_setpickpreflay - CED Vorzugslage setzen (CED)
Synopsis
int ced_setpickpreflay( // Status
int; // Lage (ICD1)
);
Beschreibung
Die Funktion
ced_setpickpreflay setzt die Vorzugslage für Elementwahl im
Chipeditor. Es wird ein Wert ungleich Null zurückgegeben, wenn keine gültige Lage angegeben wurde.
ced_setwidedraw - CED Breitendarstellung setzen (CED)
Synopsis
int ced_setwidedraw( // Status
double ]0.0,[; // Breite (STD2)
);
Beschreibung
Die Funktion
ced_setwidedraw setzt die Breite, ab der im
Chipeditor Leiterbahnen auf dem Bildschirm in Flächendarstellung angezeigt werden. Es wird ein Wert ungleich Null zurückgegeben, wenn eine ungültige Breite spezifiziert wurde.
ced_storepart - CED Bauteil platzieren (CED)
Synopsis
int ced_storepart( // Status
string; // Bauteilname
string; // Bauteil Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
double; // Skalierungsfaktor
int [0,1]; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
ced_storepart platziert ein Bauteil mit den angegebenen Parametern auf dem gegenwärtig geladenen Chip Layoutelement. Wird eine Leerzeichenkette für den Bauteilnamen übergeben, so wird das nächste unplatzierte Bauteil der Netzliste verwendet. Der Rückgabewert ist gleich Null, wenn das Bauteil erfolgreich platziert wurde, (-1) bei ungültigen Daten, (-2) wenn alle Bauteile bereits platziert sind, (-3) wenn das Bauteil schon platziert ist, (-4) wenn es nicht ladbar ist, (-5) wenn die Bauteilpins nicht mit der Netzliste übereinstimmen und (-6) wenn die Bauteildaten nicht in die Jobdatenbank kopiert werden konnten.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_storepath - CED Bahn platzieren (CED)
Synopsis
int ced_storepath( // Status
int [0,99]; // Lage (ICD1)
double ]0.0,[; // Bahnbreite (STD2)
);
Beschreibung
Die Funktion
ced_storepath erzeugt aus der internen Punktliste unter Verwendung der angegebenen Parameter eine Leiterbahn auf dem gegenwärtig geladenen Chip Layoutelement. Der Rückgabewert ist gleich Null, wenn die Bahn erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei ungültigen Parametern, oder (-3) wenn die Punktliste ungültig ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_storepoly - CED Fläche platzieren (CED)
Synopsis
int ced_storepoly( // Status
int; // Lage (ICD1)
int [1,4]; // Polygontyp (ICD4)
int [0,2]; // Spiegelungsmodus (ICD3)
);
Beschreibung
Die Funktion
ced_storepoly generiert aus der mit
bae_storepoint erzeugten internen Punktliste unter Verwendung der angegebenen Parameter eine Fläche auf dem gegenwärtig geladenen IC-Layoutelement. Der Rückgabewert ist gleich Null, wenn die Fläche erfolgreich platziert wurde, (-1) wenn kein gültiges Element geladen ist, (-2) bei ungültigen Parametern, oder (-3) wenn die Punktliste für den gegebenen Flächentyp ungültig ist.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
ced_storetext - CED Text platzieren (CED)
Synopsis
int ced_storetext( // Status
string; // Textzeichenkette
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
double ]0.0,[; // Text Größe (STD2)
int; // Lage (ICD1)
int [0,1]; // Spiegelungsmodus (STD14)
);
Beschreibung
Die Funktion
ced_storetext platziert einen Text mit den angegebenen Parametern auf dem gegenwärtig geladenen Chip Layoutelement. Der Rückgabewert ist ungleich Null, wenn ungültige Daten übergeben wurden.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden. Es können maximal 40 Zeichen der übergebenen Textzeichenkette gespeichert werden. Bei Übergabe längerer Zeichenketten gibt die Funktionen den Fehlerstatus zur Kennzeichnung ungültiger Parameter zurück.
ced_storeuref - CED Via bzw. Subbauteil platzieren (CED)
Synopsis
int ced_storeuref( // Status
string; // Referenz Bibiotheksteilname
double; // X-Koordinate (STD2)
double; // Y-Koordinate (STD2)
double; // Drehwinkel (STD3)
double; // Skalierungsfaktor
int [0,1]; // Spiegelung (STD14) (für Subbauteile)
);
Beschreibung
Die Funktion
ced_storeuref platziert eine namenlose Referenz mit den angegebenen Parametern auf dem gegenwärtig geladenen Layoutelement. Namenlose Referenzen sind die Vias auf Chip Layoutebene und die Subbauteile auf Bauteilebene. Spiegelung, Skalierung und Drehwinkel werden für Vias ignoriert. Der Rückgabewert ist gleich Null, wenn die Referenz erfolgreich platziert wurde, (-1) bei ungültigen Daten, (-2) wenn sie nicht ladbar ist und (-3) wenn die Referenzdaten nicht in die Jobdatenbank kopiert werden konnten.
Warnung
Diese Funktion ändert die aktuelle Figurenliste und sollte daher mit Vorsicht in
forall -Schleifen zur Iteration von
I_FIGURE-Indexvariablen verwendet werden, um undefinierte Ergebnisse beim Zugriff auf die Figurenliste bzw. Endlosschleifen zu vermeiden.
Systemfunktionen © 1985-2025 Oliver Bartels F+E • Aktualisiert: 02. December 2006, 15:41 [UTC]
|