Stream Integer Functions


The Pstream.h header file in the DirectShow base classes contains a set of stream integer functions. These functions encode an integer in a stream object as 11 Unicode characters followed by one Unicode space. The interface to these functions might truncate to 32 bits. Values such as (unsigned) 0x80000000 would be written as -2147483648, but would still load as 0x80000000 again through ReadInt.
Member Function Description
WriteInt Writes an integer to a stream encoded as a Unicode string.
ReadInt Reads a Unicode string-encoded integer from a stream.


WriteInt

Writes an integer to an IStream, encoded as described in Stream Integer Functions.

STDAPI WriteInt(
  IStream *pIStream,
  int n
  );

Parameters
pIStream
Pointer to an IStream to which the encoded integer is to be written.
n
Integer value to be written.
Return Values

Returns an HRESULT value.

Remarks

The ReadInt function can be used to read the value written by WriteInt.


ReadInt

Reads an integer from an IStream.

STDAPI_(
  int
  )ReadInt(
  IStream *pIStream,
  HRESULT &hr
  );

Parameters
pIStream
Pointer to an IStream from which the encoded integer is to be read.
hr
Reference to an HRESULT value (output).
Return Values

Returns the integer value (truncated to 32 bits), or zero if an error occurred.

Remarks

This function is a stripped-down subset of what sscanf can do (without dragging in the C run time).

The ReadInt function can be used to read the value written by WriteInt.

© 1997 Microsoft Corporation. All rights reserved. Terms of Use.