Music Hub  ..
A session-wide music playback service
core::ubuntu::media::TrackListSkeleton Class Reference

#include <track_list_skeleton.h>

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

Public Member Functions

 TrackListSkeleton (const core::dbus::Bus::Ptr &bus, const core::dbus::Object::Ptr &object, const core::ubuntu::media::apparmor::ubuntu::RequestContextResolver::Ptr &request_context_resolver, const core::ubuntu::media::apparmor::ubuntu::RequestAuthenticator::Ptr &request_authenticator)
 
 ~TrackListSkeleton ()
 
bool has_next ()
 
bool has_previous ()
 
Track::Id next ()
 
Track::Id previous ()
 
const Track::Idcurrent ()
 
const core::Property< bool > & can_edit_tracks () const
 
const core::Property< Container > & tracks () const
 
const core::Signal< ContainerTrackIdTuple > & on_track_list_replaced () const
 
const core::Signal< Track::Id > & on_track_added () const
 
core::Signal< Track::Id > & on_track_added ()
 
const core::Signal< Track::Id > & on_track_removed () const
 
const core::Signal< Track::Id > & on_track_changed () const
 
const core::Signal< std::pair< Track::Id, bool > > & on_go_to_track () const
 
core::Signal< std::pair< Track::Id, bool > > & on_go_to_track ()
 
const core::Signal< void > & on_end_of_tracklist () const
 
core::Signal< void > & on_end_of_tracklist ()
 
core::Signal< Track::Id > & on_track_removed ()
 
core::Property< Container > & tracks ()
 
void on_loop_status_changed (const core::ubuntu::media::Player::LoopStatus &loop_status)
 
core::ubuntu::media::Player::LoopStatus loop_status () const
 
void on_shuffle_changed (bool shuffle)
 
- 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 Track::MetaData query_meta_data_for_track (const Track::Id &id)=0
 
virtual Track::UriType query_uri_for_track (const Track::Id &id)=0
 
virtual void add_track_with_uri_at (const Track::UriType &uri, const Track::Id &position, bool make_current)=0
 
virtual void remove_track (const Track::Id &id)=0
 
virtual void go_to (const Track::Id &track, bool toggle_player_state)=0
 
bool has_next () const
 
bool has_previous () const
 
virtual void shuffle_tracks ()=0
 
virtual void unshuffle_tracks ()=0
 

Protected Member Functions

bool is_first_track (const ConstIterator &it)
 
bool is_last_track (const ConstIterator &it)
 
const TrackList::ConstIteratorcurrent_iterator ()
 
void reset_current_iterator_if_needed ()
 
core::Property< bool > & can_edit_tracks ()
 
core::Signal< ContainerTrackIdTuple > & on_track_list_replaced ()
 
core::Signal< Track::Id > & on_track_changed ()
 
void reset ()
 
- Protected Member Functions inherited from core::ubuntu::media::TrackList
 TrackList ()
 

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 ()
 

Detailed Description

Definition at line 36 of file track_list_skeleton.h.

Constructor & Destructor Documentation

core::ubuntu::media::TrackListSkeleton::TrackListSkeleton ( const core::dbus::Bus::Ptr &  bus,
const core::dbus::Object::Ptr &  object,
const core::ubuntu::media::apparmor::ubuntu::RequestContextResolver::Ptr request_context_resolver,
const core::ubuntu::media::apparmor::ubuntu::RequestAuthenticator::Ptr request_authenticator 
)
core::ubuntu::media::TrackListSkeleton::~TrackListSkeleton ( )

Member Function Documentation

const core::Property<bool>& core::ubuntu::media::TrackListSkeleton::can_edit_tracks ( ) const
virtual

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

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

core::Property<bool>& core::ubuntu::media::TrackListSkeleton::can_edit_tracks ( )
protected
const Track::Id& core::ubuntu::media::TrackListSkeleton::current ( )
const TrackList::ConstIterator& core::ubuntu::media::TrackListSkeleton::current_iterator ( )
inlineprotected
bool core::ubuntu::media::TrackListSkeleton::has_next ( )
bool core::ubuntu::media::TrackListSkeleton::has_previous ( )
bool core::ubuntu::media::TrackListSkeleton::is_first_track ( const ConstIterator it)
inlineprotected
bool core::ubuntu::media::TrackListSkeleton::is_last_track ( const ConstIterator it)
inlineprotected
core::ubuntu::media::Player::LoopStatus core::ubuntu::media::TrackListSkeleton::loop_status ( ) const
Track::Id core::ubuntu::media::TrackListSkeleton::next ( )
virtual

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

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

const core::Signal<void>& core::ubuntu::media::TrackListSkeleton::on_end_of_tracklist ( ) const
virtual

Used to notify the Player of when the end of the tracklist has been reached.

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

core::Signal<void>& core::ubuntu::media::TrackListSkeleton::on_end_of_tracklist ( )
const core::Signal<std::pair<Track::Id, bool> >& core::ubuntu::media::TrackListSkeleton::on_go_to_track ( ) const
virtual

Used to notify the Player of when the client requested that the Player should immediately play a new track.

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

core::Signal<std::pair<Track::Id, bool> >& core::ubuntu::media::TrackListSkeleton::on_go_to_track ( )
void core::ubuntu::media::TrackListSkeleton::on_loop_status_changed ( const core::ubuntu::media::Player::LoopStatus loop_status)
void core::ubuntu::media::TrackListSkeleton::on_shuffle_changed ( bool  shuffle)

Gets called when the shuffle property on the Player interface is changed by the client

const core::Signal<Track::Id>& core::ubuntu::media::TrackListSkeleton::on_track_added ( ) const
virtual

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

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

core::Signal<Track::Id>& core::ubuntu::media::TrackListSkeleton::on_track_added ( )
const core::Signal<Track::Id>& core::ubuntu::media::TrackListSkeleton::on_track_changed ( ) const
virtual

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

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

core::Signal<Track::Id>& core::ubuntu::media::TrackListSkeleton::on_track_changed ( )
protected
const core::Signal<ContainerTrackIdTuple>& core::ubuntu::media::TrackListSkeleton::on_track_list_replaced ( ) const
virtual

Indicates that the entire tracklist has been replaced.

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

core::Signal<ContainerTrackIdTuple>& core::ubuntu::media::TrackListSkeleton::on_track_list_replaced ( )
protected
const core::Signal<Track::Id>& core::ubuntu::media::TrackListSkeleton::on_track_removed ( ) const
virtual

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

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

core::Signal<Track::Id>& core::ubuntu::media::TrackListSkeleton::on_track_removed ( )
Track::Id core::ubuntu::media::TrackListSkeleton::previous ( )
virtual

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

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

void core::ubuntu::media::TrackListSkeleton::reset ( )
protectedvirtual

Clears and resets the TrackList to the same as a newly constructed instance.

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

void core::ubuntu::media::TrackListSkeleton::reset_current_iterator_if_needed ( )
protected
const core::Property<Container>& core::ubuntu::media::TrackListSkeleton::tracks ( ) const
virtual

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

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

core::Property<Container>& core::ubuntu::media::TrackListSkeleton::tracks ( )

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