int32 DSGoMarker (Item msgItem, DSRequestMsgPtr reqMsg, DSStreamCBPtr streamCBPtr, unsigned long markerValue, unsigned long options)
DSGoMarker()
sets the members of the message data structure required to move the acquisition thread to the specified location. (The message is the DSRequestMsg
identified by reqMsg
.) If a message is specified, DSGoMarker()
sends the message and returns immediately. If no message is specified (if reqMsg
is NULL
), DSGoMarker()
creates a message, sends it to the DataStreamer, and waits until the message has been received before returning.
You have the following options
If you are using the ShuttlePlayer example, which is currently still an independent branch from the main DataStreamer branch, you have the following additional options:
GOMARKER_ABSOLUTE absolute marker FILE POSITION
GOMARKER_FORWARD count of markers to skip forward
GOMARKER_BACKWARD count of markers to skip backward
GOMARKER_ABS_TIME absolute stream time of destination
GOMARKER_FORW_TIME stream time by which to advance
GOMARKER_BACK_TIME stream time by which to regress
GOMARKER_NAMED ptr to name of destination marker
GOMARKER_NUMBER go to given marker number
GOMARKER_NUMBER go to given marker number: ccw mod
GOMARKER_FWD_POS_RELATIVE number of blocks to skip forward relative
to our current position
GOMARKER_BWD_POS_RELATIVE number of blocks to skip backward
relative to our current position
msgItem
reqMsg
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
markerValue
options
reqMsg
are set to the following values:
whatToDo
- kDSOpGoMarker
msg.goMarker.markerValue
- markerValue
msg.goMarker.options
- options
kDSInvalidDSRequest
kDSNoReplyPortErr
SendMsg()
or WaitPort()
failed
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()
.
DSIsMarker