libsaria: Save queue to disk
I save when IDs are added and when a next track is chosen.
This commit is contained in:
parent
30c45f608f
commit
11e82cccf1
|
@ -21,6 +21,7 @@ namespace libsaria
|
|||
unsigned int size();
|
||||
string next_file();
|
||||
|
||||
void save();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
#include <libsaria/queue.h>
|
||||
#include "queue.h"
|
||||
|
||||
namespace libsaria
|
||||
{
|
||||
|
||||
void queue::save()
|
||||
{
|
||||
OutFile out("queue.q");
|
||||
deque<sid_t>::iterator it;
|
||||
|
||||
out << playqueue.size() << "\n";
|
||||
for (it = playqueue.begin(); it != playqueue.end(); it++)
|
||||
out << (*it) << "\n";
|
||||
}
|
||||
|
||||
}
|
|
@ -25,6 +25,7 @@ namespace libsaria
|
|||
playqueue.insert(playqueue.end(), ids.begin(), ids.end());
|
||||
println("Queue size: %d", playqueue.size());
|
||||
trigger_callback(QUEUE_REFRESH);
|
||||
save();
|
||||
}
|
||||
|
||||
unsigned int queue::size()
|
||||
|
@ -36,6 +37,7 @@ namespace libsaria
|
|||
{
|
||||
sid_t inode;
|
||||
pop_queue(inode);
|
||||
save();
|
||||
return library::find_filepath(inode);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue