CLAM::NetworkPlayer Class Reference

#include <NetworkPlayer.hxx>

Inheritance diagram for CLAM::NetworkPlayer:

CLAM::FreewheelingNetworkPlayer CLAM::JACKNetworkPlayer CLAM::PANetworkPlayer

List of all members.


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.


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

Member Typedef Documentation

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

Definition at line 42 of file NetworkPlayer.hxx.

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

Definition at line 43 of file NetworkPlayer.hxx.


Constructor & Destructor Documentation

CLAM::NetworkPlayer::NetworkPlayer (  )  [inline]

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 bool CLAM::NetworkPlayer::IsWorking (  )  const [pure virtual]

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

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

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

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

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

virtual void CLAM::NetworkPlayer::Start (  )  [pure virtual]

virtual void CLAM::NetworkPlayer::Stop (  )  [pure virtual]

virtual void CLAM::NetworkPlayer::Init (  )  [inline, virtual]

Reimplemented in CLAM::JACKNetworkPlayer.

Definition at line 61 of file NetworkPlayer.hxx.

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

void CLAM::NetworkPlayer::SetNetworkBackLink ( Network net  )  [inline]

Definition at line 65 of file NetworkPlayer.hxx.

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

bool CLAM::NetworkPlayer::IsStopped (  )  [inline]

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

std::string CLAM::NetworkPlayer::SourcesAndSinksToString (  ) 

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

void CLAM::NetworkPlayer::SetStopped ( const bool  val  )  [inline, protected]

void CLAM::NetworkPlayer::CollectSourcesAndSinks (  )  [protected]

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

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

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

Definition at line 94 of file NetworkPlayer.hxx.

References _sources.

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

Definition at line 95 of file NetworkPlayer.hxx.

References _sinks.


Member Data Documentation


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

Generated on Tue Aug 12 22:33:47 2008 for CLAM by  doxygen 1.5.5