mirror of
https://github.com/HappyTanuki/BumbleCee.git
synced 2025-10-26 09:55:14 +00:00
큐 완전 개혁
This commit is contained in:
33
include/MusicQueue.hpp
Normal file
33
include/MusicQueue.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
#pragma once
|
||||
#include <list>
|
||||
#include <FQueueElement.hpp>
|
||||
|
||||
struct FMusicQueueID {
|
||||
dpp::snowflake guild_id;
|
||||
uint32_t shard_id;
|
||||
};
|
||||
|
||||
class MusicQueue {
|
||||
public:
|
||||
MusicQueue(FMusicQueueID id);
|
||||
void operator+=(FQueueElement operand);
|
||||
FQueueElement pop(int index);
|
||||
FQueueElement peek(int index);
|
||||
bool empty();
|
||||
void clear();
|
||||
std::list<struct FQueueElement>::iterator begin();
|
||||
std::list<struct FQueueElement>::iterator end();
|
||||
std::size_t size();
|
||||
FMusicQueueID getId();
|
||||
void play(std::shared_ptr<dpp::cluster> botCluster);
|
||||
|
||||
void markerCallback(std::shared_ptr<dpp::cluster> botCluster);
|
||||
|
||||
bool repeat;
|
||||
private:
|
||||
std::list<struct FQueueElement> queue;
|
||||
std::mutex mutex;
|
||||
std::mutex playMutex;
|
||||
FMusicQueueID id;
|
||||
bool queuePlaying;
|
||||
};
|
||||
Reference in New Issue
Block a user