1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
/*
* Copyright (C) 2005-2018 Team Kodi
* This file is part of Kodi - https://kodi.tv
*
* SPDX-License-Identifier: GPL-2.0-or-later
* See LICENSES/README.md for more information.
*/
#pragma once
#include "IFileDirectory.h"
#include "music/tags/MusicInfoTag.h"
namespace XFILE
{
class CMusicFileDirectory : public IFileDirectory
{
public:
CMusicFileDirectory(void);
~CMusicFileDirectory(void) override;
bool GetDirectory(const CURL& url, CFileItemList &items) override;
bool Exists(const CURL& url) override;
bool ContainsFiles(const CURL& url) override;
bool AllowAll() const override { return true; }
protected:
virtual bool Load(const std::string& strFileName,
MUSIC_INFO::CMusicInfoTag& tag,
EmbeddedArt* art = nullptr) { return false; }
virtual int GetTrackCount(const std::string& strPath) = 0;
std::string m_strExt;
MUSIC_INFO::CMusicInfoTag m_tag;
};
}
|