}
}
-void CApplicationPlayer::CloseFile()
+void CApplicationPlayer::CloseFile(bool reopen)
{
boost::shared_ptr<IPlayer> player = GetInternal();
if (player)
{
++m_iPlayerOPSeq;
- player->CloseFile();
+ player->CloseFile(reopen);
}
}
// but if we do not stop it, we can not distingush callbacks from previous
// item and current item, it will confused us then we can not make correct delay
// callback after the starting state.
- CloseFile();
+ CloseFile(true);
}
}
int m_iPlaySpeed;
// player management
- void CloseFile();
+ void CloseFile(bool reopen = false);
void ClosePlayer();
void ClosePlayerGapless(PLAYERCOREID newCore);
void CreatePlayer(PLAYERCOREID newCore, IPlayerCallback& callback);
}
}
-bool CExternalPlayer::CloseFile()
+bool CExternalPlayer::CloseFile(bool reopen)
{
m_bAbortRequest = true;
virtual void RegisterAudioCallback(IAudioCallback* pCallback) {}
virtual void UnRegisterAudioCallback() {}
virtual bool OpenFile(const CFileItem& file, const CPlayerOptions &options);
- virtual bool CloseFile();
+ virtual bool CloseFile(bool reopen = false);
virtual bool IsPlaying() const;
virtual void Pause();
virtual bool IsPaused() const;
virtual bool OpenFile(const CFileItem& file, const CPlayerOptions& options){ return false;}
virtual bool QueueNextFile(const CFileItem &file) { return false; }
virtual void OnNothingToQueueNotify() {}
- virtual bool CloseFile(){ return true;}
+ virtual bool CloseFile(bool reopen = false) = 0;
virtual bool IsPlaying() const { return false;}
virtual bool CanPause() { return true; };
virtual void Pause() = 0;
}
}
-bool CDVDPlayer::CloseFile()
+bool CDVDPlayer::CloseFile(bool reopen)
{
CLog::Log(LOGNOTICE, "CDVDPlayer::CloseFile()");
CDVDPlayer(IPlayerCallback& callback);
virtual ~CDVDPlayer();
virtual bool OpenFile(const CFileItem& file, const CPlayerOptions &options);
- virtual bool CloseFile();
+ virtual bool CloseFile(bool reopen = false);
virtual bool IsPlaying() const;
virtual void Pause();
virtual bool IsPaused() const;
}
}
-bool COMXPlayer::CloseFile()
+bool COMXPlayer::CloseFile(bool reopen)
{
CLog::Log(LOGDEBUG, "COMXPlayer::CloseFile");
virtual ~COMXPlayer();
virtual bool OpenFile(const CFileItem &file, const CPlayerOptions &options);
- virtual bool CloseFile();
+ virtual bool CloseFile(bool reopen = false);
virtual bool IsPlaying() const;
virtual void Pause();
virtual bool IsPaused() const;
return true;
}
-bool PAPlayer::CloseFile()
+bool PAPlayer::CloseFile(bool reopen)
{
if (!m_isPaused)
SoftStop(true, true);
virtual bool OpenFile(const CFileItem& file, const CPlayerOptions &options);
virtual bool QueueNextFile(const CFileItem &file);
virtual void OnNothingToQueueNotify();
- virtual bool CloseFile();
+ virtual bool CloseFile(bool reopen = false);
virtual bool IsPlaying() const;
virtual void Pause();
virtual bool IsPaused() const;
return false;
}
-bool CUPnPPlayer::CloseFile()
+bool CUPnPPlayer::CloseFile(bool reopen)
{
NPT_CHECK_POINTER_LABEL_SEVERE(m_delegate, failed);
NPT_CHECK_LABEL(m_control->Stop(m_delegate->m_device
virtual bool OpenFile(const CFileItem& file, const CPlayerOptions& options);
virtual bool QueueNextFile(const CFileItem &file);
- virtual bool CloseFile();
+ virtual bool CloseFile(bool reopen = false);
virtual bool IsPlaying() const;
virtual void Pause();
virtual bool IsPaused() const;