This documenta- tion describes the current state of development.
Prokee Modules:
GUI Elements:
GUI Interactions:
GUI Layouts:
Games/Demos:
Third Party Libraries:
Inheritance:
Constructors:AbstractDfa *createDfa(void *context,const void *(*owner_callback)(const void *s,const void *c))AbstractDfa *createDfa(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c))AbstractDfa *createDfa(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c),const void *(*error)(const void *s,const void *c))
Methods:void addNode(const char *name,const void *(*node_callback)(const void *s,const void *c))bool addLink(const char *name_from,const char *name_to,std::vector< int > tokens,const void *(*callback)(const void *s,const void *c))bool addLink(const char *name_from,const char *name_to,int *tokens,const void *(*callback)(const void *s,const void *c))bool addLink(const char *name_from,const char *name_to,int token,const void *(*callback)(const void *s,const void *c))bool addLink(const char *name_from,const char *name_to,std::vector< int > tokens)bool addLink(const char *name_from,const char *name_to,const void *(*callback)(const void *s,const void *c))A deterministic finite automaton.
Dfa()
AbstractDfa *AbstractDfaInterface::createDfa()
DfaWrapper()
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
Dfa.
...Dfa(const void *(*owner_callback)(const void *s,const void *c))
AbstractDfa *AbstractDfaInterface::createDfa(const void *(*owner_callback)(const void *s,const void *c))
DfaWrapper(const void *(*owner_callback)(const void *s,const void *c))
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
| Type | Name | Direction | Description |
| const void *(*owner_callback) ( const void *s, const void *c ) | [IN] |
Pointer auf die Callback-Funktion die Informationen zu Callback-Funktionen zurückgibt.
Beispiel:
const void *info_func(const void *s,const void *c)
{
if(strcmp((const char *)s,"getFunctionName")==0)
{
if(c==err_func)return "err_func";
if(c==node_func)return "node_func";
if(c==link_func)return "link_func";
if(c==info_func)return "info_func";
return "(unknown function)";
}
else if(strcmp((const char *)s,"getFunctionPointer")==0)
{
if(strcmp((const char *)c,"err_func")==0)return (const void *)err_func;
if(strcmp((const char *)c,"node_func")==0)return (const void *)node_func;
if(strcmp((const char *)c,"link_func")==0)return (const void *)link_func;
if(strcmp((const char *)c,"info_func")==0)return (const void *)info_func;
}
return 0;
}
Parameter
s: Ein Pointer auf einen null-terminierten String.
c: Ein Pointer auf einen null-terminierten String oder ein Pointer auf eine Callback-Funktion.
Return value
Entweder der Funktionsname (als null-terminierter String) oder ein Pointer auf die Callback-Funktion, welche durch Parameter c angegeben wird. Existiert die nachgefragte Funktion nicht, so soll die Funktion anstelle des Funktionspointers
NULL und anstelle des Funktionsnamens eine Fehlermeldung als null-terminierten String in runden Klammern (s. Beispiel oben) oder einen Leerstring, jedoch nicht NULL zurückgeben.
| |
Dfa.
...Dfa(void *context,const void *(*owner_callback)(const void *s,const void *c))
AbstractDfa *AbstractDfaInterface::createDfa(void *context,const void *(*owner_callback)(const void *s,const void *c))
DfaWrapper(void *context,const void *(*owner_callback)(const void *s,const void *c))
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
| Type | Name | Direction | Description |
| context | [IN/OUT] | context | |
| const void *(*owner_callback) ( const void *s, const void *c ) | [IN] |
Pointer auf die Callback-Funktion die Informationen zu Callback-Funktionen zurückgibt.
Beispiel:
const void *info_func(const void *s,const void *c)
{
if(strcmp((const char *)s,"getFunctionName")==0)
{
if(c==err_func)return "err_func";
if(c==node_func)return "node_func";
if(c==link_func)return "link_func";
if(c==info_func)return "info_func";
return "(unknown function)";
}
else if(strcmp((const char *)s,"getFunctionPointer")==0)
{
if(strcmp((const char *)c,"err_func")==0)return (const void *)err_func;
if(strcmp((const char *)c,"node_func")==0)return (const void *)node_func;
if(strcmp((const char *)c,"link_func")==0)return (const void *)link_func;
if(strcmp((const char *)c,"info_func")==0)return (const void *)info_func;
}
return 0;
}
Parameter
s: Ein Pointer auf einen null-terminierten String.
c: Ein Pointer auf einen null-terminierten String oder ein Pointer auf eine Callback-Funktion.
Return value
Entweder der Funktionsname (als null-terminierter String) oder ein Pointer auf die Callback-Funktion, welche durch Parameter c angegeben wird. Existiert die nachgefragte Funktion nicht, so soll die Funktion anstelle des Funktionspointers
NULL und anstelle des Funktionsnamens eine Fehlermeldung als null-terminierten String in runden Klammern (s. Beispiel oben) oder einen Leerstring, jedoch nicht NULL zurückgeben.
| |
Dfa.
...Dfa(void *context)
AbstractDfa *AbstractDfaInterface::createDfa(void *context)
DfaWrapper(void *context)
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
| Type | Name | Direction | Description |
| context | [IN/OUT] | context |
Dfa.
...Dfa(void *context,const char *startNodeName)
AbstractDfa *AbstractDfaInterface::createDfa(void *context,const char *startNodeName)
DfaWrapper(void *context,const char *startNodeName)
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
| Type | Name | Direction | Description |
| context | [IN/OUT] | context | |
| startNodeName | [IN] | Der Name des Startknotens |
Dfa.
...Dfa(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c))
AbstractDfa *AbstractDfaInterface::createDfa(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c))
DfaWrapper(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c))
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
| Type | Name | Direction | Description |
| context | [IN/OUT] | context | |
| startNodeName | [IN] | Der Name des Startknotens | |
| const void *(*node_callback) ( const void *s, const void *c ) | [IN] |
Funktion, die beim betreten des Knotens aufgerufen werden soll oder NULL falls keine Callback-Funktion aufgerufen werden soll.
Parameter
s: Pointer auf eine Datenstruktur, die Inforationen zum aktuellen Status des DFA enthält. c: Pointer auf den Kontext des DFA.
Return value
Rückgabewert der Callback-Funktion
| |
Dfa.
...Dfa(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c),const void *(*error)(const void *s,const void *c))
AbstractDfa *AbstractDfaInterface::createDfa(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c),const void *(*error)(const void *s,const void *c))
DfaWrapper(void *context,const char *startNodeName,const void *(*node_callback)(const void *s,const void *c),const void *(*error)(const void *s,const void *c))
AbstractDfaInterface::createDfa creates a new instance of class Dfa.
| Type | Name | Direction | Description |
| context | [IN/OUT] | context | |
| startNodeName | [IN] | Der Name des Startknotens | |
| const void *(*node_callback) ( const void *s, const void *c ) | [IN] |
Funktion, die beim betreten des Knotens aufgerufen werden soll oder NULL falls keine Callback-Funktion aufgerufen werden soll.
Parameter
s: Pointer auf eine Datenstruktur, die Inforationen zum aktuellen Status des DFA enthält. c: Pointer auf den Kontext des DFA.
Return value
Rückgabewert der Callback-Funktion
| |
| const void *(*error) ( const void *s, const void *c ) | [IN] |
...
Parameter
s: 1... c: 2...
Return value
error function return value
| |
Dfa.
...int feed(int token)
| Type | Name | Direction | Description |
| token | Eine Tokennummer. (Ein Unicode Codepoint) |
int feed(const char *str)
| Type | Name | Direction | Description |
| str | [IN] | Ein null-terminierter String (bestehend aus 8-bit großen Tokens). |
int feed(const char32_t *str)
| Type | Name | Direction | Description |
| str | [IN] | Ein null-terminierter String (bestehend aus Unicode-Tokens). |
const char *getCurrentNodeName()
void renameCurrentNode(const char *str)
| Type | Name | Direction | Description |
| str | [IN] | Ein null-terminierter String. |
int getCurrentNodeEdgeCount()
int getCurrentNodeEdgeTokenCount(int i)
| Type | Name | Direction | Description |
| i | Index der vom aktuellen Knoten ausgehenden Kante. |
int getCurrentNodeEdgeToken(int i,int j)
| Type | Name | Direction | Description |
| i | Index der vom aktuellen Knoten ausgehenden Kante. | ||
| j | Index des Tokens einer Kante. |
void addNode(const char *name)
| Type | Name | Direction | Description |
| name | [IN] | Eindeutiger Name des Knotens |
void addNode(const char *name,const void *(*node_callback)(const void *s,const void *c))
| Type | Name | Direction | Description |
| name | [IN] | Eindeutiger Name des Knotens | |
| const void *(*node_callback) ( const void *s, const void *c ) | [IN] |
Funktion, die beim betreten des Knotens aufgerufen werden soll oder NULL falls keine Callback-Funktion aufgerufen werden soll.
Parameter
s: Pointer auf eine Datenstruktur, die Inforationen zum aktuellen Status des DFA enthält. c: Pointer auf den Kontext des DFA.
Return value
Rückgabewert der Callback-Funktion
| |
int print()
int write(FILE *f,int style)
| Type | Name | Direction | Description |
| f | [IN] | Ein Filehandle einer geöffneten Datei. | |
| style | Gibt an, in welchem Format die Ausgabe erfolgen soll:
|
int saveDfa(const char *filename,int style)
| Type | Name | Direction | Description |
| filename | [IN] | Dateiname (inkl. Pfad) als null-terminierter String. | |
| style | Gibt an, in welchem Format die Ausgabe erfolgen soll:
|
int saveDfa(const wchar_t *filename,int style)
| Type | Name | Direction | Description |
| filename | [IN] | Dateiname (inkl. Pfad) als null-terminierter String. | |
| style | Gibt an, in welchem Format die Ausgabe erfolgen soll:
|
Diese Methode steht nur unter Windows Betriebssystemen zur Verfügung. Es kann sein, dass die Methode unter anderen Betriebssystemen ebenfalls deklariert ist, die konkrete Implementierung fehlt aber in jedem Fall. Verwenden Sie diese Methode daher mit Vorsicht. Aufrufe sollten immer innerhalb eines entsprechenden Präprozessor-Blocks stehen: Z.B.: #ifdef _WIN32 ... #endif.int loadDfa(const char *filename)
| Type | Name | Direction | Description |
| filename | [IN] | Dateiname (inkl. Pfad) als null-terminierter String. |
int loadDfa(const wchar_t *filename)
| Type | Name | Direction | Description |
| filename | [IN] | Dateiname (inkl. Pfad) als null-terminierter String. |
Diese Methode steht nur unter Windows Betriebssystemen zur Verfügung. Es kann sein, dass die Methode unter anderen Betriebssystemen ebenfalls deklariert ist, die konkrete Implementierung fehlt aber in jedem Fall. Verwenden Sie diese Methode daher mit Vorsicht. Aufrufe sollten immer innerhalb eines entsprechenden Präprozessor-Blocks stehen: Z.B.: #ifdef _WIN32 ... #endif.int loadDfa(const char *buffer,int buffer_length)
| Type | Name | Direction | Description |
| buffer | [IN] | Speicherbereich, der den DFA enthält. | |
| buffer_length | Länge des Speicherbereichs. |
int loadDfa(AbsBasicCompactScanner *s)
| Type | Name | Direction | Description |
| s |
int loadDfa(AbsBasicCompactBufferScanner *s)
| Type | Name | Direction | Description |
| s |
int loadDfa(AbsBasicCompactFileScanner *s)
| Type | Name | Direction | Description |
| s |
int loadDfa_compact(AbsBasicCompactBufferScanner *s)
| Type | Name | Direction | Description |
| s |
int loadDfa_compact(AbsBasicCompactFileScanner *s)
| Type | Name | Direction | Description |
| s |
int loadDfa_compact(AbsBasicCompactScanner *s)
| Type | Name | Direction | Description |
| s |
void setContext(void *context)
| Type | Name | Direction | Description |
| context | [IN/OUT] | context |
void setErrorCallback(const void *(*error)(const void *s,const void *c))
| Type | Name | Direction | Description |
| const void *(*error) ( const void *s, const void *c ) | [IN] |
...
Parameter
s: 1... c: 2...
Return value
error function return value
| |
void setOwnerCallback(const void *(*owner_callback)(const void *s,const void *c))
| Type | Name | Direction | Description |
| const void *(*owner_callback) ( const void *s, const void *c ) | [IN] |
Pointer auf die Callback-Funktion die Informationen zu Callback-Funktionen zurückgibt.
Beispiel:
const void *info_func(const void *s,const void *c)
{
if(strcmp((const char *)s,"getFunctionName")==0)
{
if(c==err_func)return "err_func";
if(c==node_func)return "node_func";
if(c==link_func)return "link_func";
if(c==info_func)return "info_func";
return "(unknown function)";
}
else if(strcmp((const char *)s,"getFunctionPointer")==0)
{
if(strcmp((const char *)c,"err_func")==0)return (const void *)err_func;
if(strcmp((const char *)c,"node_func")==0)return (const void *)node_func;
if(strcmp((const char *)c,"link_func")==0)return (const void *)link_func;
if(strcmp((const char *)c,"info_func")==0)return (const void *)info_func;
}
return 0;
}
Parameter
s: Ein Pointer auf einen null-terminierten String.
c: Ein Pointer auf einen null-terminierten String oder ein Pointer auf eine Callback-Funktion.
Return value
Entweder der Funktionsname (als null-terminierter String) oder ein Pointer auf die Callback-Funktion, welche durch Parameter c angegeben wird. Existiert die nachgefragte Funktion nicht, so soll die Funktion anstelle des Funktionspointers
NULL und anstelle des Funktionsnamens eine Fehlermeldung als null-terminierten String in runden Klammern (s. Beispiel oben) oder einen Leerstring, jedoch nicht NULL zurückgeben.
| |
void reset()
bool setPos(const char *name)
| Type | Name | Direction | Description |
| name | [IN] | Eindeutiger Name des Knotens |
false zurückgegeben, sonst true.void setStartNode(const char *startNodeName)
| Type | Name | Direction | Description |
| startNodeName | [IN] | Der Name des Startknotens |
bool setEndStatus(const char *name,bool status)
| Type | Name | Direction | Description |
| name | [IN] | Eindeutiger Name des Knotens | |
| status | Gibt an, ob ein Knoten ein gültiger End-Knoten (Endzustand) ist. (true für ja, false für nein) |
true zurückgegeben, sonst false. Falls kein Knoten mit Namen name existiert, erfolgt keine Änderung.bool addLink(const char *name_from,const char *name_to,std::vector< int > tokens,const void *(*callback)(const void *s,const void *c))
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| tokens | ... | ||
| const void *(*callback) ( const void *s, const void *c ) | [IN] |
...
Parameter
s: 1... c: 2...
Return value
callback return value
| |
bool addLink(const char *name_from,const char *name_to,int *tokens,const void *(*callback)(const void *s,const void *c))
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| tokens | tokens | ||
| const void *(*callback) ( const void *s, const void *c ) | [IN] |
...
Parameter
s: 1... c: 2...
Return value
callback return value
| |
bool addLink(const char *name_from,const char *name_to,int token,const void *(*callback)(const void *s,const void *c))
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| token | Eine Tokennummer. (Ein Unicode Codepoint) | ||
| const void *(*callback) ( const void *s, const void *c ) | [IN] |
...
Parameter
s: 1... c: 2...
Return value
callback return value
| |
bool addLink(const char *name_from,const char *name_to,int token)
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| token | Eine Tokennummer. (Ein Unicode Codepoint) |
bool addLink(const char *name_from,const char *name_to,std::vector< int > tokens)
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| tokens | ... |
bool addLink(const char *name_from,const char *name_to,int *tokens)
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| tokens | tokens |
bool addLink(const char *name_from,const char *name_to,const void *(*callback)(const void *s,const void *c))
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to | |
| const void *(*callback) ( const void *s, const void *c ) | [IN] |
...
Parameter
s: 1... c: 2...
Return value
callback return value
| |
bool addLink(const char *name_from,const char *name_to)
| Type | Name | Direction | Description |
| name_from | [IN] | name_from | |
| name_to | [IN] | name_to |