rtxContext.h File Reference

#include "rtxsrc/rtxDList.h"
#include "rtxsrc/rtxStack.h"

Go to the source code of this file.

Classes

struct  OSRTErrLocn
struct  OSRTErrInfo
struct  OSRTErrInfoList
struct  OSRTBuffer
struct  OSRTBufSave
struct  OSBufferIndex
struct  OSCTXT

Defines

#define OSRTENCBUFSIZ   1024
#define OSRTERRSTKSIZ   8
#define OSRTMAXERRPRM   5
#define OSDIAG   0x80000000
#define OSTRACE   0x40000000
#define OSDISSTRM   0x20000000
#define OSNOSTRMBACKOFF   0x08000000
#define OS3GMOBORIG   0x04000000
#define OSCONTCLOSED   0x02000000
#define OSRESERVED1   0x01000000
#define OSCDECL
#define OSRT_GET_FIRST_ERROR_INFO(pctxt)
#define OSRT_GET_LAST_ERROR_INFO(pctxt)
#define OSRTISSTREAM(pctxt)   ((pctxt)->pStream != 0 && !((pctxt)->flags & OSDISSTRM))
#define OSRTBUFCUR(pctxt)   (pctxt)->buffer.data[(pctxt)->buffer.byteIndex]
#define OSRTBUFPTR(pctxt)   &(pctxt)->buffer.data[(pctxt)->buffer.byteIndex]
#define OSRTBUFFER(pctxt)   (pctxt)->buffer.data
#define OSRTBUFSIZE(pctxt)   (pctxt)->buffer.size
#define OSRTBUFSAVE(pctxt)
#define OSRTBUFSAVE2(pctxt, pSavedBuf)
#define OSRTBUFRESTORE(pctxt)
#define OSRTBUFRESTORE2(pctxt, pSavedBuf)
#define OSRTBYTEALIGNED(pctxt)   ((pctxt)->buffer.bitOffset == 8 || (pctxt)->buffer.bitOffset == 0)
#define rtxCtxtGetMsgPtr(pctxt)   (pctxt)->buffer.data
#define rtxCtxtGetMsgLen(pctxt)   (pctxt)->buffer.byteIndex
#define rtxCtxtTestFlag(pctxt, mask)   (((pctxt)->flags & mask) != 0)
#define rtxCtxtPeekElemName(pctxt)
#define rtxByteAlign(pctxt)
#define rtxCtxtSetProtocolVersion(pctxt, value)   (pctxt)->version = value
#define rtxMarkBitPos(pctxt, ppos, pbitoff)   (*(pbitoff) = (OSUINT8) (pctxt)->buffer.bitOffset, rtxMarkPos (pctxt, ppos))
#define rtxResetToBitPos(pctxt, pos, bitoff)   ((pctxt)->buffer.bitOffset = (OSUINT8) bitoff, rtxResetToPos (pctxt, pos))
#define RTXCTXTPUSHARRAYELEMNAME(pctxt, name, idx)   rtxCtxtPushArrayElemName(pctxt,OSUTF8(name),idx)
#define RTXCTXTPOPARRAYELEMNAME(pctxt)   rtxCtxtPopArrayElemName(pctxt)
#define RTXCTXTPUSHELEMNAME(pctxt, name)   rtxCtxtPushElemName(pctxt,OSUTF8(name))
#define RTXCTXTPOPELEMNAME(pctxt)   rtxCtxtPopElemName(pctxt)
#define RTXCTXTPUSHTYPENAME(pctxt, name)   rtxCtxtPushTypeName(pctxt,OSUTF8(name))
#define RTXCTXTPOPTYPENAME(pctxt)   rtxCtxtPopTypeName(pctxt)

Typedefs

typedef OSUINT32 OSRTFLAGS
typedef int(* OSFreeCtxtAppInfoPtr )(struct OSCTXT *pctxt)
typedef int(* OSResetCtxtAppInfoPtr )(struct OSCTXT *pctxt)
typedef void(* OSFreeCtxtGlobalPtr )(struct OSCTXT *pctxt)
typedef struct OSCTXT OSCTXT
typedef void *OSCDECL * OSMallocFunc (OSSIZE size)
typedef void *OSCDECL * OSReallocFunc (void *ptr, OSSIZE size)

Functions

typedef void (OSCDECL *OSFreeFunc)(void *ptr)
int rtxInitContext (OSCTXT *pctxt)
int rtxInitContextExt (OSCTXT *pctxt, OSMallocFunc malloc_func, OSReallocFunc realloc_func, OSFreeFunc free_func)
int rtxInitThreadContext (OSCTXT *pctxt, const OSCTXT *pSrcCtxt)
int rtxInitContextBuffer (OSCTXT *pctxt, OSOCTET *bufaddr, OSSIZE bufsiz)
int rtxCtxtSetBufPtr (OSCTXT *pctxt, OSOCTET *bufaddr, OSSIZE bufsiz)
OSSIZE rtxCtxtGetBitOffset (OSCTXT *pctxt)
int rtxCtxtSetBitOffset (OSCTXT *pctxt, OSSIZE offset)
OSSIZE rtxCtxtGetIOByteCount (OSCTXT *pctxt)
int rtxCheckContext (OSCTXT *pctxt)
void rtxFreeContext (OSCTXT *pctxt)
void rtxCopyContext (OSCTXT *pdest, OSCTXT *psrc)
void rtxCtxtSetFlag (OSCTXT *pctxt, OSUINT32 mask)
void rtxCtxtClearFlag (OSCTXT *pctxt, OSUINT32 mask)
int rtxCtxtPushArrayElemName (OSCTXT *pctxt, const OSUTF8CHAR *elemName, OSSIZE idx)
int rtxCtxtPushElemName (OSCTXT *pctxt, const OSUTF8CHAR *elemName)
int rtxCtxtPushTypeName (OSCTXT *pctxt, const OSUTF8CHAR *typeName)
OSBOOL rtxCtxtPopArrayElemName (OSCTXT *pctxt)
const OSUTF8CHAR * rtxCtxtPopElemName (OSCTXT *pctxt)
const OSUTF8CHAR * rtxCtxtPopTypeName (OSCTXT *pctxt)
OSBOOL rtxCtxtContainerHasRemBits (OSCTXT *pctxt)
OSSIZE rtxCtxtGetContainerRemBits (OSCTXT *pctxt)
int rtxCtxtPushContainerBytes (OSCTXT *pctxt, OSSIZE bytes)
int rtxCtxtPushContainerBits (OSCTXT *pctxt, OSSIZE bits)
void rtxCtxtPopContainer (OSCTXT *pctxt)
void rtxCtxtPopAllContainers (OSCTXT *pctxt)
int rtxPreInitContext (OSCTXT *pctxt)
void rtxMemHeapSetFlags (OSCTXT *pctxt, OSUINT32 flags)
void rtxMemHeapClearFlags (OSCTXT *pctxt, OSUINT32 flags)
int rtxMarkPos (OSCTXT *pctxt, OSSIZE *ppos)
int rtxResetToPos (OSCTXT *pctxt, OSSIZE pos)

Detailed Description

Common run-time context definitions.


Define Documentation

#define OSRTBUFRESTORE ( pctxt   ) 
Value:
{ \
(pctxt)->buffer.byteIndex = (pctxt)->savedInfo.byteIndex; \
(pctxt)->flags = (pctxt)->savedInfo.flags; }
#define OSRTBUFRESTORE2 ( pctxt,
pSavedBuf   ) 
Value:
{ \
(pctxt)->buffer.byteIndex = (pSavedBuf)->byteIndex; \
(pctxt)->buffer.bitOffset = (pSavedBuf)->bitOffset; \
(pctxt)->flags = (pSavedBuf)->flags; }
#define OSRTBUFSAVE ( pctxt   ) 
Value:
{ \
(pctxt)->savedInfo.byteIndex = (pctxt)->buffer.byteIndex; \
(pctxt)->savedInfo.flags = (pctxt)->flags; }
#define OSRTBUFSAVE2 ( pctxt,
pSavedBuf   ) 
Value:
{ \
(pSavedBuf)->byteIndex = (pctxt)->buffer.byteIndex; \
(pSavedBuf)->bitOffset = (pctxt)->buffer.bitOffset; \
(pSavedBuf)->flags = (pctxt)->flags; }