11 #include "threads/CriticalSection.h" 22 class CPVRChannelGroup;
23 class CPVRChannelGroupMember;
132 bool IsPlayingEpgTag(
const std::shared_ptr<CPVREpgInfoTag>& epgTag)
const;
259 void UpdateLastWatched(
const std::shared_ptr<CPVRChannelGroupMember>& channel,
262 mutable CCriticalSection m_critSection;
264 std::shared_ptr<CPVRChannelGroupMember> m_playingChannel;
265 std::shared_ptr<CPVRRecording> m_playingRecording;
266 std::shared_ptr<CPVREpgInfoTag> m_playingEpgTag;
267 std::shared_ptr<CPVRChannelGroupMember> m_lastPlayedChannelTV;
268 std::shared_ptr<CPVRChannelGroupMember> m_lastPlayedChannelRadio;
269 std::shared_ptr<CPVRChannelGroupMember> m_previousToLastPlayedChannelTV;
270 std::shared_ptr<CPVRChannelGroupMember> m_previousToLastPlayedChannelRadio;
271 std::string m_strPlayingClientName;
272 int m_playingGroupId = -1;
273 int m_playingClientId = -1;
274 int m_playingChannelUniqueId = -1;
275 std::string m_strPlayingRecordingUniqueId;
276 int m_playingEpgTagChannelUniqueId = -1;
277 unsigned int m_playingEpgTagUniqueId = 0;
278 std::shared_ptr<CPVRChannelGroup> m_activeGroupTV;
279 std::shared_ptr<CPVRChannelGroup> m_activeGroupRadio;
282 std::unique_ptr<CLastWatchedUpdateTimer> m_lastWatchedUpdateTimer;
bool IsPlayingActiveRecording() const
Check if an active recording is playing.
Definition: PVRPlaybackState.cpp:426
bool IsPlayingChannel(int iClientID, int iUniqueChannelID) const
Check whether playing channel matches given uids.
Definition: PVRPlaybackState.cpp:326
Definition: PVRPlaybackState.cpp:37
virtual ~CPVRPlaybackState()
dtor.
bool IsPlaying() const
Check if a TV channel, radio channel or recording is playing.
Definition: PVRPlaybackState.cpp:290
bool IsPlayingTV() const
Check if a TV channel is playing.
Definition: PVRPlaybackState.cpp:296
Definition: ContextMenuManager.h:24
void Clear()
clear instances, keep stored UIDs.
Definition: PVRPlaybackState.cpp:126
bool IsPlayingRadio() const
Check if a radio channel is playing.
Definition: PVRPlaybackState.cpp:302
bool IsPlayingRecording() const
Check if a recording is playing.
Definition: PVRPlaybackState.cpp:314
CDateTime GetChannelPlaybackTime(int iClientID, int iUniqueChannelID) const
Get current playback time for the given channel, taking timeshifting into account.
Definition: PVRPlaybackState.cpp:524
std::shared_ptr< CPVRRecording > GetPlayingRecording() const
Return the recording that is currently playing.
Definition: PVRPlaybackState.cpp:384
bool OnPlaybackStopped(const CFileItem &item)
Inform that playback of an item was stopped due to user interaction.
Definition: PVRPlaybackState.cpp:225
bool IsRecordingOnPlayingChannel() const
Check whether there is an active recording on the currenlyt playing channel.
Definition: PVRPlaybackState.cpp:419
bool IsRecording() const
Check whether there are active recordings.
Definition: PVRPlaybackState.cpp:414
std::string GetPlayingClientName() const
Get the name of the playing client, if there is one.
Definition: PVRPlaybackState.cpp:402
std::shared_ptr< CPVRChannel > GetPlayingChannel() const
Return the channel that is currently playing.
Definition: PVRPlaybackState.cpp:372
bool CanRecordOnPlayingChannel() const
Check whether the currently playing channel can be recorded.
Definition: PVRPlaybackState.cpp:432
std::shared_ptr< CPVRChannelGroup > GetActiveChannelGroup(bool bRadio) const
Get the active channel group.
Definition: PVRPlaybackState.cpp:484
int GetPlayingChannelUniqueID() const
Return playing channel unique identifier.
Definition: PVRPlaybackState.cpp:396
std::shared_ptr< CPVREpgInfoTag > GetPlayingEpgTag() const
Return the epg tag that is currently playing.
Definition: PVRPlaybackState.cpp:390
bool IsPlayingEpgTag() const
Check if an epg tag is playing.
Definition: PVRPlaybackState.cpp:320
std::shared_ptr< CPVRChannelGroupMember > GetLastPlayedChannelGroupMember(bool bRadio) const
Get the last played channel group member.
Definition: PVRPlaybackState.cpp:554
CDateTime GetPlaybackTime(int iClientID, int iUniqueChannelID) const
Get current playback time for the given channel, taking timeshifting and playing epg tags into accoun...
Definition: PVRPlaybackState.cpp:510
DateTime class, which uses FileTime as it's base.
Definition: XBDateTime.h:63
std::shared_ptr< CPVRChannelGroupMember > GetPreviousToLastPlayedChannelGroupMember(bool bRadio) const
Get the channel group member that was played before the last played member.
Definition: PVRPlaybackState.cpp:562
Definition: SmartPlayList.cpp:137
bool IsPlayingEncryptedChannel() const
Check if a an encrypted TV or radio channel is playing.
Definition: PVRPlaybackState.cpp:308
void ReInit()
re-init using stored UIDs.
Definition: PVRPlaybackState.cpp:62
void SetActiveChannelGroup(const std::shared_ptr< CPVRChannelGroup > &group)
Set the active channel group.
Definition: PVRPlaybackState.cpp:438
void OnPlaybackStarted(const CFileItem &item)
Inform that playback of an item just started.
Definition: PVRPlaybackState.cpp:142
int GetPlayingClientID() const
Get the ID of the playing client, if there is one.
Definition: PVRPlaybackState.cpp:408
void OnPlaybackEnded(const CFileItem &item)
Inform that playback of an item has stopped without user interaction.
Definition: PVRPlaybackState.cpp:284
Definition: PVRPlaybackState.h:27
std::shared_ptr< CPVRChannelGroupMember > GetPlayingChannelGroupMember() const
Return the channel group member that is currently playing.
Definition: PVRPlaybackState.cpp:378
Represents a file on a share.
Definition: FileItem.h:102