/***** * * Michael Riff * Object software version 1.0 Okto 2013. * * Globale Definitionen fuer das Graphiken Ausparsen. * Definitionen von Variablen Typen fuer den Parser. * (Nicht alle werden in der letzten Version gebraucht). * * Version 1.6: 13 June 2016 * Increased MAXGRAPHS constant to 30. *****/ #ifndef MAC_UI #include #include #else #include "UX_StdDefs.h" #endif #include "OperandClasses.h" /* Constantes dˆ©finissant la taille des diffˆ©rents tableaux*/ #define MAX_PARAM 10 #define NAN_MASK 0x7FF0000000000000 typedef union { double PtFlottant; unsigned int Brut[2]; } Type_Erreur; /* Initial groesse der Rechnungsformeln Tafel. Diese Tafel wird nicht mit realloc erweitert */ #define MAXGRAPHS 30 /* Typ Definition zur Speicherung aller Graphiken (Rechnungsformeln) */ typedef struct GRAPH { long GraphicID; char grphKey[20]; // Name der graphik (zur mnemotechnische ID) char lytFile[30]; // File fuer TCL das die Ansicht der Graphik angibt int parmAnzahl; // Anzahlt der Eingabeparameter von Rechnung float Resolution[4]; // Increment Schritt fuer jeder der max 4 Parameter // weil die Eingabe mit Tasten + - geht. /* Neue Felder fuer Auslesen der Graphiken aus einer Text Datei */ GeneralOperand **Rechnung; int numFunctions; #ifdef MIT_VAR VarTableType *Vars; /* Referenz auf der Tabelle der zu der Graphik gehoerenden Variablentabelle */ unsigned short numVar; #endif } Grph_struct; extern GeneralOperand **Fonction; extern unsigned long numFunctions; extern unsigned long maxFonctions; extern Grph_struct *Graphs; extern int numGraphs; extern int aktGraphik; int InitParse(void); void Quit(void); void CleanUp(void); void Debug(void); /* Token für die Felder der Datei lesen ------------------------------------*/ typedef enum tokenType { GRAPHIK, ID, NAME, DATEI, PARAMETER, RESOLUTIONS, FORMEL, SPEICHER_KODE, SPEICHER_STACK } token; token yybis2lex(void); int yybis2parse(void);