Music Hub  ..
A session-wide music playback service
core::ubuntu::media::NullTrackList Struct Reference

#include <null_track_list.h>

+ Inheritance diagram for core::ubuntu::media::NullTrackList:
+ Collaboration diagram for core::ubuntu::media::NullTrackList:

Public Member Functions

 NullTrackList ()=default
 
bool has_next ()
 
media::Track::Id next ()
 
media::Track::UriType query_uri_for_track (const media::Track::Id &)
 
const core::Property< bool > & can_edit_tracks () const override
 
const core::Property< Container > & tracks () const override
 
virtual media::Track::MetaData query_meta_data_for_track (const media::Track::Id &) override
 
void add_track_with_uri_at (const media::Track::UriType &, const media::Track::Id &, bool) override
 
void remove_track (const media::Track::Id &) override
 
void go_to (const media::Track::Id &) override
 
const core::Signal< void > & on_track_list_replaced () const override
 
const core::Signal< media::Track::Id > & on_track_added () const override
 
const core::Signal< media::Track::Id > & on_track_removed () const override
 
const core::Signal< media::Track::Id > & on_track_changed () const override
 
- Public Member Functions inherited from core::ubuntu::media::TrackList
 TrackList (const TrackList &)=delete
 
 ~TrackList ()
 
TrackListoperator= (const TrackList &)=delete
 
bool operator== (const TrackList &) const =delete
 
virtual void go_to (const Track::Id &track, bool toggle_player_state)=0
 
bool has_next () const
 
bool has_previous () const
 
virtual Track::Id previous ()=0
 
virtual void shuffle_tracks ()=0
 
virtual void unshuffle_tracks ()=0
 
virtual void reset ()=0
 
virtual const core::Signal< std::pair< Track::Id, bool > > & on_go_to_track () const =0
 

Public Attributes

struct {
   core::Property< bool >   can_edit_tracks
 
   core::Property< TrackList::Container >   tracks
 
   core::Signal< void >   on_track_list_replaced
 
   core::Signal< media::Track::Id >   on_track_added
 
   core::Signal< media::Track::Id >   on_track_removed
 
   core::Signal< media::Track::Id >   on_track_changed
 
props_and_sigs
 

Additional Inherited Members

- Public Types inherited from core::ubuntu::media::TrackList
typedef std::vector< Track::IdContainer
 
typedef std::tuple< std::vector< Track::Id >, Track::IdContainerTrackIdTuple
 
typedef Container::iterator Iterator
 
typedef Container::const_iterator ConstIterator
 
- Static Public Member Functions inherited from core::ubuntu::media::TrackList
static const Track::Idafter_empty_track ()
 
- Protected Member Functions inherited from core::ubuntu::media::TrackList
 TrackList ()
 

Detailed Description

Definition at line 34 of file null_track_list.h.

Constructor & Destructor Documentation

core::ubuntu::media::NullTrackList::NullTrackList ( )
default

Member Function Documentation

void core::ubuntu::media::NullTrackList::add_track_with_uri_at ( const media::Track::UriType uri,
const media::Track::Id position,
bool  make_current 
)
inlineoverridevirtual

Adds a URI in the TrackList.

Implements core::ubuntu::media::TrackList.

Definition at line 68 of file null_track_list.h.

const core::Property<bool>& core::ubuntu::media::NullTrackList::can_edit_tracks ( ) const
inlineoverridevirtual

If set to false, calling add_track_with_uri_at or remove_track will have no effect.

Implements core::ubuntu::media::TrackList.

Definition at line 53 of file null_track_list.h.

References props_and_sigs.

void core::ubuntu::media::NullTrackList::go_to ( const media::Track::Id )
inlineoverride

Definition at line 76 of file null_track_list.h.

bool core::ubuntu::media::NullTrackList::has_next ( )
inline

Definition at line 38 of file null_track_list.h.

media::Track::Id core::ubuntu::media::NullTrackList::next ( )
inlinevirtual

Skip to the next Track in the TrackList if there is one.

Implements core::ubuntu::media::TrackList.

Definition at line 43 of file null_track_list.h.

const core::Signal<media::Track::Id>& core::ubuntu::media::NullTrackList::on_track_added ( ) const
inlineoverridevirtual

Indicates that a track has been added to the track list.

Implements core::ubuntu::media::TrackList.

Definition at line 85 of file null_track_list.h.

References props_and_sigs.

const core::Signal<media::Track::Id>& core::ubuntu::media::NullTrackList::on_track_changed ( ) const
inlineoverridevirtual

Indicates that the track list advanced from one track to another.

Implements core::ubuntu::media::TrackList.

Definition at line 95 of file null_track_list.h.

References props_and_sigs.

const core::Signal<void>& core::ubuntu::media::NullTrackList::on_track_list_replaced ( ) const
inlineoverridevirtual

Indicates that the entire tracklist has been replaced.

Implements core::ubuntu::media::TrackList.

Definition at line 80 of file null_track_list.h.

References props_and_sigs.

const core::Signal<media::Track::Id>& core::ubuntu::media::NullTrackList::on_track_removed ( ) const
inlineoverridevirtual

Indicates that a track has been removed from the track list.

Implements core::ubuntu::media::TrackList.

Definition at line 90 of file null_track_list.h.

References props_and_sigs.

virtual media::Track::MetaData core::ubuntu::media::NullTrackList::query_meta_data_for_track ( const media::Track::Id id)
inlineoverridevirtual

Gets all the metadata available for a given Track.

Implements core::ubuntu::media::TrackList.

Definition at line 63 of file null_track_list.h.

media::Track::UriType core::ubuntu::media::NullTrackList::query_uri_for_track ( const media::Track::Id )
inline

Definition at line 48 of file null_track_list.h.

void core::ubuntu::media::NullTrackList::remove_track ( const media::Track::Id id)
inlineoverridevirtual

Removes a Track from the TrackList.

Implements core::ubuntu::media::TrackList.

Definition at line 72 of file null_track_list.h.

const core::Property<Container>& core::ubuntu::media::NullTrackList::tracks ( ) const
inlineoverridevirtual

An array which contains the identifier of each track in the tracklist, in order.

Implements core::ubuntu::media::TrackList.

Definition at line 58 of file null_track_list.h.

References props_and_sigs.

Member Data Documentation

core::Property<bool> core::ubuntu::media::NullTrackList::can_edit_tracks

Definition at line 102 of file null_track_list.h.

core::Signal<media::Track::Id> core::ubuntu::media::NullTrackList::on_track_added

Definition at line 105 of file null_track_list.h.

core::Signal<media::Track::Id> core::ubuntu::media::NullTrackList::on_track_changed

Definition at line 107 of file null_track_list.h.

core::Signal<void> core::ubuntu::media::NullTrackList::on_track_list_replaced

Definition at line 104 of file null_track_list.h.

core::Signal<media::Track::Id> core::ubuntu::media::NullTrackList::on_track_removed

Definition at line 106 of file null_track_list.h.

struct { ... } core::ubuntu::media::NullTrackList::props_and_sigs
core::Property<TrackList::Container> core::ubuntu::media::NullTrackList::tracks

Definition at line 103 of file null_track_list.h.


The documentation for this struct was generated from the following file: