Class: Fit4Ruby::Record

Inherits:
FitDataRecord show all
Defined in:
lib/fit4ruby/Record.rb

Overview

The Record corresponds to the record FIT message. A Record is a basic set of primary measurements that are associated with a certain timestamp.

Constant Summary

Constants inherited from FitDataRecord

FitDataRecord::RecordOrder

Instance Attribute Summary

Attributes inherited from FitDataRecord

#message

Instance Method Summary collapse

Methods inherited from FitDataRecord

#<=>, #==, #get, #get_as, #inspect, #set, #set_field_values, #write

Methods included from Converters

#conversion_factor, #fit_time_to_time, #secsToDHMS, #secsToHM, #secsToHMS, #speedToPace, #time_to_fit_time

Constructor Details

#initialize(field_values = {}) ⇒ Record

Create a new Record object.

Parameters:

  • field_values (Hash) (defaults to: {})

    Hash that provides initial values for certain fields.



24
25
26
27
28
29
# File 'lib/fit4ruby/Record.rb', line 24

def initialize(field_values = {})
  super('record')
  @meta_field_units['pace'] = 'min/km'
  @meta_field_units['run_cadence'] = 'spm'
  set_field_values(field_values)
end

Instance Method Details

#paceFloat or nil

Convert the ‘speed’ or ‘enhanced_speed’ field into a running pace. The pace is measured in minutes per Kilometer.

Returns:

  • (Float or nil)

    pace for this Record in m/s or nil if not available.



45
46
47
48
49
# File 'lib/fit4ruby/Record.rb', line 45

def pace
  return nil unless @speed || @enhanced_speed

  1000.0 / ((@speed || @enhanced_speed) * 60.0)
end

#run_cadenceObject



31
32
33
34
35
36
37
38
39
# File 'lib/fit4ruby/Record.rb', line 31

def run_cadence
  if @cadence && @fractional_cadence
    (@cadence + @fractional_cadence) * 2
  elsif @cadence
    @cadence * 2
  else
    nil
  end
end