Refactor metadata and internal data structures

Replace Metadata.h with Containers.h, introducing a HashTable
implementation with SIMD acceleration and specialized track tracking.
Cleanup PlayerEngine logic by merging it into the playback flow and
refactoring several internal API signatures.
This commit is contained in:
2026-06-20 22:04:26 +02:00
parent 80bffc0fdd
commit 20c0f9744f
14 changed files with 345 additions and 162 deletions
+15 -9
View File
@@ -1,20 +1,26 @@
#pragma once
#include "Metadata.h"
#include "containers.h"
//#include "file.h"
#include <filesystem>
#include <memory>
#include <taglib/tstring.h>
#include <taglib/fileref.h>
#include <taglib/tvariant.h>
class Tag {
public:
void readTag( TagLib::FileName fileName );
Metadata getMetadata() const;
namespace fs = std::filesystem;
const std::string& getFilePath() const;
const auto getArtwork() const;
class tag {
public:
void readtag( TagLib::filename filename );
metadata getmetadata() const;
const std::string& getfilepath() const;
const auto getartwork() const;
private:
Metadata metadata_;
std::string filePath_;
metadata metadata_;
std::string filepath_;
fs::path musicdir = music_folder;
};