aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/Queue.hxx56
1 files changed, 27 insertions, 29 deletions
diff --git a/src/Queue.hxx b/src/Queue.hxx
index dcf431bc5..9e1bde3a4 100644
--- a/src/Queue.hxx
+++ b/src/Queue.hxx
@@ -28,35 +28,6 @@
#include <assert.h>
#include <stdint.h>
-enum {
- /**
- * reserve max_length * QUEUE_HASH_MULT elements in the id
- * number space
- */
- QUEUE_HASH_MULT = 4,
-};
-
-/**
- * One element of the queue: basically a song plus some queue specific
- * information attached.
- */
-struct queue_item {
- struct song *song;
-
- /** the unique id of this item in the queue */
- unsigned id;
-
- /** when was this item last changed? */
- uint32_t version;
-
- /**
- * The priority of this item, between 0 and 255. High
- * priority value means that this song gets played first in
- * "random" mode.
- */
- uint8_t priority;
-};
-
/**
* A queue of songs. This is the backend of the playlist: it contains
* an ordered list of songs.
@@ -68,6 +39,33 @@ struct queue_item {
* - the order number (which only differs from "position" in random mode)
*/
struct queue {
+ /**
+ * reserve max_length * QUEUE_HASH_MULT elements in the id
+ * number space
+ */
+ static constexpr unsigned QUEUE_HASH_MULT = 4;
+
+ /**
+ * One element of the queue: basically a song plus some queue specific
+ * information attached.
+ */
+ struct queue_item {
+ struct song *song;
+
+ /** the unique id of this item in the queue */
+ unsigned id;
+
+ /** when was this item last changed? */
+ uint32_t version;
+
+ /**
+ * The priority of this item, between 0 and 255. High
+ * priority value means that this song gets played first in
+ * "random" mode.
+ */
+ uint8_t priority;
+ };
+
/** configured maximum length of the queue */
unsigned max_length;