Module: Hammelin
- Extended by:
- Hammelin
- Included in:
- Hammelin
- Defined in:
- lib/hammelin/note.rb,
lib/hammelin/version.rb,
lib/hammelin/hammelin.rb,
lib/hammelin/notes_range.rb
Defined Under Namespace
Classes: Note, NotesRange
Constant Summary
collapse
- VERSION =
"0.0.3"
- PADDING =
" "
Instance Method Summary
collapse
Instance Method Details
#compose(filename = nil, &block) ⇒ Object
34
35
36
37
38
39
|
# File 'lib/hammelin/hammelin.rb', line 34
def compose(filename=nil,&block)
instance_eval &block
save_to_file(filename) if filename
ensure
player.close
end
|
#play(tune) ⇒ Object
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/hammelin/hammelin.rb', line 17
def play(tune)
tune.play
rescue NoMethodError
case tune
when String
Note.new(tune).play
when Array
NotesRange.from_array(tune).play
end
end
|
#play_string(tune) ⇒ Object
28
29
30
31
32
|
# File 'lib/hammelin/hammelin.rb', line 28
def play_string(tune)
player.play(tune)
add_to_log(tune)
player.close
end
|