Class: Scale

Inherits:
Object show all
Defined in:
lib/mobiusloop/scale.rb

Overview

Superclass for all scales of measure Designed to be extended with the measure method implemented by the specific

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeScale

creates internal array to store measurements if sub-classes need their own initialize logic call super first



12
13
14
# File 'lib/mobiusloop/scale.rb', line 12

def initialize
  @measurements = Array.new
end

Instance Attribute Details

#measurementsObject (readonly)

Returns the value of attribute measurements.



7
8
9
# File 'lib/mobiusloop/scale.rb', line 7

def measurements
  @measurements
end

Instance Method Details

#add(measure) ⇒ Object

adds a new measure to end of array



28
29
30
# File 'lib/mobiusloop/scale.rb', line 28

def add(measure)
  @measurements.push(measure)
end

#measureObject

method to perform a measurement, should return an instance of Measure



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

def measure()
  raise "Someone forgot to override Scale.measure with their unique logic"
end

#record_measurementObject

performs measurement and adds to internal array



17
18
19
20
# File 'lib/mobiusloop/scale.rb', line 17

def record_measurement()
  new_measure = measure
  add(new_measure)
end