CLAM-Development  1.1
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
CLAM::NetworkPlayer Class Reference

A NetworkPlayer is an object that controls the playback of a Network providing a high level transport like interface. More...

#include <NetworkPlayer.hxx>

List of all members.

Public Member Functions

 NetworkPlayer ()
virtual ~NetworkPlayer ()
virtual bool IsWorking () const =0
 Should return true when the backend is able to run the network.
virtual std::string NonWorkingReason () const =0
 Whenever the backend is not working, this method returns the reason.
virtual void Start ()=0
virtual void Stop ()=0
virtual void Init ()
void SetNetworkBackLink (Network &net)
bool IsStopped ()
virtual unsigned BackendBufferSize ()
virtual unsigned BackendSampleRate ()
std::string SourcesAndSinksToString ()

Protected Types

typedef std::vector
< AudioSource * > 
AudioSources
typedef std::vector< AudioSink * > AudioSinks

Protected Member Functions

NetworkGetNetwork ()
void SetStopped (const bool val)
void CollectSourcesAndSinks ()
const AudioSourcesGetAudioSources () const
const AudioSinksGetAudioSinks () const
AudioSourcesGetAudioSources ()
AudioSinksGetAudioSinks ()

Protected Attributes

AudioSources _sources
AudioSinks _sinks

Detailed Description

A NetworkPlayer is an object that controls the playback of a Network providing a high level transport like interface.

This class is an abstract class. Subclasses contextualizes the network inside a given execution context dealing with threading, callback calling and device mapping on concrete architectures such as Alsa, PortAudio, Jack, VST, Ladspa...

Definition at line 39 of file NetworkPlayer.hxx.


Member Typedef Documentation

typedef std::vector<AudioSink*> CLAM::NetworkPlayer::AudioSinks [protected]

Definition at line 43 of file NetworkPlayer.hxx.

typedef std::vector<AudioSource*> CLAM::NetworkPlayer::AudioSources [protected]

Definition at line 42 of file NetworkPlayer.hxx.


Constructor & Destructor Documentation

Definition at line 45 of file NetworkPlayer.hxx.

References NULL, and SetStopped().

virtual CLAM::NetworkPlayer::~NetworkPlayer ( ) [inline, virtual]

Definition at line 51 of file NetworkPlayer.hxx.


Member Function Documentation

virtual unsigned CLAM::NetworkPlayer::BackendBufferSize ( ) [inline, virtual]

Reimplemented in CLAM::JACKNetworkPlayer.

Definition at line 73 of file NetworkPlayer.hxx.

Referenced by CLAM::FlattenedNetwork::BackendBufferSize().

virtual unsigned CLAM::NetworkPlayer::BackendSampleRate ( ) [inline, virtual]

Reimplemented in CLAM::JACKNetworkPlayer.

Definition at line 78 of file NetworkPlayer.hxx.

Referenced by CLAM::FlattenedNetwork::BackendSampleRate().

const AudioSinks& CLAM::NetworkPlayer::GetAudioSinks ( ) const [inline, protected]

Definition at line 95 of file NetworkPlayer.hxx.

References _sinks.

const AudioSources& CLAM::NetworkPlayer::GetAudioSources ( ) const [inline, protected]

Definition at line 94 of file NetworkPlayer.hxx.

References _sources.

Network& CLAM::NetworkPlayer::GetNetwork ( ) [inline, protected]
virtual void CLAM::NetworkPlayer::Init ( ) [inline, virtual]

Reimplemented in CLAM::JACKNetworkPlayer.

Definition at line 61 of file NetworkPlayer.hxx.

Referenced by CLAM::FlattenedNetwork::SetPlayer().

bool CLAM::NetworkPlayer::IsStopped ( ) [inline]
virtual bool CLAM::NetworkPlayer::IsWorking ( ) const [pure virtual]

Should return true when the backend is able to run the network.

Implemented in CLAM::JACKNetworkPlayer, CLAM::PANetworkPlayer, and CLAM::FreewheelingNetworkPlayer.

virtual std::string CLAM::NetworkPlayer::NonWorkingReason ( ) const [pure virtual]

Whenever the backend is not working, this method returns the reason.

Implemented in CLAM::JACKNetworkPlayer, CLAM::PANetworkPlayer, and CLAM::FreewheelingNetworkPlayer.

Definition at line 65 of file NetworkPlayer.hxx.

Referenced by CLAM::FlattenedNetwork::SetPlayer().

void CLAM::NetworkPlayer::SetStopped ( const bool  val) [inline, protected]
virtual void CLAM::NetworkPlayer::Start ( ) [pure virtual]
virtual void CLAM::NetworkPlayer::Stop ( ) [pure virtual]

Member Data Documentation


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