class Musicality::AddingSequence
Attributes
start_value[R]
Public Class Methods
new(pattern, start_val = 0)
click to toggle source
# File lib/musicality/composition/util/adding_sequence.rb, line 7 def initialize pattern, start_val = 0 raise EmptyError if pattern.empty? @pattern = pattern @n = pattern.size @start_value = start_val end
Public Instance Methods
next_value(cur_val, cur_idx)
click to toggle source
# File lib/musicality/composition/util/adding_sequence.rb, line 16 def next_value cur_val, cur_idx cur_val + @pattern[cur_idx % @n] end
pattern_size()
click to toggle source
# File lib/musicality/composition/util/adding_sequence.rb, line 14 def pattern_size; @pattern.size; end
prev_value(cur_val, cur_idx)
click to toggle source
# File lib/musicality/composition/util/adding_sequence.rb, line 19 def prev_value cur_val, cur_idx cur_val - @pattern[(cur_idx-1) % @n] end