20 #ifndef MPD_PARTITION_HXX
21 #define MPD_PARTITION_HXX
60 unsigned buffer_chunks,
61 unsigned buffered_before_play,
66 global_events.
OrMask(mask);
76 const char *uri_utf8) {
185 replay_gain_mode = mode;
195 #ifdef ENABLE_DATABASE
201 const Database *GetDatabase()
const;
204 const Database &GetDatabaseOrThrow()
const;
210 void DatabaseModified(
const Database &db);
226 void OnQueueModified()
override;
227 void OnQueueOptionsChanged()
override;
228 void OnQueueSongStarted()
override;
231 void OnPlayerSync()
override;
232 void OnPlayerTagModified()
override;
235 void OnMixerVolumeChanged(
Mixer &mixer,
int volume)
override;
238 void OnGlobalEvent(
unsigned mask);
void SetPriorityId(unsigned song_id, uint8_t priority)
void SetReplayGainMode(ReplayGainMode mode)
void StaleSong(PlayerControl &pc, const char *uri)
Mark the given song as "stale", i.e.
void Clear(PlayerControl &pc)
void MoveId(unsigned id, int to)
void PlayNext(PlayerControl &pc)
Throws std::runtime_error or #Error on error.
void SetConsume(bool new_value)
unsigned AppendURI(const SongLoader &loader, const char *uri_utf8)
A time stamp within a song.
void SetSingle(bool new_value)
Partition(Instance &_instance, unsigned max_length, unsigned buffer_chunks, unsigned buffered_before_play, AudioFormat configured_audio_format, const ReplayGainConfig &replay_gain_config)
void SwapIds(PlayerControl &pc, unsigned id1, unsigned id2)
Manage a bit mask of events that have occurred.
A partition of the Music Player Daemon.
void DeleteRange(PlayerControl &pc, unsigned start, unsigned end)
Deletes a range of songs from the playlist.
void DeletePosition(unsigned position)
void PlayPrevious(PlayerControl &pc)
Throws std::runtime_error or #Error on error.
void SetPriorityId(PlayerControl &pc, unsigned song_id, uint8_t priority)
void DeleteId(PlayerControl &pc, unsigned id)
void Shuffle(unsigned start, unsigned end)
void SetRepeat(bool new_value)
void SetRandom(PlayerControl &pc, bool new_value)
void OrMask(unsigned new_mask)
void MoveRange(PlayerControl &pc, unsigned start, unsigned end, int to)
void SetConsume(bool new_value)
void SwapIds(unsigned id1, unsigned id2)
void UpdateEffectiveReplayGainMode()
Publishes the effective ReplayGainMode to all subsystems.
void StaleSong(const char *uri)
void SyncWithPlayer()
Synchronize the player with the play queue.
void PlayId(PlayerControl &pc, int id)
Throws std::runtime_error or #Error on error.
void EmitIdle(unsigned mask)
ReplayGainMode replay_gain_mode
void SetRepeat(PlayerControl &pc, bool new_value)
static constexpr unsigned SYNC_WITH_PLAYER
void TagModified()
A tag in the play queue has been modified by the player thread.
void DeleteId(unsigned id)
A variant of SongTime that is based on a signed integer.
An interface that listens on events from mixer plugins.
void SetPriorityRange(unsigned start_position, unsigned end_position, uint8_t priority)
void EmitGlobalEvent(unsigned mask)
void MoveId(PlayerControl &pc, unsigned id, int to)
void PlayPosition(PlayerControl &pc, int position)
Throws std::runtime_error or #Error on error.
void SeekCurrent(PlayerControl &pc, SignedSongTime seek_time, bool relative)
Seek within the current song.
void MoveRange(unsigned start, unsigned end, int to)
void DeletePosition(PlayerControl &pc, unsigned position)
void SeekSongId(unsigned song_id, SongTime seek_time)
A utility class that loads a DetachedSong object by its URI.
void PlayPosition(int position)
void Stop(PlayerControl &pc)
void SwapPositions(PlayerControl &pc, unsigned song1, unsigned song2)
static constexpr unsigned TAG_MODIFIED
void DeleteRange(unsigned start, unsigned end)
Deletes a range of songs from the playlist.
void SetRandom(bool new_value)
void SeekCurrent(SignedSongTime seek_time, bool relative)
void Shuffle(PlayerControl &pc, unsigned start, unsigned end)
void SeekSongPosition(PlayerControl &pc, unsigned sonag_position, SongTime seek_time)
Throws std::runtime_error or #Error on error.
MaskMonitor global_events
void SeekSongPosition(unsigned song_position, SongTime seek_time)
void SwapPositions(unsigned song1, unsigned song2)
unsigned AppendURI(PlayerControl &pc, const SongLoader &loader, const char *uri_utf8)
Throws #std::runtime_error on error.
void SetPriorityRange(PlayerControl &pc, unsigned start_position, unsigned end_position, uint8_t priority)
const Storage const char * uri
void SeekSongId(PlayerControl &pc, unsigned song_id, SongTime seek_time)
Throws std::runtime_error or #Error on error.
void SetSingle(PlayerControl &pc, bool new_value)