X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=libserialport.h.in;h=e4109a985f96d587f33e9b99fba6a6a33b2c48dc;hb=d2ac0e3bbe4d402353a5d31e143915c02a366713;hp=79f315f6c0df6401a289f26d0fd8b55e7f2e33f0;hpb=69a3739ca07a87d56e376a02f3bc1f0a0a9b64e7;p=libserialport.git diff --git a/libserialport.h.in b/libserialport.h.in index 79f315f..e4109a9 100644 --- a/libserialport.h.in +++ b/libserialport.h.in @@ -201,6 +201,18 @@ enum sp_flowcontrol { SP_FLOWCONTROL_DTRDSR = 3, }; +/** Input signals. */ +enum sp_signal { + /** Clear to send. */ + SP_SIG_CTS = 1, + /** Data set ready. */ + SP_SIG_DSR = 2, + /** Data carrier detect. */ + SP_SIG_DCD = 4, + /** Ring indicator. */ + SP_SIG_RI = 8, +}; + /** A serial port. */ struct sp_port { /** Name used to open the port. */ @@ -529,11 +541,55 @@ enum sp_return sp_flush(struct sp_port *port, enum sp_buffer buffers); /** * Wait for buffered data to be transmitted. * + * @param port Pointer to port structure. + * * @return SP_OK on success, SP_ERR_FAIL on failure, or SP_ERR_ARG * if an invalid port is passed. */ enum sp_return sp_drain(struct sp_port *port); +/** + * @} + * @defgroup Signal Port signalling operations + * @{ + */ + +/** + * Gets the status of the control signals for the specified port. + * + * The user should allocate a variable of type "enum sp_signal" and pass a + * pointer to this variable to receive the result. The result is a bitmask + * in which individual signals can be checked by bitwise OR with values of + * the sp_signal enum. + * + * @param port Pointer to port structure. + * @param signals Pointer to variable to receive result. + * + * @return SP_OK on success, SP_ERR_FAIL on failure, or SP_ERR_ARG + * if an an invalid port or pointer is passed. + */ +enum sp_return sp_get_signals(struct sp_port *port, enum sp_signal *signals); + +/** + * Put the port transmit line into the break state. + * + * @param port Pointer to port structure. + * + * @return SP_OK on success, SP_ERR_FAIL on failure, or SP_ERR_ARG + * if an invalid port is passed. + */ +enum sp_return sp_start_break(struct sp_port *port); + +/** + * Take the port transmit line out of the break state. + * + * @param port Pointer to port structure. + * + * @return SP_OK on success, SP_ERR_FAIL on failure, or SP_ERR_ARG + * if an invalid port is passed. + */ +enum sp_return sp_end_break(struct sp_port *port); + /** * @} * @defgroup Errors Obtaining error information