Objective Systems, Inc.  
Home
About ASN.1
Products
Free Software
Documents
Services
Resources
Resellers
Customers
Careers
About Us
Contact Us
 

Google


Objective Systems, Inc.

rtxStream.h File Reference

#include "rtxsrc/rtxCommon.h"
#include "rtxsrc/rtxSocket.h"

Go to the source code of this file.

Classes

struct  OSRTStream
 The stream control block. More...

Defines

#define OSRTSTRMF_INPUT   0x0001
#define OSRTSTRMF_OUTPUT   0x0002
#define OSRTSTRMF_BUFFERED   0x8000
#define OSRTSTRMF_UNBUFFERED   0x4000
#define OSRTSTRMF_BUF_INPUT   (OSRTSTRMF_INPUT|OSRTSTRMF_BUFFERED)
#define OSRTSTRMF_BUF_OUTPUT   (OSRTSTRMF_OUTPUT|OSRTSTRMF_BUFFERED)
#define OSRTSTRMID_FILE   1
#define OSRTSTRMID_SOCKET   2
#define OSRTSTRMID_MEMORY   3
#define OSRTSTRMID_BUFFERED   4
#define OSRTSTRMID_DIRECTBUF   5
#define OSRTSTRMID_USER   1000
#define OSRTSTRM_K_BUFSIZE   1024
#define OSRTSTRM_K_INVALIDMARK   ((size_t)-1)
#define OSRTSTREAM_BYTEINDEX(pctxt)   ((pctxt)->pStream->bytesProcessed + (pctxt)->buffer.byteIndex)
#define OSRTSTREAM_ID(pctxt)   ((pctxt)->pStream->id)
#define OSRTSTREAM_FLAGS(pctxt)   ((pctxt)->pStream->flags)

Typedefs

typedef long(* OSRTStreamReadProc )(struct OSRTStream *pStream, OSOCTET *pbuffer, size_t bufSize)
 Stream read function pointer type.
typedef long(* OSRTStreamBlockingReadProc )(struct OSRTStream *pStream, OSOCTET *pbuffer, size_t toReadBytes)
 Stream blockingRead function pointer type.
typedef long(* OSRTStreamWriteProc )(struct OSRTStream *pStream, const OSOCTET *data, size_t numocts)
 Stream write function pointer type.
typedef int(* OSRTStreamFlushProc )(struct OSRTStream *pStream)
 Stream flush function pointer type.
typedef int(* OSRTStreamCloseProc )(struct OSRTStream *pStream)
 Stream close function pointer type.
typedef int(* OSRTStreamSkipProc )(struct OSRTStream *pStream, size_t skipBytes)
 Stream skip function pointer type.
typedef int(* OSRTStreamMarkProc )(struct OSRTStream *pStream, size_t readAheadLimit)
 Stream mark function pointer type.
typedef int(* OSRTStreamResetProc )(struct OSRTStream *pStream)
 Stream reset function pointer type.

Functions

int rtxStreamClose (OSCTXT *pctxt)
 This function closes the input or output stream and releases any system resources associated with the stream.
int rtxStreamFlush (OSCTXT *pctxt)
 This function flushes the output stream and forces any buffered output octets to be written out.
int rtxStreamInit (OSCTXT *pctxt)
 This function initializes a stream part of the context block.
long rtxStreamRead (OSCTXT *pctxt, OSOCTET *pbuffer, size_t bufSize)
 This function reads up to 'bufsize' bytes of data from the input stream into an array of octets.
long rtxStreamBlockingRead (OSCTXT *pctxt, OSOCTET *pbuffer, size_t readBytes)
 This function reads up to 'bufsize' bytes of data from the input stream into an array of octets.
int rtxStreamSkip (OSCTXT *pctxt, size_t skipBytes)
 This function skips over and discards the specified amount of data octets from this input stream.
long rtxStreamWrite (OSCTXT *pctxt, const OSOCTET *data, size_t numocts)
 This function writes the specified amount of octets from the specified array to the output stream.
int rtxStreamGetIOBytes (OSCTXT *pctxt, size_t *pPos)
 This function returns the number of processed octets.
int rtxStreamMark (OSCTXT *pctxt, size_t readAheadLimit)
 Marks the current position in this input stream.
int rtxStreamReset (OSCTXT *pctxt)
 Repositions this stream to the position recorded by the last call to the rtxStreamMark function.
OSBOOL rtxStreamMarkSupported (OSCTXT *pctxt)
 Tests if this input stream supports the mark and reset methods.
OSBOOL rtxStreamIsOpened (OSCTXT *pctxt)
 Tests if this stream opened (for reading or writing).
OSBOOL rtxStreamIsReadable (OSCTXT *pctxt)
 Tests if this stream opened for reading.
OSBOOL rtxStreamIsWritable (OSCTXT *pctxt)
 Tests if this stream opened for riting.
int rtxStreamRelease (OSCTXT *pctxt)
 This function releases the stream's resources.


Detailed Description

Definition in file rtxStream.h.


This file was last modified on 8 Jan 2007.
XBinder, Version 1.1.9