Sayonara Player
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
PipelineExtensions::Fadeable Class Referenceabstract

The CrossFader class. More...

#include <Fadeable.h>

Inheritance diagram for PipelineExtensions::Fadeable:
Engine::Pipeline

Public Types

enum class  FadeMode : unsigned char {
  NoFading =0 ,
  FadeIn ,
  FadeOut
}
 

Public Member Functions

 Fadeable (const Fadeable &other)=delete
 
MilliSeconds fadingTimeMs () const
 get fading time in ms. This is useful to calculate the beginning of the next track More...
 
void fadeIn ()
 start to fade in
 
void fadeOut ()
 start to fade out
 

Protected Member Functions

virtual void stop ()=0
 
virtual void play ()=0
 
virtual void postProcessFadeOut ()=0
 Some additional stuff the implementation class wants to do when fading out.
 
virtual void postProcessFadeIn ()=0
 Some additional stuff the implementation class wants to do when fading in.
 
virtual double internalVolume () const =0
 get current volume of pipeline More...
 
virtual void setInternalVolume (double vol)=0
 set current volume of pipeline More...
 
void abortFader ()
 Stops the current fader process.
 

Friends

class CrossFadeableTimer
 

Detailed Description

The CrossFader class.

Member Function Documentation

◆ fadingTimeMs()

MilliSeconds PipelineExtensions::Fadeable::fadingTimeMs ( ) const

get fading time in ms. This is useful to calculate the beginning of the next track

Returns
fading time in ms

◆ internalVolume()

virtual double PipelineExtensions::Fadeable::internalVolume ( ) const
protectedpure virtual

get current volume of pipeline

Returns
value between 0 and 1.0

◆ setInternalVolume()

virtual void PipelineExtensions::Fadeable::setInternalVolume ( double  vol)
protectedpure virtual

set current volume of pipeline

Parameters
volvalue between 0 and 1.0