rtEXIAutomaton.h File Reference
EXI automaton structure and functions. More...
#include "rtexisrc/rtEXIEvent.h"
#include "rtexisrc/rtEXIEventCodeGroup.h"
#include "rtxmlsrc/osrtxml.h"
#include "rtxsrc/rtxArrayList.h"
Go to the source code of this file.
Classes | |
struct | OSEXIStateEvent |
This structure holds state/event information. More... | |
struct | OSEXIAutomaton |
This structure defines a finite state automata for EXI grammars. More... | |
struct | OSEXIAtmState |
This structure defines state information from an automaton that must be preserved at each stack level. More... | |
Typedefs | |
typedef OSINT16 | OSEXIState |
typedef int(*) | OSEXIAtmAddTransFunc (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSEXIState fromState, OSEXIState toState, const OSEXIEvent *pEvent, const OSEXIEventCode *pEventCode) |
Add transition function definition. | |
Enumerations | |
enum | OSEXIAtmType |
Functions | |
EXTERNEXI void | rtEXIAutomatonInit (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, const OSXMLFullQName *pElemName, OSEXIState numStates) |
This function initializes the automaton to its default state. | |
EXTERNEXI OSEXIAutomaton * | rtEXINewAutomaton (OSCTXT *pctxt, const OSXMLFullQName *pElemName, OSEXIState numStates) |
This function allocates memory for a new automaton structure and initializes the structure. | |
EXTERNEXI OSEXIAutomaton * | rtEXIAutomatonCopy (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton) |
This function copies an automaton structure. | |
EXTERNEXI void | rtEXIAutomatonFreeMem (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSBOOL dynamic) |
This function frees all memory within an Automaton structure. | |
EXTERNEXI OSEXIAutomaton * | rtEXIAutomatonAddTransition (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSEXIState fromState, OSEXIState toState, const OSEXIEventCode *pEventCode) |
This function adds a transition between two states. | |
EXTERNEXI int | rtEXIAtmAddUndeclaredItems (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSEXIState fromState, OSEXIState toState, OSEXIEventCode *pEventCode, size_t numDeclAttrs, const OSXMLFullQName *declAttrs, OSEXIAtmAddTransFunc addTransFunc) |
This function adds all undeclared items (end element, start tag, and content) to an element automaton in schema-informed mode. | |
EXTERNEXI int | rtEXIAtmAddUndeclaredStartTagItems (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSEXIState fromState, OSEXIState toState, OSEXIEventCode *pEventCode, size_t numDeclAttrs, const OSXMLFullQName *declAttrs, OSEXIAtmAddTransFunc addTransFunc) |
This function adds undeclared start tag items to an element automaton in schema-informed mode. | |
EXTERNEXI int | rtEXIAtmAddUndeclaredContentItems (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSEXIState fromState, OSEXIState toState, OSEXIEventCode *pEventCode, OSEXIAtmAddTransFunc addTransFunc) |
This function adds undeclared content items to an element automaton in schema-informed mode. | |
EXTERNEXI OSEXIAutomaton * | rtEXIAutomatonInitCopy (OSCTXT *pctxt, OSEXIAutomaton *pDestAtm, OSEXIAutomaton *pSrcAtm) |
This function initializes an automaton structure using the data from an existing automaton. | |
EXTERNEXI int | rtEXIAutomatonPush (OSCTXT *pctxt, OSEXIAutomaton *pAutomaton) |
This function pushes an automaton onto the context stack. | |
EXTERNEXI OSEXIAutomaton * | rtEXIAutomatonPop (OSCTXT *pctxt) |
This function pops an automaton from the context stack. | |
EXTERNEXI OSEXIEventCodeGroup * | rtEXIAtmGetCurrentEventCodeGroup (OSEXIAutomaton *pAutomaton) |
This function returns a pointer to the event code group corresponding to the current state. | |
EXTERNEXI OSEXIAutomaton * | rtEXIGetDocAutomaton (OSCTXT *pctxt, size_t numGblElems, const OSXMLFullQName *gblElems, OSEXIAtmAddTransFunc addTransFunc) |
This functions returns an automaton that accepts the built-in document grammar. | |
EXTERNEXI OSEXIAutomaton * | rtEXIGetElemAutomaton (OSCTXT *pctxt, OSXMLFullQName *pqname, int(*addTransFunc)(OSCTXT *pctxt, OSEXIAutomaton *pAutomaton, OSEXIState fromState, OSEXIState toState, const OSEXIEvent *pEvent, const OSEXIEventCode *pEventCode)) |
This function returns an automaton that accepts the built-in element grammar. |
Detailed Description
EXI automaton structure and functions.
Definition in file rtEXIAutomaton.h.