Class: LIBUSB::IsochronousTransfer
- Inherits:
-
Transfer
- Object
- Transfer
- LIBUSB::IsochronousTransfer
- Defined in:
- lib/libusb/transfer.rb
Constant Summary
Constant Summary
Constants inherited from Transfer
Transfer::TransferStatusToError
Instance Method Summary (collapse)
- - (Object) [](nr)
-
- (IsochronousTransfer) initialize(num_packets, args = {})
constructor
A new instance of IsochronousTransfer.
- - (Object) num_packets
- - (Object) num_packets=(number)
-
- (Object) packet_lengths=(len)
Convenience function to set the length of all packets in an isochronous transfer, based on #num_packets.
Methods inherited from Transfer
#alloc_buffer, #buffer, #buffer=, #callback=, #cancel!, #dev_handle=, #endpoint=, #free_buffer, #status, #submit!, #submit_and_wait, #submit_and_wait!, #timeout=
Constructor Details
- (IsochronousTransfer) initialize(num_packets, args = {})
A new instance of IsochronousTransfer
247 248 249 250 251 252 253 254 |
# File 'lib/libusb/transfer.rb', line 247 def initialize(num_packets, args={}) @ptr = Call.libusb_alloc_transfer(num_packets) @transfer = Call::Transfer.new @ptr @transfer[:type] = TRANSFER_TYPE_ISOCHRONOUS @transfer[:timeout] = 1000 @transfer[:num_iso_packets] = num_packets super(args) end |
Instance Method Details
- (Object) [](nr)
263 264 265 |
# File 'lib/libusb/transfer.rb', line 263 def [](nr) IsoPacket.new( @ptr + Call::Transfer.size + nr*Call::IsoPacketDescriptor.size, nr) end |
- (Object) num_packets
256 257 258 |
# File 'lib/libusb/transfer.rb', line 256 def num_packets @transfer[:num_iso_packets] end |
- (Object) num_packets=(number)
259 260 261 |
# File 'lib/libusb/transfer.rb', line 259 def num_packets=(number) @transfer[:num_iso_packets] = number end |
- (Object) packet_lengths=(len)
Convenience function to set the length of all packets in an isochronous transfer, based on #num_packets.
269 270 271 272 273 274 275 |
# File 'lib/libusb/transfer.rb', line 269 def packet_lengths=(len) ptr = @ptr + Call::Transfer.size num_packets.times do ptr.write_uint(len) ptr += Call::IsoPacketDescriptor.size end end |