kodi
MusicDatabaseDirectory.h
1 /*
2  * Copyright (C) 2005-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "IDirectory.h"
12 #include "MusicDatabaseDirectory/DirectoryNode.h"
13 #include "MusicDatabaseDirectory/QueryParams.h"
14 
15 namespace XFILE
16 {
18  {
19  public:
21  ~CMusicDatabaseDirectory(void) override;
22  bool GetDirectory(const CURL& url, CFileItemList &items) override;
23  bool AllowAll() const override { return true; }
24  bool Exists(const CURL& url) override;
25  static MUSICDATABASEDIRECTORY::NODE_TYPE GetDirectoryChildType(const std::string& strPath);
26  static MUSICDATABASEDIRECTORY::NODE_TYPE GetDirectoryType(const std::string& strPath);
27  static MUSICDATABASEDIRECTORY::NODE_TYPE GetDirectoryParentType(const std::string& strPath);
28  static bool GetDirectoryNodeInfo(const std::string& strPath, MUSICDATABASEDIRECTORY::NODE_TYPE& type, MUSICDATABASEDIRECTORY::NODE_TYPE& childtype, MUSICDATABASEDIRECTORY::CQueryParams& params);
29  bool IsArtistDir(const std::string& strDirectory);
30  void ClearDirectoryCache(const std::string& strDirectory);
31  static bool IsAllItem(const std::string& strDirectory);
32  static bool GetLabel(const std::string& strDirectory, std::string& strLabel);
33  bool ContainsSongs(const std::string &path);
34  static bool CanCache(const std::string& strPath);
35  static std::string GetIcon(const std::string& strDirectory);
36  };
37 }
bool GetDirectory(const CURL &url, CFileItemList &items) override
Get the items of the directory strPath.
Definition: MusicDatabaseDirectory.cpp:33
Interface to the directory on a file system.
Definition: IDirectory.h:51
Definition: Scraper.h:41
Represents a list of files.
Definition: FileItem.h:702
Definition: URL.h:21
bool AllowAll() const override
Whether to allow all files/folders to be listed.
Definition: MusicDatabaseDirectory.h:23
Definition: MusicDatabaseDirectory.h:17
bool Exists(const CURL &url) override
Check for directory existence.
Definition: MusicDatabaseDirectory.cpp:284