Module: BinaryWriterMixin

Included in:
Buffer
Defined in:
lib/binary_writer.rb

Instance Method Summary collapse

Instance Method Details

#write_int16_little(val) ⇒ Object



45
46
47
# File 'lib/binary_writer.rb', line 45

def write_int16_little(val)
  pw(val, 'v')
end

#write_int16_native(val) ⇒ Object

Signed



41
42
43
# File 'lib/binary_writer.rb', line 41

def write_int16_native(val)
  pw(val, 's')
end

#write_int16_network(val) ⇒ Object



49
50
51
# File 'lib/binary_writer.rb', line 49

def write_int16_network(val)
  pw(val, 'n')
end

#write_int32_little(val) ⇒ Object



79
80
81
# File 'lib/binary_writer.rb', line 79

def write_int32_little(val)
  pw(val, 'V')
end

#write_int32_native(val) ⇒ Object

Signed



75
76
77
# File 'lib/binary_writer.rb', line 75

def write_int32_native(val)
  pw(val, 'l')
end

#write_int32_network(val) ⇒ Object



83
84
85
# File 'lib/binary_writer.rb', line 83

def write_int32_network(val)
  pw(val, 'N')
end

#write_int8(val) ⇒ Object



13
14
15
# File 'lib/binary_writer.rb', line 13

def write_int8(val)
  pw(val, 'c')
end

#write_word16_little(val) ⇒ Object



27
28
29
30
31
# File 'lib/binary_writer.rb', line 27

def write_word16_little(val)
  str = [val].pack('S')
  str.reverse! if ByteOrder.network? # swap bytes as native=network (and we want little)
  write(str)
end

#write_word16_native(val) ⇒ Object

Unsigned



23
24
25
# File 'lib/binary_writer.rb', line 23

def write_word16_native(val)
  pw(val, 'S')
end

#write_word16_network(val) ⇒ Object



33
34
35
36
37
# File 'lib/binary_writer.rb', line 33

def write_word16_network(val)
  str = [val].pack('S')
  str.reverse! if ByteOrder.little? # swap bytes as native=little (and we want network)
  write(str)
end

#write_word32_little(val) ⇒ Object



61
62
63
64
65
# File 'lib/binary_writer.rb', line 61

def write_word32_little(val)
  str = [val].pack('L')
  str.reverse! if ByteOrder.network? # swap bytes as native=network (and we want little)
  write(str)
end

#write_word32_native(val) ⇒ Object

Unsigned



57
58
59
# File 'lib/binary_writer.rb', line 57

def write_word32_native(val)
  pw(val, 'L')
end

#write_word32_network(val) ⇒ Object



67
68
69
70
71
# File 'lib/binary_writer.rb', line 67

def write_word32_network(val)
  str = [val].pack('L')
  str.reverse! if ByteOrder.little? # swap bytes as native=little (and we want network)
  write(str)
end

#write_word8(val) ⇒ Object Also known as: write_byte

no byteorder for 8 bit!



9
10
11
# File 'lib/binary_writer.rb', line 9

def write_word8(val)
  pw(val, 'C')
end