class Blender3d::FileHeader
Attributes
endian_code[R]
endianness[R]
identifier[RW]
pointer_size[R]
size_code[R]
version[RW]
Public Class Methods
new(file = nil)
click to toggle source
# File lib/blender-3d/file_header.rb, line 9 def initialize(file = nil) deserialize(file) if file end
Public Instance Methods
big_endian?()
click to toggle source
# File lib/blender-3d/file_header.rb, line 35 def big_endian? !little_endian? end
deserialize(file)
click to toggle source
# File lib/blender-3d/file_header.rb, line 13 def deserialize(file) self.identifier = file.read(7) self.pointer_size = file.read(1) == '-'.freeze ? 8 : 4 self.endianness = file.read(1) == 'v'.freeze ? :little : :big self.version = file.read(1) + '.'.freeze + file.read(2) self end
endianness=(value)
click to toggle source
# File lib/blender-3d/file_header.rb, line 26 def endianness=(value) @endianness = value @endian_code = little_endian? ? '<'.freeze : '>'.freeze end
little_endian?()
click to toggle source
# File lib/blender-3d/file_header.rb, line 31 def little_endian? @endianness == :little end
pointer_size=(value)
click to toggle source
# File lib/blender-3d/file_header.rb, line 21 def pointer_size=(value) @pointer_size = value @size_code = @pointer_size == 8 ? 'Q'.freeze : 'L'.freeze end