forked from blue/mlc
1
0
Fork 0
mlc/collection.h

31 lines
645 B
C
Raw Normal View History

2023-07-19 22:12:18 +00:00
#pragma once
#include <string>
#include <iostream>
#include <filesystem>
#include <functional>
#include "flactomp3.h"
class Collection {
public:
Collection(const std::string& path);
Collection(const std::filesystem::path& path);
~Collection();
void list() const;
uint32_t countMusicFiles() const;
void convert(const std::string& outPath, std::function<void()> progress = nullptr);
private:
static bool isMusic(const std::filesystem::path& path);
void prg() const;
private:
std::filesystem::path path;
mutable uint32_t countMusical;
mutable bool counted;
mutable uint32_t convertedSoFar;
};