Merge pull request #26244 from Hitcher/media_flag_border_fix
[xbmc.git] / xbmc / pvr / PVRItem.h
blobe41ca1507abd2a1a5deb4b91484433514f81cdbe
1 /*
2 * Copyright (C) 2016-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.
7 */
9 #pragma once
11 #include <memory>
13 class CFileItem;
15 namespace PVR
17 class CPVRChannel;
18 class CPVREpgInfoTag;
19 class CPVRRecording;
20 class CPVRTimerInfoTag;
22 class CPVRItem
24 public:
25 explicit CPVRItem(const std::shared_ptr<CFileItem>& item) : m_item(item.get()) {}
26 explicit CPVRItem(const CFileItem* item) : m_item(item) {}
27 explicit CPVRItem(const CFileItem& item) : m_item(&item) {}
29 std::shared_ptr<CPVREpgInfoTag> GetEpgInfoTag() const;
30 std::shared_ptr<CPVREpgInfoTag> GetNextEpgInfoTag() const;
31 std::shared_ptr<CPVRChannel> GetChannel() const;
32 std::shared_ptr<CPVRTimerInfoTag> GetTimerInfoTag() const;
33 std::shared_ptr<CPVRRecording> GetRecording() const;
35 bool IsRadio() const;
37 private:
38 const CFileItem* m_item;
41 } // namespace PVR