Site Tools


documentation:development:opera:pf25:tktfldr:dsrfldr:01dsr022

DSGetChannel

Requests the status of a channel.

Synopsis

int32 DSGetChannel (Item msgItem, DSRequestMsgPtr reqMsg, DSStreamCBPtr streamCBPtr, DSDataType streamType, long channelNumber, long* channelStatusPtr)

Description

Requests the status of the specified stream channel from the DataStreamer. DSGetChannel() writes the status of the channel to the variable pointed to by channelStatusPtr.

DSGetChannel() sets the members of the message data structure required to request the status of the channel. (The message is the DSRequestMsg identified by reqMsg). If a message is specified, DSGetChannel() sends the message and returns immediately. If no message is specified (if reqMsg is NULL), DSGetChannel() creates a message, sends it to the DataStreamer, and waits until the message has been received before returning.

Arguments

  • msgItem Item of the message.
  • reqMsg Pointer to the DSRequestMsg message that is formatted and sent to the DataStreamer. A value of NULL forces creation of an internal DSRequestMsg message and synchronous operation.
  • streamCBPtr Pointer to the stream context block.
  • streamType Type of stream to which the request applies.
  • channelNumber Number of the logical channel whose status is being requested.
  • channelStatusPtr Pointer to the channel status word (where the result will be returned).

Messages

The members of reqMsg are set to the following values:

  • whatToDo kDSOpGetChannel
  • msg.getChannel.streamType
  • msg.getChannel.channelNumber

msg.getChannel.channelStatusPtr

Return Value

  • Value Error Condition
  • 0 None

These values are returned if the DataStreamer encounters an error while processing the message request:

  • kDSInvalidDSRequest Invalid message (whatToDo set to invalid value)
  • kDSNoReplyPortErr Could not locate item of the reply port
  • -1 Could not locate pointer to msgItem
  • (Portfolio error code) SendMsg() or WaitPort() failed

The DataStreamer checks the validity of messages only if message checking is enabled when the DataStreamer is compiled (if the VALIDATE_REQUEST_CODE symbol is enabled).

See “Error Messages” in the 3DO Portfolio Reference Manual for a listing of error messages returned by SendMsg() and WaitPort().

Associated Files

DataStreamLib.h

See Also

documentation/development/opera/pf25/tktfldr/dsrfldr/01dsr022.txt · Last modified: 2022/10/10 16:54 by 127.0.0.1