1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-07-31 19:30:21 +02:00

UnLogPlaybackify AudioEngine.

This commit is contained in:
Teo Mrnjavac
2013-05-16 15:45:22 +02:00
parent 83cbd4ec02
commit 86cfc9b719
3 changed files with 27 additions and 5 deletions

View File

@@ -23,6 +23,7 @@
#include "database/Database.h"
#include "database/DatabaseImpl.h"
#include "database/DatabaseCommand_LogPlayback.h"
#include "Album.h"
#include "collection/Collection.h"
#include "Pipeline.h"
@@ -162,6 +163,26 @@ Track::trackId() const
}
void
Track::startPlaying()
{
DatabaseCommand_LogPlayback* cmd = new DatabaseCommand_LogPlayback( weakRef().toStrongRef(),
DatabaseCommand_LogPlayback::Started );
Database::instance()->enqueue( QSharedPointer< DatabaseCommand >( cmd ) );
}
void
Track::finishPlaying( int timeElapsed )
{
DatabaseCommand_LogPlayback* cmd = new DatabaseCommand_LogPlayback( weakRef().toStrongRef(),
DatabaseCommand_LogPlayback::Finished,
timeElapsed );
Database::instance()->enqueue( QSharedPointer< DatabaseCommand >( cmd ) );
}
void
Track::updateSortNames()
{

View File

@@ -28,6 +28,7 @@
#include "DllMacro.h"
namespace Tomahawk
{
@@ -107,6 +108,9 @@ public:
QWeakPointer< Tomahawk::Track > weakRef() { return m_ownRef; }
void setWeakRef( QWeakPointer< Tomahawk::Track > weakRef ) { m_ownRef = weakRef; }
void startPlaying();
void finishPlaying( int timeElapsed );
signals:
void coverChanged();
void socialActionsLoaded();

View File

@@ -26,7 +26,6 @@
#include "SourcePlaylistInterface.h"
#include "TomahawkSettings.h"
#include "database/Database.h"
#include "database/DatabaseCommand_LogPlayback.h"
#include "network/Servent.h"
#include "utils/Qnr_IoDeviceStream.h"
#include "utils/Closure.h"
@@ -522,8 +521,7 @@ AudioEngine::performLoadTrack( const Tomahawk::result_ptr& result, QSharedPointe
if ( TomahawkSettings::instance()->privateListeningMode() != TomahawkSettings::FullyPrivate )
{
DatabaseCommand_LogPlayback* cmd = new DatabaseCommand_LogPlayback( m_currentTrack->track(), DatabaseCommand_LogPlayback::Started );
Database::instance()->enqueue( QSharedPointer<DatabaseCommand>(cmd) );
m_currentTrack->track()->startPlaying();
}
sendNowPlayingNotification( Tomahawk::InfoSystem::InfoNowPlaying );
@@ -990,8 +988,7 @@ AudioEngine::setCurrentTrack( const Tomahawk::result_ptr& result )
{
if ( m_state != Error && TomahawkSettings::instance()->privateListeningMode() == TomahawkSettings::PublicListening )
{
DatabaseCommand_LogPlayback* cmd = new DatabaseCommand_LogPlayback( m_currentTrack->track(), DatabaseCommand_LogPlayback::Finished, m_timeElapsed );
Database::instance()->enqueue( QSharedPointer<DatabaseCommand>(cmd) );
m_currentTrack->track()->finishPlaying( m_timeElapsed );
}
emit finished( m_currentTrack );