Class: VirtDisk::Disk
- Inherits:
-
ClientHead
- Object
- ClientHead
- VirtDisk::Disk
- Defined in:
- lib/virt_disk/disk.rb
Constant Summary collapse
- DEFAULT_BLOCK_SIZE =
512
- DISK_SIG_OFFSET =
0x1B8
- DISK_SIG_SIZE =
4
Instance Attribute Summary
Attributes inherited from ClientHead
#end_byte_addr, #seek_pos, #size, #start_byte_addr
Instance Method Summary collapse
- #block_size ⇒ Object
- #disk_sig ⇒ Object
-
#initialize(up_stream_module) ⇒ Disk
constructor
A new instance of Disk.
Methods inherited from ClientHead
#close, #mod_read, #mod_write, #read, #seek, #write
Methods included from ExportMethods
#delegate, #delegate=, #exported?, included, #method_missing, #respond_to_missing?
Constructor Details
#initialize(up_stream_module) ⇒ Disk
Returns a new instance of Disk.
7 8 9 |
# File 'lib/virt_disk/disk.rb', line 7 def initialize(up_stream_module) super end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class VirtDisk::ExportMethods
Instance Method Details
#block_size ⇒ Object
11 12 13 14 |
# File 'lib/virt_disk/disk.rb', line 11 def block_size return @up_stream_module.block_size if @up_stream_module.respond_to?(:block_size) DEFAULT_BLOCK_SIZE end |
#disk_sig ⇒ Object
17 18 19 |
# File 'lib/virt_disk/disk.rb', line 17 def disk_sig @disk_sig ||= @up_stream_module.mod_read(DISK_SIG_OFFSET, DISK_SIG_SIZE).unpack('L')[0] end |