54#define LIBMTP_USB_DEBUG(format, args...) \ 
   56    if ((LIBMTP_debug & LIBMTP_DEBUG_USB) != 0) \ 
   57      fprintf(stdout, "LIBMTP %s[%d]: " format, __FUNCTION__, __LINE__, ##args); \ 
 
   60#define LIBMTP_USB_DATA(buffer, length, base) \ 
   62    if ((LIBMTP_debug & LIBMTP_DEBUG_DATA) != 0) \ 
   63      data_dump_ascii (stdout, buffer, length, base); \ 
   67#define USB_BULK_READ libusb_bulk_transfer 
   68#define USB_BULK_WRITE libusb_bulk_transfer 
   71#define USB_BULK_READ usb_bulk_read 
   72#define USB_BULK_WRITE usb_bulk_write 
   75#define USB_BULK_READ openusb_bulk_xfer 
   76#define USB_BULK_WRITE openusb_bulk_xfer 
   86  libusb_device_handle* handle;
 
   89  usb_dev_handle* handle;
 
   92  openusb_dev_handle_t* handle;
 
  106  uint64_t current_transfer_total;
 
  107  uint64_t current_transfer_complete;
 
  109  void const * current_transfer_callback_data;
 
 
  120void set_usb_device_timeout(
PTP_USB *ptp_usb, 
int timeout);
 
  121void get_usb_device_timeout(
PTP_USB *ptp_usb, 
int *timeout);
 
  122int guess_usb_speed(
PTP_USB *ptp_usb);
 
  125#define FLAG_BROKEN_MTPGETOBJPROPLIST_ALL(a) \ 
  126  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL) 
  127#define FLAG_UNLOAD_DRIVER(a) \ 
  128  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_UNLOAD_DRIVER) 
  129#define FLAG_BROKEN_MTPGETOBJPROPLIST(a) \ 
  130  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST) 
  131#define FLAG_NO_ZERO_READS(a) \ 
  132  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_NO_ZERO_READS) 
  133#define FLAG_IRIVER_OGG_ALZHEIMER(a) \ 
  134  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_IRIVER_OGG_ALZHEIMER) 
  135#define FLAG_ONLY_7BIT_FILENAMES(a) \ 
  136  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_ONLY_7BIT_FILENAMES) 
  137#define FLAG_NO_RELEASE_INTERFACE(a) \ 
  138  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_NO_RELEASE_INTERFACE) 
  139#define FLAG_IGNORE_HEADER_ERRORS(a) \ 
  140  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_IGNORE_HEADER_ERRORS) 
  141#define FLAG_BROKEN_SET_OBJECT_PROPLIST(a) \ 
  142  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_BROKEN_SET_OBJECT_PROPLIST) 
  143#define FLAG_OGG_IS_UNKNOWN(a) \ 
  144  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_OGG_IS_UNKNOWN) 
  145#define FLAG_BROKEN_SET_SAMPLE_DIMENSIONS(a) \ 
  146  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS) 
  147#define FLAG_ALWAYS_PROBE_DESCRIPTOR(a) \ 
  148  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_ALWAYS_PROBE_DESCRIPTOR) 
  149#define FLAG_PLAYLIST_SPL_V1(a) \ 
  150  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_PLAYLIST_SPL_V1) 
  151#define FLAG_PLAYLIST_SPL_V2(a) \ 
  152  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_PLAYLIST_SPL_V2) 
  153#define FLAG_PLAYLIST_SPL(a) \ 
  154  ((a)->rawdevice.device_entry.device_flags & (DEVICE_FLAG_PLAYLIST_SPL_V1 | DEVICE_FLAG_PLAYLIST_SPL_V2)) 
  155#define FLAG_CANNOT_HANDLE_DATEMODIFIED(a) \ 
  156  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_CANNOT_HANDLE_DATEMODIFIED) 
  157#define FLAG_BROKEN_SEND_OBJECT_PROPLIST(a) \ 
  158  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST) 
  159#define FLAG_BROKEN_BATTERY_LEVEL(a) \ 
  160  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_BROKEN_BATTERY_LEVEL) 
  161#define FLAG_FLAC_IS_UNKNOWN(a) \ 
  162  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_FLAC_IS_UNKNOWN) 
  163#define FLAG_UNIQUE_FILENAMES(a) \ 
  164  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_UNIQUE_FILENAMES) 
  165#define FLAG_SWITCH_MODE_BLACKBERRY(a) \ 
  166  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_SWITCH_MODE_BLACKBERRY) 
  167#define FLAG_LONG_TIMEOUT(a) \ 
  168  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_LONG_TIMEOUT) 
  169#define FLAG_FORCE_RESET_ON_CLOSE(a) \ 
  170  ((a)->rawdevice.device_entry.device_flags & DEVICE_FLAG_FORCE_RESET_ON_CLOSE) 
  173#define PTP_CD_RC_CONNECTED     0 
  174#define PTP_CD_RC_NO_DEVICES    1 
  175#define PTP_CD_RC_ERROR_CONNECTING      2 
LIBMTP_error_number_t
Definition libmtp.h:447
int(* LIBMTP_progressfunc_t)(uint64_t const sent, uint64_t const total, void const *const data)
Definition libmtp.h:483
const char * get_playlist_extension(PTP_USB *ptp_usb)
Definition libopenusb1-glue.c:716
LIBMTP_error_number_t configure_usb_device(LIBMTP_raw_device_t *device, PTPParams *params, void **usbinfo)
Definition libopenusb1-glue.c:2070
void dump_usbinfo(PTP_USB *ptp_usb)
Definition libopenusb1-glue.c:683
Definition libusb-glue.h:83
int callback_active
Definition libusb-glue.h:103
LIBMTP_raw_device_t rawdevice
Definition libusb-glue.h:111