Prosody data communications: API: smdc_tx_status
Prototype Definition
int smdc_tx_status(struct smdc_tx_status_parms *statusp)
Parameters
- *statusp
 - 
a structure of the following type:
typedef struct smdc_tx_status_parms {
	tSMChannelId channel;					/* in */
	tSM_INT capacity;					/* out */
	enum kSMDCTxStatus {
		kSMDCTxStatusEmpty,
		kSMDCTxStatusHasCapacity,
		kSMDCTxStatusNoCapacity,
		kSMDCTxStatusUnderrun,
		kSMDCTxStatusFinishing,
		kSMDCTxStatusFinished,
	} status;						/* out */
	tSM_INT flow;						/* out */
} SMDC_TX_STATUS_PARMS;
 
Description
Report the status of the output half of a channel.
See also the document Prosody
Data Communcations Protocols and Encodings
for details of behaviour specific to individual protocols and
encodings.
Fields
- channel
 - The data communication channel.
 - capacity
 - The currently available capacity (in octets) to buffer more
output data. Only valid if the 
status
field reports
kSMDCTxStatusHasCapacity.
 - status
 - The output status.
One of these values:
- kSMDCTxStatusEmpty
 - The transmitter has sent all data and is ready for more. This status
is only reported where explicitly stated in the documentation of
individual protocols
 - kSMDCTxStatusHasCapacity
 - The transmitter has some capacity to buffer more data, but
has not yet sent all data previously buffered.
 - kSMDCTxStatusNoCapacity
 - The transmitter has no capacity to buffer more data.
 - kSMDCTxStatusUnderrun
 - At an inappropriate point the transmitter has run out of data to
send.
 - kSMDCTxStatusFinishing
 - The application has used the command
kSMDCTxCtlFinish but the transmitter has not yet sent all
buffered data.
 - kSMDCTxStatusFinished
 - The transmitter has finished with data communications. When this
status is reported, the channel's output half reverts to the
idle state that it was in before
smdc_channel_config()
was used. Therefore it can be re-configured or used for
another purpose and a subsequent call to
smdc_tx_status()
will report the error 
ERR_SM_WRONG_CHANNEL_STATE.
 
 - flow
 - Indicator of whether the transmitter has been stopped by flow
control (non-zero) or not (zero).
 
Returns
0
 if call completed successfully, otherwise a standard error such as:
- ERR_SM_DEVERR - device error
 
This function is part of the Prosody data communications API.