Class: Ephem::IO::RecordParser
- Inherits:
-
Object
- Object
- Ephem::IO::RecordParser
- Defined in:
- lib/ephem/io/record_parser.rb
Constant Summary collapse
- SUMMARY_CONTROL_SIZE =
3 doubles, 8 bytes each
24
Instance Method Summary collapse
-
#initialize(endianness:) ⇒ RecordParser
constructor
A new instance of RecordParser.
- #parse_file_record(file_record) ⇒ Object
- #parse_summary_control(data) ⇒ Object
Constructor Details
#initialize(endianness:) ⇒ RecordParser
Returns a new instance of RecordParser.
8 9 10 |
# File 'lib/ephem/io/record_parser.rb', line 8 def initialize(endianness:) @endianness = endianness end |
Instance Method Details
#parse_file_record(file_record) ⇒ Object
12 13 14 15 |
# File 'lib/ephem/io/record_parser.rb', line 12 def parse_file_record(file_record) data = file_record.unpack(record_format) RecordData.new(*data) end |
#parse_summary_control(data) ⇒ Object
17 18 19 20 21 22 23 24 25 |
# File 'lib/ephem/io/record_parser.rb', line 17 def parse_summary_control(data) format = "#{endian_double}3" values = data.unpack(format) { next_record: values[0].to_i, previous_record: values[1].to_i, n_summaries: values[2].to_i } end |