kodi
GroupUtils.h
1 /*
2  * Copyright (C) 2012-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 <string>
12 
13 class CFileItemList;
14 
15 // can be used as a flag
16 typedef enum {
17  GroupByNone = 0x0,
18  GroupBySet = 0x1
19 } GroupBy;
20 
21 typedef enum {
22  GroupAttributeNone = 0x0,
23  GroupAttributeIgnoreSingleItems = 0x1
24 } GroupAttribute;
25 
27 {
28 public:
29  static bool Group(GroupBy groupBy, const std::string &baseDir, const CFileItemList &items, CFileItemList &groupedItems, GroupAttribute groupAttributes = GroupAttributeNone);
30  static bool Group(GroupBy groupBy, const std::string &baseDir, const CFileItemList &items, CFileItemList &groupedItems, CFileItemList &ungroupedItems, GroupAttribute groupAttributes = GroupAttributeNone);
31  static bool GroupAndMix(GroupBy groupBy, const std::string &baseDir, const CFileItemList &items, CFileItemList &groupedItemsMixed, GroupAttribute groupAttributes = GroupAttributeNone);
32 };
Represents a list of files.
Definition: FileItem.h:702
Definition: GroupUtils.h:26