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

#include <track_list_implementation.h>

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

Public Member Functions

 TrackListImplementation (const core::dbus::Bus::Ptr &bus, const core::dbus::Object::Ptr &object, const std::shared_ptr< Engine::MetaDataExtractor > &extractor, const core::ubuntu::media::apparmor::ubuntu::RequestContextResolver::Ptr &request_context_resolver, const core::ubuntu::media::apparmor::ubuntu::RequestAuthenticator::Ptr &request_authenticator)
 
 ~TrackListImplementation ()
 
Track::UriType query_uri_for_track (const Track::Id &id)
 
Track::MetaData query_meta_data_for_track (const Track::Id &id)
 
void add_track_with_uri_at (const Track::UriType &uri, const Track::Id &position, bool make_current)
 
void remove_track (const Track::Id &id)
 
void go_to (const Track::Id &track, bool toggle_player_state)
 
void shuffle_tracks ()
 
void unshuffle_tracks ()
 
void reset ()
 
- Public Member Functions inherited from 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)
 
 ~TrackListSkeleton ()
 
bool has_next () const
 
const Track::Idnext ()
 
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
 
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 ()
 
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
 

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::TrackListSkeleton
core::Property< bool > & can_edit_tracks ()
 
core::Signal< ContainerTrackIdTuple > & on_track_list_replaced ()
 
core::Signal< Track::Id > & on_track_added ()
 
core::Signal< Track::Id > & on_track_changed ()
 
- Protected Member Functions inherited from core::ubuntu::media::TrackList
 TrackList ()
 

Detailed Description

Definition at line 31 of file track_list_implementation.h.

Constructor & Destructor Documentation

core::ubuntu::media::TrackListImplementation::TrackListImplementation ( const core::dbus::Bus::Ptr &  bus,
const core::dbus::Object::Ptr &  object,
const std::shared_ptr< Engine::MetaDataExtractor > &  extractor,
const core::ubuntu::media::apparmor::ubuntu::RequestContextResolver::Ptr request_context_resolver,
const core::ubuntu::media::apparmor::ubuntu::RequestAuthenticator::Ptr request_authenticator 
)
core::ubuntu::media::TrackListImplementation::~TrackListImplementation ( )

Member Function Documentation

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

Adds a URI in the TrackList.

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

void core::ubuntu::media::TrackListImplementation::go_to ( const Track::Id track,
bool  toggle_player_state 
)
virtual

Skip to the specified TrackId. Calls stop() and play() on the player if toggle_player_state is true.

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

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

Gets all the metadata available for a given Track.

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

Track::UriType core::ubuntu::media::TrackListImplementation::query_uri_for_track ( const Track::Id id)
void core::ubuntu::media::TrackListImplementation::remove_track ( const Track::Id id)
virtual

Removes a Track from the TrackList.

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

void core::ubuntu::media::TrackListImplementation::reset ( )
virtual

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

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

void core::ubuntu::media::TrackListImplementation::shuffle_tracks ( )
virtual

Reorders the tracks such that they are in a random order.

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

void core::ubuntu::media::TrackListImplementation::unshuffle_tracks ( )
virtual

Restores the original order of tracks before shuffle mode was turned on.

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


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