class Fit::File::Data
Public Class Methods
generate(definition)
click to toggle source
# File lib/fit/file/data.rb, line 7 def self.generate(definition) type = Definitions.get_name(definition.global_message_number.snapshot) || "data_record_#{definition.global_message_number.snapshot}" Class.new(self) do self.global_message_number = definition.global_message_number.snapshot endian definition.endianness class_eval <<-RUBY, __FILE__, __LINE__ + 1 def record_type :#{type} end RUBY definition.fields.each do |field| class_eval <<-RUBY, __FILE__, __LINE__ + 1 #{field.type} :#{field.raw_name} def #{field.name} #{field.raw_name}.snapshot #{ "/ #{field.scale.inspect}.0" if field.scale } end RUBY end end end