libresidfp 1.1.1
Public Member Functions | Protected Member Functions | Friends | List of all members
reSIDfp::Filter Class Referenceabstract

#include <Filter.h>

Inheritance diagram for reSIDfp::Filter:
Inheritance graph
[legend]

Public Member Functions

 Filter (const FilterModelConfig &fmc, const Integrator &hpIntegrator, const Integrator &bpIntegrator)
 
uint16_t clock (Voice &voice1, Voice &voice2, Voice &voice3)
 
void enable (bool enable)
 
void reset ()
 
void writeFC_LO (uint8_t fc_lo)
 
void writeFC_HI (uint8_t fc_hi)
 
void writeRES_FILT (uint8_t res_filt)
 
void writeMODE_VOL (uint8_t mode_vol)
 
void input (int16_t input)
 
void restart ()
 

Protected Member Functions

virtual void updateCenterFrequency ()=0
 
void updateResonance (uint8_t res)
 
void updateMixing ()
 
unsigned int getFC () const
 
virtual void restartIntegrators ()=0
 
int32_t getNormalizedVoice (float v, uint8_t env) const
 
virtual int32_t getNormalizedMixerVoice (float v, uint8_t env) const =0
 

Friends

class State
 

Detailed Description

SID filter base class

Member Function Documentation

◆ clock()

RESIDFP_INLINE uint16_t reSIDfp::Filter::clock ( Voice voice1,
Voice voice2,
Voice voice3 
)

SID clocking - 1 cycle

Parameters
voice1voice 1 in
voice2voice 2 in
voice3voice 3 in
Returns
filtered output, unsigned 16 bit

◆ enable()

void reSIDfp::Filter::enable ( bool  enable)

Enable filter.

Parameters
enable

◆ getFC()

unsigned int reSIDfp::Filter::getFC ( ) const
inlineprotected

Get the filter cutoff register value

◆ input()

void reSIDfp::Filter::input ( int16_t  input)
inline

Apply a signal to EXT-IN

Parameters
inputa signed 16 bit sample

◆ reset()

void reSIDfp::Filter::reset ( )

SID reset.

◆ updateCenterFrequency()

virtual void reSIDfp::Filter::updateCenterFrequency ( )
protectedpure virtual

Update filter cutoff frequency.

Implemented in reSIDfp::Filter6581.

◆ updateMixing()

void reSIDfp::Filter::updateMixing ( )
protected

Mixing configuration modified (offsets change)

◆ updateResonance()

void reSIDfp::Filter::updateResonance ( uint8_t  res)
inlineprotected

Update filter resonance.

Parameters
resthe new resonance value

◆ writeFC_HI()

void reSIDfp::Filter::writeFC_HI ( uint8_t  fc_hi)

Write Frequency Cutoff High register.

Parameters
fc_hiFrequency Cutoff High-Byte

◆ writeFC_LO()

void reSIDfp::Filter::writeFC_LO ( uint8_t  fc_lo)

Write Frequency Cutoff Low register.

Parameters
fc_loFrequency Cutoff Low-Byte

◆ writeMODE_VOL()

void reSIDfp::Filter::writeMODE_VOL ( uint8_t  mode_vol)

Write filter Mode/Volume register.

Parameters
mode_volFilter Mode/Volume

◆ writeRES_FILT()

void reSIDfp::Filter::writeRES_FILT ( uint8_t  res_filt)

Write Resonance/Filter register.

Parameters
res_filtResonance/Filter

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