Class: USB::DevHandle
- Inherits:
-
Object
- Object
- USB::DevHandle
- Defined in:
- lib/libusb/compat.rb
Instance Method Summary (collapse)
- - (Object) get_string_simple(index)
-
- (DevHandle) initialize(dev)
constructor
A new instance of DevHandle.
- - (Object) usb_bulk_read(endpoint, bytes, timeout)
- - (Object) usb_bulk_write(endpoint, bytes, timeout)
- - (Object) usb_claim_interface(c) (also: #claim_interface)
- - (Object) usb_clear_halt(c) (also: #clear_halt)
- - (Object) usb_close
- - (Object) usb_control_msg(requesttype, request, value, index, bytes, timeout)
- - (Object) usb_detach_kernel_driver_np(interface, dummy = nil)
- - (Object) usb_get_driver_np(interface, buffer)
- - (Object) usb_get_string(index, langid, buffer)
- - (Object) usb_get_string_simple(index, buffer)
- - (Object) usb_interrupt_read(endpoint, bytes, timeout)
- - (Object) usb_interrupt_write(endpoint, bytes, timeout)
- - (Object) usb_release_interface(c) (also: #release_interface)
- - (Object) usb_reset
- - (Object) usb_set_altinterface(c) (also: #set_altinterface)
- - (Object) usb_set_configuration(c) (also: #set_configuration)
Constructor Details
- (DevHandle) initialize(dev)
A new instance of DevHandle
291 292 293 |
# File 'lib/libusb/compat.rb', line 291 def initialize(dev) @dev = dev end |
Instance Method Details
- (Object) get_string_simple(index)
372 373 374 |
# File 'lib/libusb/compat.rb', line 372 def get_string_simple(index) @dev.string_descriptor_ascii(index) end |
- (Object) usb_bulk_read(endpoint, bytes, timeout)
330 331 332 333 334 |
# File 'lib/libusb/compat.rb', line 330 def usb_bulk_read(endpoint, bytes, timeout) res = @dev.bulk_transfer(:endpoint=>endpoint, :dataIn=>bytes.bytesize, :timeout=>timeout) bytes[0, res.bytesize] = res res.bytesize end |
- (Object) usb_bulk_write(endpoint, bytes, timeout)
327 328 329 |
# File 'lib/libusb/compat.rb', line 327 def usb_bulk_write(endpoint, bytes, timeout) @dev.bulk_transfer(:endpoint=>endpoint, :dataOut=>bytes, :timeout=>timeout) end |
- (Object) usb_claim_interface(c) Also known as: claim_interface
300 |
# File 'lib/libusb/compat.rb', line 300 def usb_claim_interface(c); @dev.claim_interface(c); end |
- (Object) usb_clear_halt(c) Also known as: clear_halt
298 |
# File 'lib/libusb/compat.rb', line 298 def usb_clear_halt(c); @dev.clear_halt(c); end |
- (Object) usb_close
295 |
# File 'lib/libusb/compat.rb', line 295 def usb_close; @dev.close; end |
- (Object) usb_control_msg(requesttype, request, value, index, bytes, timeout)
313 314 315 316 317 318 319 320 321 322 323 324 325 |
# File 'lib/libusb/compat.rb', line 313 def usb_control_msg(requesttype, request, value, index, bytes, timeout) if requesttype&LIBUSB::ENDPOINT_IN != 0 # transfer direction in res = @dev.control_transfer(:bmRequestType=>requesttype, :bRequest=>request, :wValue=>value, :wIndex=>index, :dataIn=>bytes.bytesize, :timeout=>timeout) bytes[0, res.bytesize] = res res.bytesize else # transfer direction out @dev.control_transfer(:bmRequestType=>requesttype, :bRequest=>request, :wValue=>value, :wIndex=>index, :dataOut=>bytes, :timeout=>timeout) end end |
- (Object) usb_detach_kernel_driver_np(interface, dummy = nil)
349 350 351 |
# File 'lib/libusb/compat.rb', line 349 def usb_detach_kernel_driver_np(interface, dummy=nil) @dev.detach_kernel_driver(interface) end |
- (Object) usb_get_driver_np(interface, buffer)
355 356 357 358 359 360 361 362 363 |
# File 'lib/libusb/compat.rb', line 355 def usb_get_driver_np(interface, buffer) if @dev.kernel_driver_active?(interface) t = "unknown driver" buffer[0, t.length] = t else raise Errno::ENODATA, "No data available" end nil end |
- (Object) usb_get_string(index, langid, buffer)
302 303 304 305 306 |
# File 'lib/libusb/compat.rb', line 302 def usb_get_string(index, langid, buffer) t = @dev.string_descriptor(index, langid) buffer[0, t.length] = t t.length end |
- (Object) usb_get_string_simple(index, buffer)
307 308 309 310 311 |
# File 'lib/libusb/compat.rb', line 307 def usb_get_string_simple(index, buffer) t = @dev.string_descriptor_ascii(index) buffer[0, t.length] = t t.length end |
- (Object) usb_interrupt_read(endpoint, bytes, timeout)
339 340 341 342 343 |
# File 'lib/libusb/compat.rb', line 339 def usb_interrupt_read(endpoint, bytes, timeout) res = @dev.interrupt_transfer(:endpoint=>endpoint, :dataIn=>bytes.bytesize, :timeout=>timeout) bytes[0, res.bytesize] = res res.bytesize end |
- (Object) usb_interrupt_write(endpoint, bytes, timeout)
336 337 338 |
# File 'lib/libusb/compat.rb', line 336 def usb_interrupt_write(endpoint, bytes, timeout) @dev.interrupt_transfer(:endpoint=>endpoint, :dataOut=>bytes, :timeout=>timeout) end |
- (Object) usb_release_interface(c) Also known as: release_interface
301 |
# File 'lib/libusb/compat.rb', line 301 def usb_release_interface(c); @dev.release_interface(c); end |
- (Object) usb_reset
299 |
# File 'lib/libusb/compat.rb', line 299 def usb_reset; @dev.reset_device; end |
- (Object) usb_set_altinterface(c) Also known as: set_altinterface
297 |
# File 'lib/libusb/compat.rb', line 297 def usb_set_altinterface(c); @dev.set_interface_alt_setting=c; end |
- (Object) usb_set_configuration(c) Also known as: set_configuration
296 |
# File 'lib/libusb/compat.rb', line 296 def usb_set_configuration(c); @dev.configuration=c; end |