Hamlib  3.0.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
parallel.h
1 /*
2  * Hamlib Interface - parallel communication header
3  * Copyright (c) 2000-2003 by Frank Singleton
4  * Copyright (c) 2000-2010 by Stephane Fillod
5  *
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  *
21  */
22 
23 #ifndef _PARALLEL_H
24 #define _PARALLEL_H 1
25 
26 #include <hamlib/rig.h>
27 #include "iofunc.h"
28 
29 #ifdef HAVE_LINUX_PARPORT_H
30 #include <linux/parport.h>
31 #endif
32 
33 #ifndef PARPORT_CONTROL_STROBE
34 #define PARPORT_CONTROL_STROBE 0x1
35 #endif
36 #ifndef PARPORT_CONTROL_AUTOFD
37 #define PARPORT_CONTROL_AUTOFD 0x2
38 #endif
39 #ifndef PARPORT_CONTROL_INIT
40 #define PARPORT_CONTROL_INIT 0x4
41 #endif
42 #ifndef PARPORT_CONTROL_SELECT
43 #define PARPORT_CONTROL_SELECT 0x8
44 #endif
45 
46 #ifndef PARPORT_STATUS_ERROR
47 #define PARPORT_STATUS_ERROR 0x8
48 #endif
49 #ifndef PARPORT_STATUS_SELECT
50 #define PARPORT_STATUS_SELECT 0x10
51 #endif
52 #ifndef PARPORT_STATUS_PAPEROUT
53 #define PARPORT_STATUS_PAPEROUT 0x20
54 #endif
55 #ifndef PARPORT_STATUS_ACK
56 #define PARPORT_STATUS_ACK 0x40
57 #endif
58 #ifndef PARPORT_STATUS_BUSY
59 #define PARPORT_STATUS_BUSY 0x80
60 #endif
61 
62 __BEGIN_DECLS
63 
64 /* Hamlib internal use, see rig.c */
65 int par_open(hamlib_port_t *p);
66 int par_close(hamlib_port_t *p);
67 int par_ptt_set(hamlib_port_t *p, ptt_t pttx);
68 int par_ptt_get(hamlib_port_t *p, ptt_t *pttx);
69 int par_dcd_get(hamlib_port_t *p, dcd_t *dcdx);
70 
71 extern HAMLIB_EXPORT(int) par_write_data(hamlib_port_t *p, unsigned char data);
72 extern HAMLIB_EXPORT(int) par_write_control(hamlib_port_t *p, unsigned char control);
73 extern HAMLIB_EXPORT(int) par_read_data(hamlib_port_t *p, unsigned char *data);
74 extern HAMLIB_EXPORT(int) par_read_control(hamlib_port_t *p, unsigned char *control);
75 extern HAMLIB_EXPORT(int) par_read_status(hamlib_port_t *p, unsigned char *status);
76 extern HAMLIB_EXPORT(int) par_lock(hamlib_port_t *p);
77 extern HAMLIB_EXPORT(int) par_unlock(hamlib_port_t *p);
78 
79 __END_DECLS
80 
81 #endif /* _PARALLEL_H */
int par_open(hamlib_port_t *p)
Open Parallel Port.
Definition: parallel.c:124
int par_write_control(hamlib_port_t *p, unsigned char control)
Set control data for Parallel Port.
Definition: parallel.c:252
int par_lock(hamlib_port_t *p)
Get a lock on the Parallel Port.
Definition: parallel.c:374
int par_read_control(hamlib_port_t *p, unsigned char *control)
Read control data for Parallel Port.
Definition: parallel.c:299
int par_read_status(hamlib_port_t *p, unsigned char *status)
Get parallel port status.
Definition: parallel.c:338
int par_dcd_get(hamlib_port_t *p, dcd_t *dcdx)
get Data Carrier Detect (squelch) from Parallel Port
Definition: parallel.c:499
int par_read_data(hamlib_port_t *p, unsigned char *data)
Receive data on Parallel port.
Definition: parallel.c:220
int par_close(hamlib_port_t *p)
Close Parallel Port.
Definition: parallel.c:175
int par_ptt_set(hamlib_port_t *p, ptt_t pttx)
Set or unset Push to talk bit on Parallel Port.
Definition: parallel.c:426
int par_unlock(hamlib_port_t *p)
Release lock on Parallel Port.
Definition: parallel.c:396
Hamlib rig data structures.
int par_ptt_get(hamlib_port_t *p, ptt_t *pttx)
Get state of Push to Talk from Parallel Port.
Definition: parallel.c:468
ptt_t
PTT status.
Definition: rig.h:403
int par_write_data(hamlib_port_t *p, unsigned char data)
Send data on Parallel port.
Definition: parallel.c:191
enum dcd_e dcd_t
DCD status.
Port definition.
Definition: rig.h:1338

Generated by doxygen 1.8.8

Hamlib documentation for version 3.0.1 -- Wed Jan 13 2016 15:05:23
Project page: http://www.hamlib.org