Skip to content

Commit

Permalink
Merge pull request #12677 from ksooo/pvr-cleanup-2
Browse files Browse the repository at this point in the history
[PVR] Another round of code cleanup
  • Loading branch information
ksooo committed Aug 15, 2017
2 parents 0cb2794 + 2f82731 commit 50b29a1
Show file tree
Hide file tree
Showing 81 changed files with 286 additions and 416 deletions.
21 changes: 8 additions & 13 deletions xbmc/addons/PVRClient.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,13 @@

#include "PVRClient.h"

#include <cassert>
#include <algorithm>
#include <cmath>
#include <memory>
#include <algorithm>

extern "C" {
#include "libavcodec/avcodec.h"
}

#include "ServiceBroker.h"
#include "cores/VideoPlayer/DVDDemuxers/DVDDemuxUtils.h"
Expand All @@ -34,23 +37,19 @@
#include "guilib/LocalizeStrings.h"
#include "settings/AdvancedSettings.h"
#include "settings/Settings.h"
#include "utils/log.h"
#include "utils/StringUtils.h"
#include "utils/log.h"

#include "pvr/PVRManager.h"
#include "pvr/addons/PVRClients.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"
#include "pvr/channels/PVRChannelGroupInternal.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"
#include "pvr/epg/Epg.h"
#include "pvr/epg/EpgContainer.h"
#include "pvr/recordings/PVRRecordings.h"
#include "pvr/timers/PVRTimers.h"
#include "pvr/timers/PVRTimerInfoTag.h"
#include "pvr/timers/PVRTimerType.h"

extern "C" {
#include "libavcodec/avcodec.h"
}
#include "pvr/timers/PVRTimers.h"

using namespace ADDON;

Expand Down Expand Up @@ -354,8 +353,6 @@ void CPVRClient::WriteClientTimerInfo(const CPVRTimerInfoTag &xbmcTimer, PVR_TIM
*/
void CPVRClient::WriteClientChannelInfo(const CPVRChannelPtr &xbmcChannel, PVR_CHANNEL &addonChannel)
{
assert(xbmcChannel.get());

addonChannel = {0};
addonChannel.iUniqueId = xbmcChannel->UniqueID();
addonChannel.iChannelNumber = xbmcChannel->ClientChannelNumber();
Expand Down Expand Up @@ -1313,8 +1310,6 @@ bool CPVRClient::LogError(const PVR_ERROR error, const char *strMethod) const

bool CPVRClient::CanPlayChannel(const CPVRChannelPtr &channel) const
{
assert(channel.get());

return (m_bReadyToUse &&
((m_clientCapabilities.SupportsTV() && !channel->IsRadio()) ||
(m_clientCapabilities.SupportsRadio() && channel->IsRadio())));
Expand Down
4 changes: 2 additions & 2 deletions xbmc/pvr/PVRActionListener.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
*
*/

#include "PVRActionListener.h"

#include "Application.h"
#include "ServiceBroker.h"
#include "dialogs/GUIDialogNumeric.h"
Expand All @@ -31,8 +33,6 @@
#include "pvr/channels/PVRChannel.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"

#include "PVRActionListener.h"

namespace PVR
{

Expand Down
2 changes: 1 addition & 1 deletion xbmc/pvr/PVRChannelNumberInputHandler.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
*
*/

#include <string>
#include <deque>
#include <string>

#include "threads/CriticalSection.h"
#include "threads/Timer.h"
Expand Down
13 changes: 7 additions & 6 deletions xbmc/pvr/PVRContextMenus.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,21 @@
*
*/

#include "PVRContextMenus.h"

#include "ContextMenuItem.h"
#include "ServiceBroker.h"
#include "epg/EpgInfoTag.h"
#include "guilib/GUIWindowManager.h"
#include "pvr/addons/PVRClients.h"
#include "pvr/channels/PVRChannel.h"
#include "utils/URIUtils.h"

#include "pvr/PVRGUIActions.h"
#include "pvr/PVRManager.h"
#include "pvr/addons/PVRClients.h"
#include "pvr/channels/PVRChannel.h"
#include "pvr/epg/EpgInfoTag.h"
#include "pvr/recordings/PVRRecording.h"
#include "pvr/recordings/PVRRecordingsPath.h"
#include "pvr/timers/PVRTimers.h"
#include "utils/URIUtils.h"

#include "PVRContextMenus.h"

namespace PVR
{
Expand Down
7 changes: 4 additions & 3 deletions xbmc/pvr/PVRDatabase.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,13 @@
#include "ServiceBroker.h"
#include "dbwrappers/dataset.h"
#include "addons/PVRClient.h"
#include "pvr/channels/PVRChannelGroupInternal.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"
#include "settings/AdvancedSettings.h"
#include "settings/Settings.h"
#include "utils/log.h"
#include "utils/StringUtils.h"
#include "utils/log.h"

#include "pvr/channels/PVRChannelGroupInternal.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"

using namespace dbiplus;
using namespace PVR;
Expand Down
105 changes: 24 additions & 81 deletions xbmc/pvr/PVRGUIActions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,48 +18,47 @@
*
*/

#include "PVRGUIActions.h"

#include "Application.h"
#include "FileItem.h"
#include "ServiceBroker.h"
#include "dialogs/GUIDialogBusy.h"
#include "dialogs/GUIDialogKaiToast.h"
#include "dialogs/GUIDialogNumeric.h"
#include "dialogs/GUIDialogOK.h"
#include "dialogs/GUIDialogProgress.h"
#include "dialogs/GUIDialogSelect.h"
#include "dialogs/GUIDialogYesNo.h"
#include "epg/EpgContainer.h"
#include "epg/EpgInfoTag.h"
#include "FileItem.h"
#include "filesystem/Directory.h"
#include "filesystem/StackDirectory.h"
#include "guilib/GUIKeyboardFactory.h"
#include "guilib/GUIWindowManager.h"
#include "guilib/LocalizeStrings.h"
#include "input/Key.h"
#include "messaging/ApplicationMessenger.h"
#include "settings/MediaSettings.h"
#include "settings/Settings.h"
#include "threads/Thread.h"
#include "utils/StringUtils.h"
#include "utils/URIUtils.h"
#include "utils/log.h"
#include "video/VideoDatabase.h"

#include "pvr/PVRDatabase.h"
#include "pvr/PVRItem.h"
#include "pvr/PVRManager.h"
#include "pvr/addons/PVRClients.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"
#include "pvr/dialogs/GUIDialogPVRGuideInfo.h"
#include "pvr/dialogs/GUIDialogPVRChannelGuide.h"
#include "pvr/dialogs/GUIDialogPVRGuideInfo.h"
#include "pvr/dialogs/GUIDialogPVRRecordingInfo.h"
#include "pvr/dialogs/GUIDialogPVRRecordingSettings.h"
#include "pvr/dialogs/GUIDialogPVRTimerSettings.h"
#include "pvr/PVRDatabase.h"
#include "pvr/PVRItem.h"
#include "pvr/PVRManager.h"
#include "pvr/timers/PVRTimers.h"
#include "pvr/epg/EpgContainer.h"
#include "pvr/epg/EpgInfoTag.h"
#include "pvr/recordings/PVRRecordings.h"
#include "pvr/recordings/PVRRecordingsPath.h"
#include "pvr/timers/PVRTimers.h"
#include "pvr/windows/GUIWindowPVRSearch.h"
#include "ServiceBroker.h"
#include "settings/MediaSettings.h"
#include "settings/Settings.h"
#include "threads/Thread.h"
#include "utils/StringUtils.h"
#include "utils/URIUtils.h"
#include "utils/log.h"
#include "video/VideoDatabase.h"

#include "PVRGUIActions.h"

using namespace KODI::MESSAGING;

Expand Down Expand Up @@ -988,7 +987,7 @@ namespace PVR

void CPVRGUIActions::StartPlayback(CFileItem *item, bool bFullscreen) const
{
// Obtain dynamic playback url and properties from the respecive pvr client
// Obtain dynamic playback url and properties from the respective pvr client
CServiceBroker::GetPVRManager().FillStreamFileItem(*item);

CApplicationMessenger::GetInstance().PostMsg(TMSG_MEDIA_PLAY, 0, 0, static_cast<void*>(item));
Expand All @@ -1008,68 +1007,12 @@ namespace PVR
return true;
}

CServiceBroker::GetPVRManager().FillStreamFileItem(*item); // fill item's dynpath
const std::string stream = item->GetDynPath();
if (stream.empty())
{
if (!bCheckResume || CheckResumeRecording(item))
{
CFileItem *itemToPlay = new CFileItem(recording);
itemToPlay->m_lStartOffset = item->m_lStartOffset;
StartPlayback(itemToPlay, true);
}
return true;
}

/* Isolate the folder from the filename */
size_t found = stream.find_last_of("/");
if (found == std::string::npos)
found = stream.find_last_of("\\");

if (found != std::string::npos)
{
/* Check here for asterisk at the begin of the filename */
if (stream[found+1] == '*')
{
/* Create a "stack://" url with all files matching the extension */
std::string ext = URIUtils::GetExtension(stream);
std::string dir = stream.substr(0, found);

CFileItemList items;
XFILE::CDirectory::GetDirectory(dir, items);
items.Sort(SortByFile, SortOrderAscending);

std::vector<int> stack;
for (int i = 0; i < items.Size(); ++i)
{
if (URIUtils::HasExtension(items[i]->GetPath(), ext))
stack.push_back(i);
}

if (stack.empty())
{
/* If we have a stack change the path of the item to it */
XFILE::CStackDirectory dir;
std::string stackPath = dir.ConstructStackPath(items, stack);
item->SetDynPath(stackPath);
}
}
else
{
/* If no asterisk is present play only the given stream URL */
item->SetDynPath(stream);
}
}
else
if (!bCheckResume || CheckResumeRecording(item))
{
CLog::Log(LOGERROR, "CPVRGUIActions - %s - can't open recording: no valid filename", __FUNCTION__);
CGUIDialogOK::ShowAndGetInput(CVariant{19033}, CVariant{19036});
return false;
CFileItem *itemToPlay = new CFileItem(recording);
itemToPlay->m_lStartOffset = item->m_lStartOffset;
StartPlayback(itemToPlay, true);
}

if (!bCheckResume || CheckResumeRecording(item))
StartPlayback(new CFileItem(*item), true);

return true;
}

Expand Down
6 changes: 3 additions & 3 deletions xbmc/pvr/PVRGUIActions.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@
*
*/

#include <memory>
#include <string>

#include "pvr/PVRChannelNumberInputHandler.h"
#include "pvr/PVRGUIChannelNavigator.h"
#include "pvr/PVRSettings.h"
#include "pvr/PVRTypes.h"

#include <memory>
#include <string>

class CFileItem;
typedef std::shared_ptr<CFileItem> CFileItemPtr;

Expand Down
2 changes: 1 addition & 1 deletion xbmc/pvr/PVRGUIInfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@

#include "Application.h"
#include "ServiceBroker.h"
#include "epg/EpgInfoTag.h"
#include "guiinfo/GUIInfoLabels.h"
#include "guilib/LocalizeStrings.h"
#include "settings/AdvancedSettings.h"
Expand All @@ -34,6 +33,7 @@
#include "pvr/addons/PVRClients.h"
#include "pvr/channels/PVRChannel.h"
#include "pvr/channels/PVRChannelGroupsContainer.h"
#include "pvr/epg/EpgInfoTag.h"
#include "pvr/recordings/PVRRecordings.h"
#include "pvr/timers/PVRTimers.h"

Expand Down
11 changes: 6 additions & 5 deletions xbmc/pvr/PVRGUIInfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,17 @@
*
*/

#include <atomic>
#include <string>
#include <vector>

#include "addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h"
#include "pvr/PVRTypes.h"
#include "pvr/addons/PVRClients.h"
#include "threads/CriticalSection.h"
#include "threads/Thread.h"
#include "utils/Observer.h"

#include <atomic>
#include <string>
#include <vector>
#include "pvr/PVRTypes.h"
#include "pvr/addons/PVRClients.h"

namespace PVR
{
Expand Down
13 changes: 7 additions & 6 deletions xbmc/pvr/PVRItem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,18 @@
*
*/

#include "PVRItem.h"

#include "FileItem.h"
#include "epg/EpgInfoTag.h"
#include "ServiceBroker.h"
#include "utils/log.h"

#include "pvr/PVRManager.h"
#include "pvr/channels/PVRChannel.h"
#include "pvr/epg/EpgInfoTag.h"
#include "pvr/recordings/PVRRecording.h"
#include "pvr/timers/PVRTimerInfoTag.h"
#include "pvr/timers/PVRTimers.h"
#include "pvr/PVRManager.h"
#include "ServiceBroker.h"
#include "utils/log.h"

#include "PVRItem.h"

namespace PVR
{
Expand Down
2 changes: 2 additions & 0 deletions xbmc/pvr/PVRItem.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@

#include <memory>

#include "pvr/PVRTypes.h"

class CFileItem;
typedef std::shared_ptr<CFileItem> CFileItemPtr;

Expand Down
7 changes: 4 additions & 3 deletions xbmc/pvr/PVRJobs.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,13 @@

#include <vector>

#include "addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h"
#include "addons/PVRClient.h"
#include "FileItem.h"
#include "pvr/PVRTypes.h"
#include "addons/PVRClient.h"
#include "addons/kodi-addon-dev-kit/include/kodi/xbmc_pvr_types.h"
#include "utils/JobManager.h"

#include "pvr/PVRTypes.h"

namespace PVR
{
class CPVRSetRecordingOnChannelJob : public CJob
Expand Down

0 comments on commit 50b29a1

Please sign in to comment.