Module: VixDiskMod
- Defined in:
- lib/disk/modules/VixDiskMod.rb
Instance Method Summary collapse
- #d_close ⇒ Object
- #d_init ⇒ Object
- #d_read(pos, len) ⇒ Object
-
#d_size ⇒ Object
Disk size in sectors.
- #d_write(pos, buf, len) ⇒ Object
- #getBase ⇒ Object
Instance Method Details
#d_close ⇒ Object
40 41 42 43 44 45 46 47 48 |
# File 'lib/disk/modules/VixDiskMod.rb', line 40 def d_close if @partNum == 0 $log.debug "VixDiskMod: closing disk #{@dInfo.fileName}" if $log $log.debug "VixDiskMod: closing base VdlDisk <#{@diskObj.ssId}>" if $log @diskObj.close else $log.debug "VixDiskMod: not base disk, not closing base VdlDisk" if $log end end |
#d_init ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/disk/modules/VixDiskMod.rb', line 4 def d_init self.diskType = "VixDisk" @vdi = dInfo.vixDiskInfo @connection = @vdi[:connection] if dInfo.mountMode.nil? || dInfo.mountMode == "r" dInfo.mountMode = "r" fileMode = VixDiskLib::VIXDISKLIB_FLAG_OPEN_READ_ONLY elsif dInfo.mountMode == "rw" fileMode = 0 else raise "Unrecognized mountMode: #{dInfo.mountMode}" end dInfo.fileName = @vdi[:fileName] unless (@diskObj = dInfo.vixDiskObj) @diskObj = @connection.getDisk(@vdi[:fileName], fileMode) dInfo.vixDiskObj = @diskObj end self.blockSize = @diskObj.sectorSize end |
#d_read(pos, len) ⇒ Object
30 31 32 33 |
# File 'lib/disk/modules/VixDiskMod.rb', line 30 def d_read(pos, len) pos += @dInfo.offset if @dInfo.offset @diskObj.read(pos, len) end |
#d_size ⇒ Object
Disk size in sectors.
51 52 53 |
# File 'lib/disk/modules/VixDiskMod.rb', line 51 def d_size @diskObj.info[:capacity] end |
#d_write(pos, buf, len) ⇒ Object
35 36 37 38 |
# File 'lib/disk/modules/VixDiskMod.rb', line 35 def d_write(pos, buf, len) pos += @dInfo.offset if @dInfo.offset @diskObj.write(pos, buf, len) end |
#getBase ⇒ Object
26 27 28 |
# File 'lib/disk/modules/VixDiskMod.rb', line 26 def getBase self end |