rtEXIDecoder.h File Reference

Interface for EXI low-level decoders. More...

#include "rtexisrc/osrtexi.h"
#include "rtxmlsrc/osrtxml.h"
#include "rtxsrc/rtxArrayList.h"

Go to the source code of this file.


Functions

EXTERNEXI int rtEXIDecAttribute (OSCTXT *pctxt, OSXMLFullQName *pqname, const OSUTF8CHAR **ppvalue)
 Decodes the attribute at the current position in the decode stream.
EXTERNEXI int rtEXIDecBinary (OSCTXT *pctxt, OSOCTET *pvalue, OSUINT32 *pnocts, OSINT32 bufsize)
 This function decodes the contents of a binary value into a static memory structure.
EXTERNEXI int rtEXIDecBoolValue (OSCTXT *pctxt, OSBOOL *pvalue)
 This function decodes a boolean value.
EXTERNEXI int rtEXIDecBoolValueWithPattern (OSCTXT *pctxt, OSBOOL *pvalue, OSUINT8 pattern)
 This function decodes a boolean value with pattern facet.
EXTERNEXI int rtEXIDec_CH_String_EE (OSCTXT *pctxt, const OSXMLFullQName *pqname, const OSUINT16 *charSet, const OSUTF8CHAR **ppvalue)
 This function decodes a CH event (assumed to be a one part code = 0 in a 1 bit field) followed by string content followed by an EE event (assumed to be a one part code = 0 in a 1 bit field).
EXTERNEXI int rtEXIDecDate (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a date value into a structured variable.
EXTERNEXI int rtEXIDecDateString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a date value into a string.
EXTERNEXI int rtEXIDecDateTime (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a date/time value into a structured variable.
EXTERNEXI int rtEXIDecDateTimeString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a date/time value into a string.
EXTERNEXI int rtEXIDecDecimalValue (OSCTXT *pctxt, OSREAL *pvalue)
 This function decodes a decimal value.
EXTERNEXI int rtEXIDecDocumentType (OSCTXT *pctxt, const OSUTF8CHAR **ppName, const OSUTF8CHAR **ppPublic, const OSUTF8CHAR **ppSystem, const OSUTF8CHAR **ppText)
 This function decodes an XML document type declaration (DTD).
EXTERNEXI int rtEXIDecDoubleValue (OSCTXT *pctxt, OSREAL *pvalue)
 This function decodes a double value.
EXTERNEXI int rtEXIDecDynBinary (OSCTXT *pctxt, OSDynOctStr *pvalue)
 This function decodes a binary value into a structured variable.
EXTERNEXI int rtEXIDecEndDocument (OSCTXT *pctxt)
 This function ends decoding of EXI stream.
EXTERNEXI int rtEXIDecEndEvent (OSCTXT *pctxt)
 This function decodes of event codes of element end grammar.
EXTERNEXI int rtEXIDecEndEventCompact (OSCTXT *pctxt)
 This function decodes of event codes of element end grammar.
EXTERNEXI int rtEXIDecEndEventStrict (OSCTXT *pctxt)
 This function decodes of event codes of element end grammar.
EXTERNEXI int rtEXIDecEventCodePart1 (OSCTXT *pctxt, OSINT32 *ppart, OSUINT32 nbits, OSUINT32 maxval)
 This function decodes part 1 of an event code.
EXTERNEXI int rtEXIDecGetStateIndex (OSCTXT *pctxt, OSUINT32 flags)
 This function decodes an event code as specified in the currently indexed state table record and then determine the index of the state corresponding to the decoded value.
EXTERNEXI int rtEXIDecGetStateIndexCompact (OSCTXT *pctxt, OSUINT16 stx, const OSEXIStateTableRecord statetab[], size_t nrows, OSUINT32 flags, OSUINT32 *prepcnt)
 This function decodes an event code as specified in the currently indexed state table record and then determine the index of the state corresponding to the decoded value.
EXTERNEXI int rtEXIDecGetStateIndexStrict (OSCTXT *pctxt, OSUINT16 stx, const OSEXIStateTableRecord statetab[], size_t nrows, OSUINT32 flags, OSUINT32 *prepcnt)
 This function decodes an event code as specified in the currently indexed state table record and then determine the index of the state corresponding to the decoded value.
EXTERNEXI int rtEXIDecFloatValue (OSCTXT *pctxt, OSFLOAT *pvalue)
 This function decodes a float value.
EXTERNEXI int rtEXIDecGDay (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a gDay value into a structured variable.
EXTERNEXI int rtEXIDecGDayString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a gDay value into a string.
EXTERNEXI int rtEXIDecGMonth (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a gMonth value into a structured variable.
EXTERNEXI int rtEXIDecGMonthDay (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a gMonthDay value into a structured variable.
EXTERNEXI int rtEXIDecGMonthDayString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a gMonthDay value into a string.
EXTERNEXI int rtEXIDecGMonthString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a gMonth value into a string.
EXTERNEXI int rtEXIDecGYear (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a gYear value into a structured variable.
EXTERNEXI int rtEXIDecGYearMonth (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a gYearMonth value into a structured variable.
EXTERNEXI int rtEXIDecGYearMonthString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a gYearMonth value into a string.
EXTERNEXI int rtEXIDecGYearString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a gYear value into a string.
EXTERNEXI OSBOOL rtEXIDecHasNext (OSCTXT *pctxt)
 This function checks for additonal events in the decode stream.
EXTERNEXI int rtEXIDecHeader (OSCTXT *pctxt)
 This function decodes the EXI header at the start of a message and uses the results to set internal flags within the context structure.
EXTERNEXI int rtEXIDecInitCompression (OSCTXT *pctxt, OSUINT32 nmChannelIds)
 This function initialize decoder to use compressed or precompressed EXI stream.
EXTERNEXI int rtEXIDecInt16Value (OSCTXT *pctxt, OSINT16 *pvalue)
 This function decodes a 16-bit signed integer value.
EXTERNEXI int rtEXIDecInt64Value (OSCTXT *pctxt, OSINT64 *pvalue)
 This function decodes a 64-bit signed integer value.
EXTERNEXI int rtEXIDecInt8Value (OSCTXT *pctxt, OSINT8 *pvalue)
 This function decodes a 8-bit signed integer value.
EXTERNEXI int rtEXIDecIntValue (OSCTXT *pctxt, OSINT32 *pvalue)
 This function decodes a signed integer value.
EXTERNEXI int rtEXIDecLocalName (OSCTXT *pctxt, const OSUTF8CHAR **ppname)
 Returns the local name associated with the current event.
EXTERNEXI int rtEXIDecNamespaceURI (OSCTXT *pctxt, const OSUTF8CHAR **ppNSURI)
 Returns the namespace associated with the current event.
EXTERNEXI int rtEXIDecNBitUIntValue (OSCTXT *pctxt, OSUINT32 *pvalue, OSUINT32 nbits)
 This function decodes an unsigned integer value from a bit field of the given width.
EXTERNEXI int rtEXIDecNextEventType (OSCTXT *pctxt, OSEXIEventType *pEventType)
 Returns the next OSEXIEventType read by this decoder.
EXTERNEXI int rtEXIDecoderInit (OSCTXT *pctxt)
 This function initializes the decoder.
EXTERNEXI int rtEXIDecPrefix (OSCTXT *pctxt, const OSUTF8CHAR *uri, const OSUTF8CHAR **ppPrefix)
 Returns the namespace associated with the current event.
EXTERNEXI int rtEXIDecProcessingInstruction (OSCTXT *pctxt, const OSUTF8CHAR **ppTarget, const OSUTF8CHAR **ppData)
 This function decodes an XML processing instruction (PI).
EXTERNEXI int rtEXIDecQName (OSCTXT *pctxt, OSXMLFullQName *pqname)
 Returns the qname associated with the current event.
EXTERNEXI int rtEXIDecQNameValue (OSCTXT *pctxt, OSXMLFullQName *pvalue, const OSXMLFullQName *pqname)
 Decode the qname value for AT and CH events.
EXTERNEXI int rtEXIDecReset (OSCTXT *pctxt)
 Resets the decoder for decoding a new message instance.
EXTERNEXI int rtEXIDecSimpleTypeEvent (OSCTXT *pctxt, OSINT32 *ppart, OSUINT32 flags)
 This function decodes of event codes of simple type grammar.
EXTERNEXI int rtEXIDecSimpleTypeEventCompact (OSCTXT *pctxt, OSINT32 *ppart, OSUINT32 flags)
 This function decodes of event codes of simple type grammar.
EXTERNEXI int rtEXIDecSimpleTypeEventStrict (OSCTXT *pctxt, OSINT32 *ppart, OSUINT32 flags)
 This function decodes of event codes of simple type grammar.
EXTERNEXI int rtEXIDecString (OSCTXT *pctxt, const OSXMLFullQName *pqname, const OSUINT16 *charSet, const OSUTF8CHAR **ppvalue)
 Returns the value associated with the current event.
EXTERNEXI int rtEXIDecStringToCharArray (OSCTXT *pctxt, const OSUTF8CHAR *target, size_t start, size_t length)
 Similar to rtEXIDecString but the characters are copied into a fixed-size character array.
EXTERNEXI int rtEXIDecStringLength (OSCTXT *pctxt)
 Returns the length of the string returned by rtEXIDecString.
EXTERNEXI int rtEXIDecTime (OSCTXT *pctxt, OSNumDateTime *pvalue)
 This function decodes a time value into a structured variable.
EXTERNEXI int rtEXIDecTimeString (OSCTXT *pctxt, const OSUTF8CHAR **ppvalue)
 This function decodes a time value into a string.
EXTERNEXI int rtEXIDecUInt16Value (OSCTXT *pctxt, OSUINT16 *pvalue)
 This function decodes an 16-bit unsigned integer value.
EXTERNEXI int rtEXIDecUInt64Value (OSCTXT *pctxt, OSUINT64 *pvalue)
 This function decodes an 64-bit unsigned integer value.
EXTERNEXI int rtEXIDecUInt8Value (OSCTXT *pctxt, OSUINT8 *pvalue)
 This function decodes an 8-bit unsigned integer value.
EXTERNEXI int rtEXIDecUIntValue (OSCTXT *pctxt, OSUINT32 *pvalue)
 This function decodes an unsigned integer value.
EXTERNEXI int rtEXIDecUTF8Str (OSCTXT *pctxt, OSUTF8CHAR **ppvalue, const OSUINT16 *charSet)
 This function decodes a UTF-8 string value.
EXTERNEXI int rtEXIDecUTF8Chars (OSCTXT *pctxt, OSUTF8CHAR **ppvalue, OSUINT32 nchars, const OSUINT16 *charSet)
 This function reads the given number of characters from the decode stream and creates a UTF-8 string.

Detailed Description

Interface for EXI low-level decoders.

The interface is similar to StAX, but uses enumerations for the different event types and reports attributes and namespaces as individual events.

Definition in file rtEXIDecoder.h.