Anna Schumaker
9fa5f0b0db
core/queue: Remove unused queue_erase() function
...
It's just added complexity that we don't need to keep around at this
point.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-28 09:40:02 -04:00
Anna Schumaker
9b4a1785a1
core/queue: Remove Q_ADD_FRONT flag
...
And replace its use with a queue_add_front() function instead.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-28 09:40:02 -04:00
Anna Schumaker
c59b097638
core/queue: Remove Q_ENABLED flag
...
Queues are always enabled now that we can select different playlists as
the default.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-28 09:40:02 -04:00
Anna Schumaker
7e3e4194f3
core/queue: Remove Q_NO_SORT
...
This flag was only used by the History playlist, but we have a noop
function to handle this instead.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-28 09:40:02 -04:00
Anna Schumaker
186367afe0
core/queue: Remove qop_save()
...
This callback is no longer used now that saving happens in the playlist
layer.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-28 09:40:02 -04:00
Anna Schumaker
62e494f2af
core/queue: Remove Q_SAVE_FLAGS and Q_SAVE_SORT
...
These flags are unused now that the playlist layer handles saving.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-28 09:40:02 -04:00
Anna Schumaker
d373c55320
core/queue: Add a queue_erase_track() function
...
Used to trigger the erase callback on tracks, rather than indexes.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2017-04-14 13:58:05 -04:00
Anna Schumaker
28e5045975
core/queue: Give queues the option to save and load iterator positions
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2016-09-26 08:07:34 -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
7f0e1ecc99
core/queue: Add queue_{save, load}_flags() function
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-29 17:06:03 -04:00
Anna Schumaker
9a98a009e9
core/queue: Add queue_{save|load}_tracks() function
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
9ec2497ac5
core/queue: Add a queue_has() function
...
Used to check if a track is on a queue.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
afb2653f65
core/queue: queue_remove_all() returns count of tracks removed
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
378ff72307
Remove core/containers/queue
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
db01ed3208
core/queue: Use a GQueue directly
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
2b426cff48
core/queue: Switch over to using struct queue_iter
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
9835235acd
core/queue: Implement a new queue_iter
...
I plan to remove the containers/queue implementation, so we need a new
iterator for queue access.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
6bb08ddbaa
core/queue: Call g_queue_*() functions directly
...
This is a first step to removing core/containers/queue
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-07-19 08:13:10 -04:00
Anna Schumaker
aee4764a2c
core/queue: Add queue_erase() and qop_erase()
...
This function is similar to queue_remove(), except the remove can be
prevented if qop_erase() returns false.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-05-27 12:01:43 -04:00
Anna Schumaker
5419711409
core/queue: Add qop_deinit() queue operation
...
This function is used to notify a higher layer that a queue is being
deinitialized. The higher layer should then clean up any state
associated with that queue.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-05-13 16:36:44 -04:00
Anna Schumaker
8bb7a20ff4
core/queue: Add qop_init() queue operation
...
This function is used to notify a higher layer that a queue has been
initialized. That higher layer can return a pointer to be attached to
the "private data" field of the queue.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-05-13 16:36:44 -04:00
Anna Schumaker
711eb67f44
core/queue: Fix queue random and selection test
...
6.4.8 changed how random tracks are selected, but never updated the unit
test. This patch fixes the unit test, and makes a few changes to make
sure the right tracks are getting selected.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-03-28 08:03:21 -04:00
Anna Schumaker
e47540a84e
core/queue: Add queue_clear()
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 10:12:09 -05:00
Anna Schumaker
cc164fc4ee
core/queue: Add queue_deinit()
...
To clean up a queue when we're done with it.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 10:12:00 -05:00
Anna Schumaker
9701da5392
core/queue: Add a function to resort the queue
...
This can be combined with the Q_ADD_FRONT flag for efficient bulk
insertions.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
0b84b6180c
core/queue: Convert file to C
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
799a8d34b5
core/queue: Convert q_sort to a GSList
...
I needed to bump the track comparison fields by one so I can use signed
values to indicate sort order. I updated core/library.cpp to add and
subtract one as needed.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
6fa78dbf3a
core/queue: Convert q_cur into a queue iterator
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
8fb64015b4
core/queue: Replace vector with struct _queue
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
0a331a44f5
core/queue: Replace on_track_updated() with qop_updated()
...
This patch also removes the now-unused queue notifier class.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
da0c96ac51
core/queue: Replace on_track_removed() with qop_removed()
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
df06b444cf
core/queue: Replace on_track_added() with qop_added()
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
daa09becf7
core/queue: Remove queue destructor
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
6aab58629e
core/queue: Move read() and write() into TempQueues
...
These functions are only used by temporary queues, and the collection
queue has its own save function.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
acc78a6667
core/queue: Move queue_remove_all() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
ea00b406e5
core/queue: Move queue_remove() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
d5e34b76d4
core/queue: Add Q_ADD_FRONT flag
...
This tells the queue to always add tracks at the front.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
8fe85b9782
core/queue: Move queue_add() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
4c4d0ab6ce
core/queue: Move queue_sort() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
13723856fc
core/queue: Move queue_{set|unset}_flag() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
ce55ef2421
core/queue: Add queue operations vector
...
And a function to help with saving queues. This patch also adds the
Q_SAVE_FLAGS and Q_SAVE_SORT queue flags to control if the queue should
be saved when flags are changed or when the queue is sorted.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
b3a8fa293b
core/queue: Move queue_has_flag() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
3e5bef5f3c
core/queue: Move queue_updated() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
ff0c2a09a8
core/queue: Move queue_at() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
c259177dde
core/queue: Move queue_size() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
331e56716a
core/queue: Move queue_next() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
6bd625f65b
core/queue: Move queue_selected() out of the queue struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
d6ae61d915
core/queue: Remove queue :: set_notifier()
...
Let's just set the q_notify variable directly, rather than going through
a function.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
a721a95604
core/queue: Remove queue :: length()
...
Let's just access the q_length variable directly.
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00
Anna Schumaker
281947aded
core/queue: Convert from class to struct
...
Signed-off-by: Anna Schumaker <Anna@OcarinaProject.net>
2016-01-29 08:22:10 -05:00