10#define PTP_TIMEOUT 1000
21 uint32_t endpoint_out;
22 uint32_t endpoint_int;
25 char manufacturer[16];
26 void *device_handle_ptr;
55int ptp_cmd_read(
struct PtpRuntime *r,
void *to,
unsigned int length);
67int ptp_read_int(
struct PtpRuntime *r,
void *to,
unsigned int length);
74int ptpip_connect(
struct PtpRuntime *r,
const char *addr,
int port,
int extra_tmout);
81int ptpip_event_send(
struct PtpRuntime *r,
void *data,
unsigned int size);
82int ptpip_event_read(
struct PtpRuntime *r,
void *data,
unsigned int size);
int ptp_send_packet(struct PtpRuntime *r, unsigned int length)
Send packets in r->data.
int ptp_device_reset(struct PtpRuntime *r)
Reset the USB endpoints if possible.
int ptpusb_get_status(struct PtpRuntime *r)
Get status of currently connected device This is a quick and cheap way to check if the connection is ...
int ptp_device_open(struct PtpRuntime *r, struct PtpDeviceEntry *entry)
Open and connect to a device from the PtpDeviceEntry structure.
int ptpip_connect_events(struct PtpRuntime *r, const char *addr, int port)
Connect PTP/IP event socket. Port depends on implementation.
void ptp_comm_deinit(struct PtpRuntime *r)
Deinits backend and frees all memory.
struct PtpDeviceEntry * ptpusb_device_list(struct PtpRuntime *r)
Get a linked list of USB or PTP Devices.
int ptp_device_init(struct PtpRuntime *r)
Connects to the first PTP device it finds.
int ptp_read_int(struct PtpRuntime *r, void *to, unsigned int length)
Poll the interrupt endpoint.
int ptp_device_close(struct PtpRuntime *r)
Disconnect from the current device.
void ptpusb_free_device_list_entry(void *)
Backend must implement this to free the device_handle_ptr field in each device entry.
int ptp_receive_all_packets(struct PtpRuntime *r)
Receive all packets into r->data.
int ptpip_cmd_write(struct PtpRuntime *r, void *data, unsigned int size)
Send data over the raw command endpoint for USB backend.
int ptpip_connect(struct PtpRuntime *r, const char *addr, int port, int extra_tmout)
Connect to a TCP port on the default network adapter.
void ptpusb_free_device_list(struct PtpDeviceEntry *e)
Frees the device entry linked list.
int ptpip_cmd_read(struct PtpRuntime *r, void *data, unsigned int size)
Receive raw data over the command endpoint for USB backend.
int ptp_cmd_read(struct PtpRuntime *r, void *to, unsigned int length)
Receive raw data over the command endpoint for USB backend.
int ptp_cmd_write(struct PtpRuntime *r, void *to, unsigned int length)
Send data over the raw command endpoint for USB backend.
int ptpip_device_close(struct PtpRuntime *r)
Disconnect from a PTP/IP device.
int ptp_comm_init(struct PtpRuntime *r)
Initializes backend context.
Linked-list entry for a single USB device.