CCIMXDesktop
 
Loading...
Searching...
No Matches
CCMediaPlayList Class Reference

The CCMediaPlayList class manages a playlist with various play modes. More...

#include <CCMediaPlayList.h>

Inheritance diagram for CCMediaPlayList:

Public Types

enum class  PlayMode { OneShot , OneCycle , ListPlay , ListCycle }
 PlayMode enum defines playback modes. More...
 

Public Slots

void flush_play_list ()
 Flush the editable play list into actual_play_list, making changes effective.
 

Signals

void playModeChanged (const PlayMode mode)
 Signal emitted when play mode changes.
 

Public Member Functions

 CCMediaPlayList (QObject *parent=nullptr)
 Construct a new CCMediaPlayList object.
 
void set_play_mode (const PlayMode mode)
 Set the play mode.
 
void flow_mode ()
 Cycle the play mode to the next one.
 
PlayMode get_play_mode () const
 Get current play mode.
 
MediaListMails fetch_prev_play ()
 Fetch previous media info according to play mode.
 
MediaListMails fetch_next_play ()
 Fetch next media info according to play mode.
 
MediaListMails fetch_current_play ()
 Fetch current media info.
 
MediaListMails fetch_from_name (const QString &where)
 Fetch media info by name.
 
MediaListMails fetch_first_play ()
 Fetch first media info in the actual playlist.
 
MediaListMails fetch_last_play ()
 Fetch last media info in the actual playlist.
 
QStringList currentPlayingList () const
 Get the current actual playing list.
 
QStringList actualList () const
 Get the editable play list.
 
int get_actualListlist_size ()
 Get size of the editable play list.
 
void enqueue_play (const QStringList &media_sources)
 Append media sources to the play list.
 
void remove_play_list (const QStringList &media_sources)
 Remove media sources from the play list.
 

Static Public Attributes

static constexpr const PlayMode DEF_MODE = PlayMode::ListCycle
 Default play mode.
 

Detailed Description

The CCMediaPlayList class manages a playlist with various play modes.

Member Enumeration Documentation

◆ PlayMode

enum class CCMediaPlayList::PlayMode
strong

PlayMode enum defines playback modes.

Enumerator
OneShot 

Play one media once then stop.

OneCycle 

Repeat the current media endlessly.

ListPlay 

Play the playlist once in order.

ListCycle 

Play the playlist repeatedly.

Constructor & Destructor Documentation

◆ CCMediaPlayList()

CCMediaPlayList::CCMediaPlayList ( QObject *  parent = nullptr)
explicit

Construct a new CCMediaPlayList object.

Parameters
parent

Member Function Documentation

◆ actualList()

QStringList CCMediaPlayList::actualList ( ) const
inline

Get the editable play list.

Returns
QStringList of media in play list (modifiable)

◆ currentPlayingList()

QStringList CCMediaPlayList::currentPlayingList ( ) const
inline

Get the current actual playing list.

Returns
QStringList of media actually played
Note
This list is the one actively used for playback (immutable until flushed)

◆ enqueue_play()

void CCMediaPlayList::enqueue_play ( const QStringList &  media_sources)

Append media sources to the play list.

Parameters
media_sourcesList of media paths/names to add

◆ fetch_current_play()

MediaListMails CCMediaPlayList::fetch_current_play ( )
inline

Fetch current media info.

Returns
MediaListMails of currently playing media

◆ fetch_first_play()

MediaListMails CCMediaPlayList::fetch_first_play ( )

Fetch first media info in the actual playlist.

Returns
MediaListMails of first media

◆ fetch_from_name()

MediaListMails CCMediaPlayList::fetch_from_name ( const QString &  where)

Fetch media info by name.

Parameters
whereThe media name or path to fetch
Returns
MediaListMails with play info for the given media

◆ fetch_last_play()

MediaListMails CCMediaPlayList::fetch_last_play ( )

Fetch last media info in the actual playlist.

Returns
MediaListMails of last media

◆ fetch_next_play()

MediaListMails CCMediaPlayList::fetch_next_play ( )

Fetch next media info according to play mode.

Returns
MediaListMails containing next enabled flag and current playing info

◆ fetch_prev_play()

MediaListMails CCMediaPlayList::fetch_prev_play ( )

Fetch previous media info according to play mode.

Returns
MediaListMails containing prev enabled flag and current playing info

◆ get_actualListlist_size()

int CCMediaPlayList::get_actualListlist_size ( )
inline

Get size of the editable play list.

Returns
int size of play_list

◆ get_play_mode()

PlayMode CCMediaPlayList::get_play_mode ( ) const
inline

Get current play mode.

Returns
current PlayMode

◆ playModeChanged

void CCMediaPlayList::playModeChanged ( const PlayMode  mode)
signal

Signal emitted when play mode changes.

Parameters
modeThe new PlayMode

◆ remove_play_list()

void CCMediaPlayList::remove_play_list ( const QStringList &  media_sources)

Remove media sources from the play list.

Parameters
media_sourcesList of media paths/names to remove

◆ set_play_mode()

void CCMediaPlayList::set_play_mode ( const PlayMode  mode)

Set the play mode.

Parameters
modePlayMode to set

The documentation for this class was generated from the following files: