24 #ifndef __GPHOTO2_PORT_H__    25 #define __GPHOTO2_PORT_H__    30 #include <gphoto2/gphoto2-port-portability.h>    32 #include <gphoto2/gphoto2-port-portability-os2.h>    61 #define GP_PORT_MAX_BUF_LEN 4096                127 typedef struct _GPPortPrivateLibrary GPPortPrivateLibrary;
   152         GPPortPrivateLibrary *
pl;       
   213                              int index, 
char *bytes, 
int size);
   215                              int index, 
char *bytes, 
int size);
   217                             int value, 
int index, 
char *bytes, 
int size);
   219                             int value, 
int index, 
char *bytes, 
int size);
   221                             int value, 
int index, 
char *bytes, 
int size);
   223                             int value, 
int index, 
char *bytes, 
int size);
   228                                 char *cmd, 
int cmd_size,
   229                                 char *sense, 
int sense_size,
   230                                 char *data, 
int data_size);
   235         __attribute__((__format__(printf,2,3)))
   246 #define PIN_CTS GP_PIN_CTS int bits
Definition: gphoto2-port.h:69
int gp_port_open(GPPort *port)
Open a port. 
Definition: gphoto2-port.c:273
int maxpacketsize
Maximum USB packetsize of the IN endpoint. (r/o) 
Definition: gphoto2-port.h:86
int gp_port_set_settings(GPPort *port, GPPortSettings settings)
Set port settings. 
Definition: gphoto2-port.c:590
GPPortSerialParity parity
Definition: gphoto2-port.h:70
GPPortType type
Actual type of this port. 
Definition: gphoto2-port.h:145
Pull to high (nV) 
Definition: gphoto2-port.h:200
int gp_port_set_info(GPPort *port, GPPortInfo info)
Configure a port. 
Definition: gphoto2-port.c:149
struct _GPPortSettingsUsbDiskDirect GPPortSettingsUsbDiskDirect
Port settings for USB mass storage direct IO ports. 
int outep
Bulk OUT endpoint used. 
Definition: gphoto2-port.h:80
int gp_port_usb_msg_read(GPPort *port, int request, int value, int index, char *bytes, int size)
Send a USB control message with input data. 
Definition: gphoto2-port.c:897
GPPortSettings settings
Current port settings. 
Definition: gphoto2-port.h:147
int interface
USB Interface number used. 
Definition: gphoto2-port.h:83
GPPortSettings gp_port_settings
Definition: gphoto2-port.h:244
int gp_port_send_scsi_cmd(GPPort *port, int to_dev, char *cmd, int cmd_size, char *sense, int sense_size, char *data, int data_size)
Send a SCSI command to a port (for usb scsi ports) 
Definition: gphoto2-port.c:1118
int gp_port_get_settings(GPPort *port, GPPortSettings *settings)
Get the current port settings. 
Definition: gphoto2-port.c:632
struct _GPPortSettingsUsbScsi GPPortSettingsUsbScsi
Port settings for USB Mass Storage raw SCSI ports. 
GPPort gp_port
Definition: gphoto2-port.h:242
struct _GPPortSettingsSerial GPPortSettingsSerial
Port settings for serial ports. 
GPPortSettings settings_pending
Settings to be committed. 
Definition: gphoto2-port.h:148
DTR line. 
Definition: gphoto2-port.h:186
int gp_port_get_timeout(GPPort *port, int *timeout)
Get the current port timeout. 
Definition: gphoto2-port.c:568
Port settings for USB mass storage direct IO ports. 
Definition: gphoto2-port.h:97
int gp_port_set_pin(GPPort *port, GPPin pin, GPLevel level)
Set specified serial PIN to value. 
Definition: gphoto2-port.c:703
DSR line. 
Definition: gphoto2-port.h:188
int gp_port_new(GPPort **port)
Create new GPPort. 
Definition: gphoto2-port.c:94
int gp_port_get_info(GPPort *port, GPPortInfo *info)
Retreives information about the port. 
Definition: gphoto2-port.c:255
int gp_port_usb_msg_write(GPPort *port, int request, int value, int index, char *bytes, int size)
Send a USB control message with output data. 
Definition: gphoto2-port.c:864
enum _GPPin GPPin
Serial pins. 
union _GPPortSettings GPPortSettings
Union of port settings. 
int intep
Interrupt endpoint used. 
Definition: gphoto2-port.h:81
Parity is odd. 
Definition: gphoto2-port.h:57
enum _GPPortSerialParity GPPortSerialParity
Serial parity. 
int gp_port_flush(GPPort *port, int direction)
Flush data on serial port. 
Definition: gphoto2-port.c:762
Port settings for serial ports. 
Definition: gphoto2-port.h:66
_GPPortSerialParity
Serial parity. 
Definition: gphoto2-port.h:53
int gp_port_free(GPPort *port)
Free the port structure. 
Definition: gphoto2-port.c:341
GPPortSettingsUsbScsi usbscsi
usb scsi port specific settings 
Definition: gphoto2-port.h:118
int gp_port_close(GPPort *port)
Close a port. 
Definition: gphoto2-port.c:297
The GPhoto port structure. 
Definition: gphoto2-port.h:143
int gp_port_check_int(GPPort *port, char *data, int size)
Check for intterupt. 
Definition: gphoto2-port.c:463
int gp_port_reset(GPPort *port)
Reset a port. 
Definition: gphoto2-port.c:319
Parity is off (disabled) 
Definition: gphoto2-port.h:55
int gp_port_check_int_fast(GPPort *port, char *data, int size)
Check for interrupt without wait. 
Definition: gphoto2-port.c:496
_GPPin
Serial pins. 
Definition: gphoto2-port.h:184
Parity is even. 
Definition: gphoto2-port.h:56
Internal private libgphoto2_port data. This structure contains private data. 
Definition: gphoto2-port.c:73
Port settings for USB ports. 
Definition: gphoto2-port.h:78
GPPortSettingsUSB usb
USB specific settings. 
Definition: gphoto2-port.h:116
int gp_port_usb_msg_class_write(GPPort *port, int request, int value, int index, char *bytes, int size)
Send a USB class control message with output data. 
Definition: gphoto2-port.c:1015
_GPLevel
Level to pull specific lines. 
Definition: gphoto2-port.h:198
const char * gp_port_get_error(GPPort *port)
Get verbose port error message. 
Definition: gphoto2-port.c:1210
int gp_port_read(GPPort *port, char *data, int size)
Read data from port. 
Definition: gphoto2-port.c:427
Union of port settings. 
Definition: gphoto2-port.h:114
int gp_port_usb_clear_halt(GPPort *port, int ep)
Clear USB endpoint HALT condition. 
Definition: gphoto2-port.c:836
int gp_port_usb_find_device(GPPort *port, int idvendor, int idproduct)
Find USB device by vendor/product. 
Definition: gphoto2-port.c:790
int config
USB bConfigurationValue used. 
Definition: gphoto2-port.h:82
USB bulk IN ep. 
Definition: gphoto2-port.h:122
int gp_port_usb_msg_class_read(GPPort *port, int request, int value, int index, char *bytes, int size)
Send a USB class control message with input data. 
Definition: gphoto2-port.c:1050
struct _GPPort GPPort
The GPhoto port structure. 
int gp_port_set_timeout(GPPort *port, int timeout)
Set timeout of port. 
Definition: gphoto2-port.c:534
GPPortSettingsSerial serial
Serial specific settings. 
Definition: gphoto2-port.h:115
int gp_port_usb_find_device_by_class(GPPort *port, int mainclass, int subclass, int protocol)
Find USB device by interface class. 
Definition: gphoto2-port.c:814
GPPortPrivateCore * pc
Port library private data pointer. 
Definition: gphoto2-port.h:153
int inep
Bulk IN endpoint used. 
Definition: gphoto2-port.h:79
int timeout
Port timeout in milliseconds. 
Definition: gphoto2-port.h:150
GPPortPrivateLibrary * pl
Camera driver private data pointer. 
Definition: gphoto2-port.h:152
int gp_port_usb_msg_interface_read(GPPort *port, int request, int value, int index, char *bytes, int size)
Send a USB interface control message with input data. 
Definition: gphoto2-port.c:972
int gp_port_write(GPPort *port, const char *data, int size)
Writes a specified amount of data to a port. 
Definition: gphoto2-port.c:392
int gp_port_usb_msg_interface_write(GPPort *port, int request, int value, int index, char *bytes, int size)
Send a USB interface control message with output data. 
Definition: gphoto2-port.c:937
USB Interrupt ep. 
Definition: gphoto2-port.h:124
int altsetting
USB Alternative Setting used. 
Definition: gphoto2-port.h:84
int gp_port_seek(GPPort *port, int offset, int whence)
Seek on a port (for usb disk direct ports) 
Definition: gphoto2-port.c:1084
Port settings for USB Mass Storage raw SCSI ports. 
Definition: gphoto2-port.h:104
GPPortSettingsUsbDiskDirect usbdiskdirect
usb disk direct port specific settings 
Definition: gphoto2-port.h:117
int gp_port_set_error(GPPort *port, const char *format,...)
Set verbose port error message. 
Definition: gphoto2-port.c:1180
RTS line. 
Definition: gphoto2-port.h:185
Pull to low (0V) 
Definition: gphoto2-port.h:199
enum _GPLevel GPLevel
Level to pull specific lines. 
int gp_port_send_break(GPPort *port, int duration)
Send a break over a serial port. 
Definition: gphoto2-port.c:737
RING (Modem) line. 
Definition: gphoto2-port.h:190
CTS line. 
Definition: gphoto2-port.h:187
Definition: gphoto2-port-info.h:32
struct _GPPortSettingsUSB GPPortSettingsUSB
Port settings for USB ports. 
int speed
Definition: gphoto2-port.h:68
char port[128]
Definition: gphoto2-port.h:67
USB bulk OUT ep. 
Definition: gphoto2-port.h:123
Carrier Detect line. 
Definition: gphoto2-port.h:189
int gp_port_get_pin(GPPort *port, GPPin pin, GPLevel *level)
Get setting of specific serial PIN. 
Definition: gphoto2-port.c:651
int stopbits
Definition: gphoto2-port.h:72
GPPortType
The gphoto port type. 
Definition: gphoto2-port-info-list.h:34