Hamlib 4.5
Loading...
Searching...
No Matches
iofunc.h
1/*
2 * Hamlib Interface - io function header
3 * Copyright (c) 2000-2005 by Stephane Fillod and Frank Singleton
4 *
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19 *
20 */
21
22#ifndef _IOFUNC_H
23#define _IOFUNC_H 1
24
25#include <sys/types.h>
26#include <hamlib/rig.h>
27
28extern HAMLIB_EXPORT(int) port_open(hamlib_port_t *p);
29extern HAMLIB_EXPORT(int) port_close(hamlib_port_t *p, rig_port_t port_type);
30
31
32extern HAMLIB_EXPORT(int) read_block(hamlib_port_t *p,
33 unsigned char *rxbuffer,
34 size_t count);
35
36extern HAMLIB_EXPORT(int) read_block_direct(hamlib_port_t *p,
37 unsigned char *rxbuffer,
38 size_t count);
39
40extern HAMLIB_EXPORT(int) write_block(hamlib_port_t *p,
41 const unsigned char *txbuffer,
42 size_t count);
43
44extern HAMLIB_EXPORT(int) write_block_sync(hamlib_port_t *p,
45 const unsigned char *txbuffer,
46 size_t count);
47
48extern HAMLIB_EXPORT(int) write_block_sync_error(hamlib_port_t *p,
49 const unsigned char *txbuffer,
50 size_t count);
51
52extern HAMLIB_EXPORT(int) read_string(hamlib_port_t *p,
53 unsigned char *rxbuffer,
54 size_t rxmax,
55 const char *stopset,
56 int stopset_len,
57 int flush_flag,
58 int expected_len);
59
60extern HAMLIB_EXPORT(int) read_string_direct(hamlib_port_t *p,
61 unsigned char *rxbuffer,
62 size_t rxmax,
63 const char *stopset,
64 int stopset_len,
65 int flush_flag,
66 int expected_len);
67
68#endif /* _IOFUNC_H */
int port_close(hamlib_port_t *p, rig_port_t port_type)
Close a hamlib_port.
Definition: iofunc.c:377
int read_string(hamlib_port_t *p, unsigned char *rxbuffer, size_t rxmax, const char *stopset, int stopset_len, int flush_flag, int expected_len)
Read a string from the device directly or from the synchronous data pipe, depending on the device cap...
Definition: iofunc.c:1442
int write_block(hamlib_port_t *p, const unsigned char *txbuffer, size_t count)
Write a block of characters to an fd.
Definition: iofunc.c:1005
int read_block_direct(hamlib_port_t *p, unsigned char *rxbuffer, size_t count)
Read bytes directly from the device file descriptor.
Definition: iofunc.c:1240
int port_open(hamlib_port_t *p)
Open a hamlib_port based on its rig port type.
Definition: iofunc.c:227
int read_block(hamlib_port_t *p, unsigned char *rxbuffer, size_t count)
Read bytes from the device directly or from the synchronous data pipe, depending on the device caps.
Definition: iofunc.c:1216
int read_string_direct(hamlib_port_t *p, unsigned char *rxbuffer, size_t rxmax, const char *stopset, int stopset_len, int flush_flag, int expected_len)
Read a string directly from the device file descriptor.
Definition: iofunc.c:1481
enum rig_port_e rig_port_t
Port type.
Hamlib rig data structures.