• Skip to content
  • Skip to link menu
KDE 4.0 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

Phonon

Phonon::Path

Path Class Reference
[Playback, Recording]

#include <Phonon/Path>

List of all members.


Detailed Description

Connection object providing convenient effect insertion.

MediaObject *media = new MediaObject;
AudioOutput *output = new AudioOutput(Phonon::MusicCategory);
Path path = Phonon::createPath(media, output);
Q_ASSERT(path.isValid()); // for this simple case the path should always be
                          //valid - there are unit tests to ensure it
// insert an effect
QList<EffectDescription> effectList = BackendCapabilities::availableAudioEffects();
if (!effectList.isEmpty()) {
    Effect *effect = path.insertEffect(effectList.first());
}

Author:
Matthias Kretz <kretz@kde.org>

Thierry Bastian <thierry.bastian@trolltech.com>


Public Member Functions

 ~Path ()
 Path ()
 Path (const Path &)
bool isValid () const
Effect * insertEffect (const EffectDescription &desc, Effect *insertBefore=0)
bool insertEffect (Effect *newEffect, Effect *insertBefore=0)
bool removeEffect (Effect *effect)
QList< Effect * > effects () const
bool reconnect (MediaNode *source, MediaNode *sink)
bool disconnect ()
Path & operator= (const Path &p)
bool operator== (const Path &p) const
bool operator!= (const Path &p) const

Constructor & Destructor Documentation

~Path (  ) 

Destroys this reference to the Path.

If the path was valid the connection is not broken as both the source and the sink MediaNodes still keep a reference to the Path.

See also:
disconnect

Path (  ) 

Creates an invalid path.

You can still make it a valid path by calling reconnect. To create a path you should use createPath, though.

See also:
createPath

isValid

Path ( const Path &   ) 

Constructs a copy of the given path.

This constructor is fast thanks to explicit sharing.


Member Function Documentation

bool isValid (  )  const

Returns whether the path object connects two MediaNodes or not.

Returns:
true when the path connects two MediaNodes

false when the path is disconnected

Effect* insertEffect ( const EffectDescription &  desc,
Effect *  insertBefore = 0 
)

Creates and inserts an effect into the path.

You may insert effects of the same class as often as you like, but if you insert the same object, the call will fail.

Parameters:
desc The EffectDescription object for the effect to be inserted.
insertBefore If you already inserted an effect you can tell with this parameter in which order the data gets processed. If this is 0 the effect is appended at the end of the processing list. If the effect has not been inserted before the method will do nothing and return false.
Returns:
Returns a pointer to the effect object if it could be inserted at the specified position. If 0 is returned the effect was not inserted.
See also:
removeEffect

effects

bool insertEffect ( Effect *  newEffect,
Effect *  insertBefore = 0 
)

Inserts an effect into the path.

You may insert effects of the same class as often as you like, but if you insert the same object, the call will fail.

Parameters:
newEffect An Effect object.
insertBefore If you already inserted an effect you can tell with this parameter in which order the data gets processed. If this is 0 the effect is appended at the end of the processing list. If the effect has not been inserted before the method will do nothing and return false.
Returns:
Returns whether the effect could be inserted at the specified position. If false is returned the effect was not inserted.
See also:
removeEffect

effects

bool removeEffect ( Effect *  effect  ) 

Removes an effect from the path.

If the effect gets deleted while it is still connected the effect will be removed automatically.

Parameters:
effect The effect to be removed.
Returns:
Returns whether the call was successful. If it returns false the effect could not be found in the path, meaning it has not been inserted before.
See also:
insertEffect

effects

QList<Effect *> effects (  )  const

Returns a list of Effect objects that are currently used as effects.

The order in the list determines the order the signal is sent through the effects.

Returns:
A list with all current effects.
See also:
insertEffect

removeEffect

bool reconnect ( MediaNode *  source,
MediaNode *  sink 
)

Tries to change the MediaNodes the path is connected to.

If reconnect fails the old connection is kept.

bool disconnect (  ) 

Disconnects the path from the MediaNodes it was connected to.

This invalidates the path (isValid returns false then).

Path& operator= ( const Path &  p  ) 

Assigns p to this Path and returns a reference to this Path.

This operation is fast thanks to explicit sharing.

bool operator== ( const Path &  p  )  const

Returns true if this Path is equal to p; otherwise returns false;.

bool operator!= ( const Path &  p  )  const

Returns true if this Path is not equal to p; otherwise returns false;.


The documentation for this class was generated from the following file:
  • path.h

Phonon

Skip menu "Phonon"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • KIO
  • KIOSlave
  • KJS
  •   WTF
  • KJSEmbed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  •   core
  • Phonon
  •   Backend
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal