Anna Schumaker
f70b2b940f
core/playlists/artist: Add basic artist operations
...
For now, hidden tracks are shown in artist queues.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
24448aefec
core/playlists/artist: Add tracks to the artist playlists
...
I use a single idle task to scan the track database and add to the
appropriate playlist.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
12ae7cfee6
core/playlists/artist: Add pl_artist_{init, deinit}() functions
...
The pl_artist_init() function is used to allocate a playlist for each
artist already in the database, and pl_artist_deinit() is then used to
free up this memory during cleanup.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
11430f89cf
core/playlists/library: Add pl_library_update() function
...
This is called to find and add new tracks to the library.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
e1a722d04b
core/playlists/library: Adding a library starts a directory scan
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
c448db2665
core/playlists: Add playlist_{new, delete}() functions
...
System playlists cannot be created or deleted, so these functions simply
return false in this case. Library playlists will use this to add new
library paths to Ocarina.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
78aa0f9ff6
core/playlists/library: Add pl_library_sort() function
...
Used to sort library playlists.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
7f867199cb
core/playlists/library: Add pl_library_set_flag() function
...
I also take the opportunity to add in a generic lookup function to
convert a library path into a playlist.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
1599897fbf
core/playlists/library: Add pl_library_add_rm() function
...
This function is for both adding and removing tracks, and only returns
false. Tracks will only be added and removed through the update
function.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
c5a0a3470e
core/playlists/library: Add pl_library_get_queue() function
...
Called to access the track queue associated with the given playlist.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
4d5569ef7a
core/playlists/library: Add tracks to library playlists
...
This needs to happen in an idle task since the track database is loaded
when idle.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
261f6d91d7
core/playlists/library: Add pl_library_{init, deinit}() functions
...
The pl_library_init() function is used to allocate a playlist for each
library path already in the database, and pl_library_deinit() is then
used to free this memory during cleanup.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
e4930704a2
core/playlists/system: Add pl_system_delete_track()
...
Called to remove a track from all system playlists.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
03ed7c4b84
core/playlists/system: Add pl_system_new_track()
...
Called to tell system playlists that a new track has been added to the
database.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
cfeca9ae4b
core/playlist: Add playlist_type enum
...
I'm going to use this to distinguish between various playlist types that
are about to be added. Let's update the playlist functions first, and
then add more types in a future patch.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-08-13 08:31:30 -04:00
Anna Schumaker
5a54fb69b6
core/collection: Remove unused queue
...
And remove collection_ops from the core initdata
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:09:33 -04:00
Anna Schumaker
efae58c356
core/playlists/system: Add history playlist
...
Implements #8 : Convert history queue into a playlist
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:04 -04:00
Anna Schumaker
6265b937c7
core/playlists/system: Add collection playlist
...
Implements #7 : Convert collection queue into a playlist
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:03 -04:00
Anna Schumaker
5d4de9c5b0
core/playlist: Add playlist_sort() function
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:03 -04:00
Anna Schumaker
c7bc2062d2
core/playlist: Add playlist_{get,set}_random()
...
I'll need this to toggle the random flag for the Collection playlist to
avoid cycling through the GUI in order to save.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:03 -04:00
Anna Schumaker
62123eb025
core/playlists: Add struct playlist
...
Containing the playlist name and queue. I pass this to the gui through
the queue_init() function.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:03 -04:00
Anna Schumaker
44a57ed863
core/queue: Add extra paramater to queue_init()
...
This is used to pass through a value to the GUI during queue
initialization.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:03 -04:00
Anna Schumaker
1d1e41916a
core/playlists/system: Check that we read a valid playlist name
...
Otherwise we could crash when we try to access an out of bounds area of
the playlist array.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2016-07-28 08:55:53 -04:00
Anna Schumaker
2ff7113668
core/playlists/system: Move the least played playlist into system.c
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 16:03:10 -04:00
Anna Schumaker
9d3cc2e5ab
core/playlists/system: Move the most played playlist into system.c
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 16:03:09 -04:00
Anna Schumaker
5ab2e63734
core/playlists/system: Move the unplayed tracks playlist into system.c
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 16:03:06 -04:00
Anna Schumaker
1527ee0e6d
core/playlist: Add playlist_update() function
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 16:03:06 -04:00
Anna Schumaker
a465577c86
core/playlists/system: Move system playlists into a new file
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 16:03:06 -04:00