本文整理汇总了C++中TrackPointer::getPlayCounter方法的典型用法代码示例。如果您正苦于以下问题:C++ TrackPointer::getPlayCounter方法的具体用法?C++ TrackPointer::getPlayCounter怎么用?C++ TrackPointer::getPlayCounter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TrackPointer
的用法示例。
在下文中一共展示了TrackPointer::getPlayCounter方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: slotJoinWithPrevious
void SetlogFeature::slotJoinWithPrevious() {
//qDebug() << "slotJoinWithPrevious() row:" << m_lastRightClickedIndex.data();
if (m_lastRightClickedIndex.isValid()) {
int currentPlaylistId = m_playlistDao.getPlaylistIdFromName(
m_lastRightClickedIndex.data().toString());
if (currentPlaylistId >= 0) {
bool locked = m_playlistDao.isPlaylistLocked(currentPlaylistId);
if (locked) {
qDebug() << "Skipping playlist deletion because playlist" << currentPlaylistId << "is locked.";
return;
}
// Add every track from right klicked playlist to that with the next smaller ID
int previousPlaylistId = m_playlistDao.getPreviousPlaylist(currentPlaylistId, PlaylistDAO::PLHT_SET_LOG);
if (previousPlaylistId >= 0) {
m_pPlaylistTableModel->setTableModel(previousPlaylistId);
if (currentPlaylistId == m_playlistId) {
// mark all the Tracks in the previous Playlist as played
m_pPlaylistTableModel->select();
int rows = m_pPlaylistTableModel->rowCount();
for (int i = 0; i < rows; ++i) {
QModelIndex index = m_pPlaylistTableModel->index(i,0);
if (index.isValid()) {
TrackPointer track = m_pPlaylistTableModel->getTrack(index);
// Do not update the play count, just set played status.
PlayCounter playCounter(track->getPlayCounter());
playCounter.setPlayed();
track->setPlayCounter(playCounter);
}
}
// Change current setlog
m_playlistId = previousPlaylistId;
}
qDebug() << "slotJoinWithPrevious() current:" << currentPlaylistId << " previous:" << previousPlaylistId;
if (m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId)) {
m_playlistDao.deletePlaylist(currentPlaylistId);
slotPlaylistTableChanged(previousPlaylistId); // For moving selection
emit(showTrackModel(m_pPlaylistTableModel));
}
}
}
}
}
示例2: slotAddRandomTrack
void AutoDJFeature::slotAddRandomTrack(bool) {
int failedRetrieveAttempts = 0;
// Get access to the auto-DJ playlist
PlaylistDAO& playlistDao = m_pTrackCollection->getPlaylistDAO();
if (m_iAutoDJPlaylistId >= 0) {
while (failedRetrieveAttempts < kMaxRetrieveAttempts) {
// Get the ID of a randomly-selected track.
TrackId trackId(m_autoDjCratesDao.getRandomTrackId());
if (trackId.isValid()) {
// Get Track Information
TrackPointer addedTrack = (m_pTrackCollection->getTrackDAO()).getTrack(trackId);
if(addedTrack->exists()) {
playlistDao.appendTrackToPlaylist(trackId, m_iAutoDJPlaylistId);
m_pAutoDJView->onShow();
return;
} else {
qDebug() << "Track does not exist:"
<< addedTrack->getInfo()
<< addedTrack->getLocation();
}
}
failedRetrieveAttempts += 1;
}
// If we couldn't get a track from the crates , get one from the library
qDebug () << "Could not load tracks from crates, attempting to load from library.";
failedRetrieveAttempts = 0;
while ( failedRetrieveAttempts < kMaxRetrieveAttempts ) {
TrackId trackId(m_autoDjCratesDao.getRandomTrackIdFromLibrary(m_iAutoDJPlaylistId));
if (trackId.isValid()) {
TrackPointer addedTrack = m_pTrackCollection->getTrackDAO().getTrack(trackId);
if(addedTrack->exists()) {
if(!addedTrack->getPlayCounter().isPlayed()) {
playlistDao.appendTrackToPlaylist(trackId, m_iAutoDJPlaylistId);
m_pAutoDJView->onShow();
return;
}
} else {
qDebug() << "Track does not exist:"
<< addedTrack->getInfo()
<< addedTrack->getLocation();
}
}
failedRetrieveAttempts += 1;
}
}
// If control reaches here it implies that we couldn't load track
qDebug() << "Could not load random track.";
}
示例3: getTrackValueForColumn
void BaseTrackCache::getTrackValueForColumn(TrackPointer pTrack,
int column,
QVariant& trackValue) const {
if (!pTrack || column < 0) {
return;
}
// TODO(XXX) Qt properties could really help here.
// TODO(rryan) this is all TrackDAO specific. What about iTunes/RB/etc.?
if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ARTIST) == column) {
trackValue.setValue(pTrack->getArtist());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TITLE) == column) {
trackValue.setValue(pTrack->getTitle());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUM) == column) {
trackValue.setValue(pTrack->getAlbum());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_ALBUMARTIST) == column) {
trackValue.setValue(pTrack->getAlbumArtist());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_YEAR) == column) {
trackValue.setValue(pTrack->getYear());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DATETIMEADDED) == column) {
trackValue.setValue(pTrack->getDateAdded());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GENRE) == column) {
trackValue.setValue(pTrack->getGenre());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMPOSER) == column) {
trackValue.setValue(pTrack->getComposer());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_GROUPING) == column) {
trackValue.setValue(pTrack->getGrouping());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_FILETYPE) == column) {
trackValue.setValue(pTrack->getType());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TRACKNUMBER) == column) {
trackValue.setValue(pTrack->getTrackNumber());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_LOCATION) == column) {
trackValue.setValue(QDir::toNativeSeparators(pTrack->getLocation()));
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COMMENT) == column) {
trackValue.setValue(pTrack->getComment());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_DURATION) == column) {
trackValue.setValue(pTrack->getDuration());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BITRATE) == column) {
trackValue.setValue(pTrack->getBitrate());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM) == column) {
trackValue.setValue(pTrack->getBpm());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_REPLAYGAIN) == column) {
trackValue.setValue(pTrack->getReplayGain().getRatio());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_PLAYED) == column) {
trackValue.setValue(pTrack->getPlayCounter().isPlayed());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_TIMESPLAYED) == column) {
trackValue.setValue(pTrack->getPlayCounter().getTimesPlayed());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_RATING) == column) {
trackValue.setValue(pTrack->getRating());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY) == column) {
trackValue.setValue(pTrack->getKeyText());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_KEY_ID) == column) {
trackValue.setValue(static_cast<int>(pTrack->getKey()));
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_BPM_LOCK) == column) {
trackValue.setValue(pTrack->isBpmLocked());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART_LOCATION) == column) {
trackValue.setValue(pTrack->getCoverInfo().coverLocation);
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART_HASH) == column ||
fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART) == column) {
// For sorting, we give COLUMN_LIBRARYTABLE_COVERART the same value as
// the cover hash.
trackValue.setValue(pTrack->getCoverHash());
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART_SOURCE) == column) {
trackValue.setValue(static_cast<int>(pTrack->getCoverInfo().source));
} else if (fieldIndex(ColumnCache::COLUMN_LIBRARYTABLE_COVERART_TYPE) == column) {
trackValue.setValue(static_cast<int>(pTrack->getCoverInfo().type));
}
}