Class: Tassadar::MPQ::FileDataArray
- Inherits:
-
BinData::BasePrimitive
- Object
- BinData::BasePrimitive
- Tassadar::MPQ::FileDataArray
- Defined in:
- lib/tassadar/mpq/file_data.rb
Instance Method Summary collapse
- #read_and_return_value(io) ⇒ Object
- #sensible_default ⇒ Object
- #value_to_binary_string(value) ⇒ Object
Instance Method Details
#read_and_return_value(io) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tassadar/mpq/file_data.rb', line 60 def read_and_return_value(io) result = [] sector_size = 512 * (2 ** eval_parameter(:sector_size_shift)) eval_parameter(:blocks).each do |block| num_sectors = block.flags & 0x01000000 ? 1 : (block["block_size"] / sector_size) file = FileData.new(:adjust_offset => block.block_offset + eval_parameter(:archive_header_offset), :block => block).read(io) file.block_offset = block.block_offset result << file end result end |
#sensible_default ⇒ Object
80 81 82 |
# File 'lib/tassadar/mpq/file_data.rb', line 80 def sensible_default '' end |
#value_to_binary_string(value) ⇒ Object
76 77 78 |
# File 'lib/tassadar/mpq/file_data.rb', line 76 def value_to_binary_string(value) value.pack("V*") end |