Class: Eg::Music::MusicLibrary
- Inherits:
-
Object
- Object
- Eg::Music::MusicLibrary
- Defined in:
- lib/eg/music/music_library.rb
Constant Summary collapse
- @@library =
[]
- @@looking =
nil
Class Method Summary collapse
- .display_contents ⇒ Object
- .display_count ⇒ Object
- .find_album(album) ⇒ Object
- .find_all ⇒ Object
- .find_artist(author) ⇒ Object
- .find_genre(genre) ⇒ Object
- .find_year(year) ⇒ Object
- .library ⇒ Object
- .load(name) ⇒ Object
- .looking ⇒ Object
- .search(seconds) ⇒ Object
- .search_complete ⇒ Object
- .select(music) ⇒ Object
Class Method Details
.display_contents ⇒ Object
34 35 36 37 38 |
# File 'lib/eg/music/music_library.rb', line 34 def MusicLibrary.display_contents displayed = [] @@library.each {|music| displayed << music if music.selected?} displayed end |
.display_count ⇒ Object
29 30 31 32 33 |
# File 'lib/eg/music/music_library.rb', line 29 def MusicLibrary.display_count count = 0 @@library.each {|music| count += music.selected ? 1 : 0} count end |
.find_album(album) ⇒ Object
55 56 57 58 |
# File 'lib/eg/music/music_library.rb', line 55 def MusicLibrary.find_album album MusicLibrary.search 1.1 @@library.each {|music| music.selected = (music.album == album)} end |
.find_all ⇒ Object
47 48 49 50 |
# File 'lib/eg/music/music_library.rb', line 47 def MusicLibrary.find_all MusicLibrary.search 3.2 @@library.each {|music| music.selected = true} end |
.find_artist(author) ⇒ Object
51 52 53 54 |
# File 'lib/eg/music/music_library.rb', line 51 def MusicLibrary.find_artist MusicLibrary.search 2.3 @@library.each {|music| music.selected = (music.artist == )} end |
.find_genre(genre) ⇒ Object
59 60 61 62 |
# File 'lib/eg/music/music_library.rb', line 59 def MusicLibrary.find_genre genre search 0.2 @@library.each {|music| music.selected = (music.genre == genre)} end |
.find_year(year) ⇒ Object
63 64 65 66 |
# File 'lib/eg/music/music_library.rb', line 63 def MusicLibrary.find_year year search 0.8 @@library.each {|music| music.selected = (music.year == year)} end |
.library ⇒ Object
12 13 14 |
# File 'lib/eg/music/music_library.rb', line 12 def MusicLibrary.library @@library end |
.load(name) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/eg/music/music_library.rb', line 19 def MusicLibrary.load name music = [] f = File.new(name) f.each_line { |line| music << Music.parse(line) if f.lineno > 1 } # skip column headings f.close @@library = music end |
.looking ⇒ Object
15 16 17 |
# File 'lib/eg/music/music_library.rb', line 15 def MusicLibrary.looking @@looking end |
.search(seconds) ⇒ Object
40 41 42 43 |
# File 'lib/eg/music/music_library.rb', line 40 def MusicLibrary.search seconds Music.status = 'searching' Simulator.next_search_complete = Simulator.schedule seconds end |
.search_complete ⇒ Object
44 45 46 |
# File 'lib/eg/music/music_library.rb', line 44 def MusicLibrary.search_complete Music.status = (MusicPlayer..nil?) ? 'ready': 'playing' end |
.select(music) ⇒ Object
26 27 28 |
# File 'lib/eg/music/music_library.rb', line 26 def MusicLibrary.select music @@looking = music end |