usb_io.c File Reference

#include <string.h>
#include <usb.h>
#include "base.h"
#include "libnjb.h"
#include "ioutil.h"
#include "usb_io.h"
#include "njb_error.h"

Functions

ssize_t usb_pipe_write (njb_t *njb, void *buf, size_t nbytes)
ssize_t usb_pipe_read (njb_t *njb, void *buf, size_t nbytes)
int usb_setup (njb_t *njb, int type, int request, int value, int index, int length, void *data)

Variables

int __sub_depth

Detailed Description

This file contain some USB-specific code that is used by all devices.

Function Documentation

ssize_t usb_pipe_read ( njb_t njb,
void *  buf,
size_t  nbytes 
)

This function reads a chunk of bytes to a buffer from a device's IN endpoint.

Parameters:
njb the jukebox object to use
buf the buffer to store the bytes in
nbytes the number of bytes to read in
Returns:
the number of bytes actually read

References data_dump_ascii(), DD_USBBLK, DD_USBBLKLIM, njb_struct::dev, njb_debug(), and njb_struct::usb_bulk_in_ep.

Referenced by njb3_add_multiple_tracks_to_playlist(), njb3_create_playlist(), njb3_get_codecs(), njb3_get_file_block(), njb3_power_status(), njb3_request_file_chunk(), njb_ping(), njb_read_eaxtypes(), and njb_receive_file_block().

ssize_t usb_pipe_write ( njb_t njb,
void *  buf,
size_t  nbytes 
)

This function writes a number of bytes from a buffer to a devices OUT endpoint.

Parameters:
njb the jukebox object to use
buf the buffer to send bytes from
nbytes the number of bytes to write
Returns:
the number of bytes actually written

References data_dump_ascii(), DD_USBBLK, DD_USBBLKLIM, njb_struct::dev, njb_debug(), and njb_struct::usb_bulk_out_ep.

int usb_setup ( njb_t njb,
int  type,
int  request,
int  value,
int  index,
int  length,
void *  data 
)


Variable Documentation

The current subroutine depth for all of libnjb (global)

Referenced by usb_setup().


Generated on Sun Aug 9 05:16:54 2009 for libnjb by  doxygen 1.5.9