2 * Copyright (C) 2005-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
9 #include "PlaylistDirectory.h"
12 #include "PlayListPlayer.h"
13 #include "ServiceBroker.h"
15 #include "playlists/PlayList.h"
17 using namespace XFILE
;
19 CPlaylistDirectory::CPlaylistDirectory() = default;
21 CPlaylistDirectory::~CPlaylistDirectory() = default;
23 bool CPlaylistDirectory::GetDirectory(const CURL
& url
, CFileItemList
&items
)
25 PLAYLIST::Id playlistId
= PLAYLIST::TYPE_NONE
;
26 if (url
.IsProtocol("playlistmusic"))
27 playlistId
= PLAYLIST::TYPE_MUSIC
;
28 else if (url
.IsProtocol("playlistvideo"))
29 playlistId
= PLAYLIST::TYPE_VIDEO
;
31 if (playlistId
== PLAYLIST::TYPE_NONE
)
34 const PLAYLIST::CPlayList
& playlist
= CServiceBroker::GetPlaylistPlayer().GetPlaylist(playlistId
);
35 items
.Reserve(playlist
.size());
37 for (int i
= 0; i
< playlist
.size(); ++i
)
39 CFileItemPtr item
= playlist
[i
];
40 item
->SetProperty("playlistposition", i
);
41 item
->SetProperty("playlisttype", playlistId
);
42 //item->m_iprogramCount = i; // the programCount is set as items are added!