3 * Copyright (C) 2005-2013 Team XBMC
6 * This Program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2, or (at your option)
11 * This Program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with XBMC; see the file COPYING. If not, see
18 * <http://www.gnu.org/licenses/>.
22 #include "IDirectory.h"
28 \brief Wrappers for \e IDirectory
34 virtual ~CDirectory(void);
39 CHints() : flags(DIR_FLAG_DEFAULTS)
46 static bool GetDirectory(const CStdString& strPath
47 , CFileItemList &items
48 , const CStdString &strMask=""
49 , int flags=DIR_FLAG_DEFAULTS
50 , bool allowThreads=false);
52 static bool GetDirectory(const CStdString& strPath
53 , CFileItemList &items
55 , bool allowThreads=false);
57 static bool Create(const CStdString& strPath);
58 static bool Exists(const CStdString& strPath, bool bUseCache = true);
59 static bool Remove(const CStdString& strPath);
61 /*! \brief Filter files that act like directories from the list, replacing them with their directory counterparts
62 \param items The item list to filter
63 \param mask The mask to apply when filtering files */
64 static void FilterFileDirectories(CFileItemList &items, const CStdString &mask);