Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Device::USB::DevInterfUser3Contributed Perl DocumeDevice::USB::DevInterface(3)

Device::USB::DevInterface
       This class encapsulates a USB Device Interface and the methods that
       object would support.

NAME
       Device::USB::DevInterface - Access a device interface returned by
       libusb.

VERSION
       Version 0.11

SYNOPSIS
       Device::USB:DevInterface	provides a Perl	object for accessing an
       interface of a configuration of a USB device using the libusb library.

	   use Device::USB;

	   my $usb = Device::USB->new();
	   my $dev = $usb->find_device(	$VENDOR, $PRODUCT );

	   printf "Device: %04X:%04X\n", $dev->idVendor(), $dev->idProduct();
	   $dev->open();

	   my $cfg = $dev->config()->[0];
	   my $inter = $cfg->interfaces()->[0];
	   print "Interface:", $inter->bInterfaceNumber(),
	      "	name: ", $dev->get_string_simple($iter->iInterface()),
	      ": endpoint count: ", $inter->nNumEndpoints(), "\n";

       See USB specification for an explanation	of the attributes of an
       interface.

DESCRIPTION
       This module defines a Perl object that represents the data associated
       with a USB device configuration's interface. The	object provides	read-
       only access to the important data associated with the interface.

   METHODS
       There are several accessor methods that return data from	the interface.
       Each is named after the field that they return. These accessors
       include:

       bInterfaceNumber
	   The 0-based number of this interface.

       bAlternateSetting
	   Value used to select	this alternate setting for the interface
	   specified in	bInterfaceNumber.

       bNumEndpoints
	   Number of endpoints (excluding endpoint 0) available	on this
	   interface.  If the value  is	0, only	the control interface is
	   supported.

       bInterfaceClass
	   Class code as specified by the USB-IF. A value of 0xff is a vendor-
	   specific interface class.

       bInterfaceSubClass
	   Subclass code specified by the USB-IF. If bInterfaceClass is	not
	   0xff, this field must use only subclasses specified by the USB-IF.

       bInterfaceProtocol
	   The InterfaceProtocol as specified by the USB-IF. A value of	0xff
	   uses	a vendor-specific protocol.

       iInterface
	   Returns the index of	the string descriptor describing this
	   interface.  The string can be retrieved using the method
	   "Device::USB::Device::get_string_simple".

       endpoints
	   Returns a list of endpoint objects associated with this interface.

DIAGNOSTICS
       This is an explanation of the diagnostic	and error messages this	module
       can generate.

DEPENDENCIES
       This module depends on the Carp,	Inline and Inline::C modules, as well
       as the strict and warnings pragmas. Obviously, libusb must be available
       since that is the entire	reason for the module's	existence.

AUTHOR
       G. Wade Johnson (wade at	anomaly	dot org) Paul Archer (paul at
       paularcher dot org)

       Houston Perl Mongers Group

BUGS
       Please report any bugs or feature requests to
       "bug-device-usb@rt.cpan.org", or	through	the web	interface at
       <http://rt.cpan.org/NoAuth/ReportBug.html?Device::USB>.	I will be
       notified, and then you'll automatically be notified of progress on your
       bug as I	make changes.

ACKNOWLEDGEMENTS
       Thanks go to various members of the Houston Perl	Mongers	group for
       input on	the module. But	thanks mostly go to Paul Archer	who proposed
       the project and helped with the development.

COPYRIGHT & LICENSE
       Copyright 2006 Houston Perl Mongers

       This program is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.

perl v5.32.1			  2008-06-02	  Device::USB::DevInterface(3)

Device::USB::DevInterface | NAME | VERSION | SYNOPSIS | DESCRIPTION | DIAGNOSTICS | DEPENDENCIES | AUTHOR | BUGS | ACKNOWLEDGEMENTS | COPYRIGHT & LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Device::USB::DevInterface&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help