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  FadeMode : unsigned char {
  NoFading =0,
  FadeIn,
  FadeOut
}
 

Public Member Functions

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

Protected Member Functions

virtual void stop ()=0
 
virtual void play ()=0
 
virtual void fade_out_handler ()=0
 Some additional stuff the parent class wants to do when fading out.
 
virtual void fade_in_handler ()=0
 Some additional stuff the parent class wants to do when fading in.
 
virtual double get_internal_volume () const =0
 get current volume of pipeline More...
 
virtual void set_internal_volume (double vol)=0
 set current volume of pipeline More...
 
void abort_fader ()
 Stops the current fader process.
 

Friends

class CrossFadeableTimer
 

Detailed Description

The CrossFader class.

Member Function Documentation

◆ get_fading_time_ms()

MilliSeconds PipelineExtensions::Fadeable::get_fading_time_ms ( ) const

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

Returns
fading time in ms

◆ get_internal_volume()

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

get current volume of pipeline

Returns
value between 0 and 1.0

Implemented in Engine::Pipeline.

◆ set_internal_volume()

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

set current volume of pipeline

Parameters
volvalue between 0 and 1.0

Implemented in Engine::Pipeline.