libmtp  0.1.4
libusb-glue.h
Go to the documentation of this file.
1 
30 #include "ptp.h"
31 #include <usb.h>
32 #include "libmtp.h"
33 
34 #define USB_BULK_READ usb_bulk_read
35 #define USB_BULK_WRITE usb_bulk_write
36 
43 #define DEVICE_FLAG_NONE 0x00000000
44 
49 #define DEVICE_FLAG_DUALMODE 0x00000001
50 
55 #define DEVICE_FLAG_UNLOAD_DRIVER 0x00000002
56 
61 #define DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST 0x00000004
62 
77 #define DEVICE_FLAG_NO_ZERO_READS 0x00000008
78 
82 typedef struct _PTP_USB PTP_USB;
83 struct _PTP_USB {
84  usb_dev_handle* handle;
85  int interface;
86  int inep;
87  int inep_maxpacket;
88  int outep;
89  int outep_maxpacket;
90  int intep;
93  uint64_t current_transfer_total;
94  uint64_t current_transfer_complete;
95  LIBMTP_progressfunc_t current_transfer_callback;
96  void const * current_transfer_callback_data;
98  uint32_t device_flags;
99 };
100 
102  struct usb_device *libusb_device;
103  PTPParams *params;
104  PTP_USB *ptp_usb;
105  uint8_t interface_number;
106  struct mtpdevice_list_struct *next;
107 };
109 
110 int open_device (int busn, int devn, short force, PTP_USB *ptp_usb, PTPParams *params, struct usb_device **dev);
111 void dump_usbinfo(PTP_USB *ptp_usb);
112 void close_device (PTP_USB *ptp_usb, PTPParams *params, uint8_t interfaceNumber);
115 
116 /* connect_first_device return codes */
117 #define PTP_CD_RC_CONNECTED 0
118 #define PTP_CD_RC_NO_DEVICES 1
119 #define PTP_CD_RC_ERROR_CONNECTING 2
uint32_t device_flags
Definition: libusb-glue.h:98
void dump_usbinfo(PTP_USB *ptp_usb)
Definition: libusb-glue.c:529
LIBMTP_error_number_t find_usb_devices(mtpdevice_list_t **devlist)
Definition: libusb-glue.c:1618
int(* LIBMTP_progressfunc_t)(uint64_t const sent, uint64_t const total, void const *const data)
Definition: libmtp.h:146
int callback_active
Definition: libusb-glue.h:92
LIBMTP_error_number_t
Definition: libmtp.h:114
Definition: libusb-glue.h:101
void free_mtpdevice_list(mtpdevice_list_t *devlist)
Definition: libusb-glue.c:353
Definition: ptp.h:1319
Definition: libusb-glue.h:83