31 lines
671 B
C++
31 lines
671 B
C++
#pragma once
|
|
|
|
#include <vector>
|
|
#include <Arduino.h>
|
|
#include "persisted_playlist.h"
|
|
|
|
class Playlist {
|
|
private:
|
|
std::vector<String> files;
|
|
uint8_t current_file = 0;
|
|
uint32_t current_time = 0;
|
|
String rfid_id;
|
|
PersistedPlaylist* pp;
|
|
|
|
public:
|
|
Playlist();
|
|
Playlist(String rfid_id, PersistedPlaylist* p);
|
|
void add_file(String filename);
|
|
void sort();
|
|
String get_rfid_id();
|
|
String get_current_file_name();
|
|
bool next_track();
|
|
bool prev_track();
|
|
void restart();
|
|
void set_current_time(uint32_t time);
|
|
uint32_t get_current_time();
|
|
void shuffle();
|
|
void set_current_position(uint8_t file, uint32_t position=0);
|
|
void save_current_position(uint32_t position=0);
|
|
};
|