libsidplayfp 2.15.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
reSIDfp::Filter Class Referenceabstract

#include <Filter.h>

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

Public Member Functions

 Filter (FilterModelConfig &fmc)
 
unsigned short clock (Voice &v1, Voice &v2, Voice &v3)
 
void enable (bool enable)
 
void reset ()
 
void writeFC_LO (unsigned char fc_lo)
 
void writeFC_HI (unsigned char fc_hi)
 
void writeRES_FILT (unsigned char res_filt)
 
void writeMODE_VOL (unsigned char mode_vol)
 
void input (short input)
 

Protected Member Functions

virtual void updateCenterFrequency ()=0
 
void updateResonance (unsigned char res)
 
void updateMixing ()
 
unsigned int getFC () const
 
virtual int solveIntegrators ()=0
 

Protected Attributes

int Vhp = 0
 Filter highpass state.
 
int Vbp = 0
 Filter bandpass state.
 
int Vlp = 0
 Filter lowpass state.
 
bool hp = false
 Highpass, bandpass, and lowpass filter modes.
 
bool bp = false
 
bool lp = false
 

Detailed Description

SID filter base class

Member Function Documentation

◆ clock()

RESID_INLINE unsigned short reSIDfp::Filter::clock ( Voice v1,
Voice v2,
Voice v3 
)

SID clocking - 1 cycle

Parameters
v1voice 1 in
v2voice 2 in
v3voice 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 ( short  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 ( unsigned char  res)
inlineprotected

Update filter resonance.

Parameters
resthe new resonance value

◆ writeFC_HI()

void reSIDfp::Filter::writeFC_HI ( unsigned char  fc_hi)

Write Frequency Cutoff High register.

Parameters
fc_hiFrequency Cutoff High-Byte

◆ writeFC_LO()

void reSIDfp::Filter::writeFC_LO ( unsigned char  fc_lo)

Write Frequency Cutoff Low register.

Parameters
fc_loFrequency Cutoff Low-Byte

◆ writeMODE_VOL()

void reSIDfp::Filter::writeMODE_VOL ( unsigned char  mode_vol)

Write filter Mode/Volume register.

Parameters
mode_volFilter Mode/Volume

◆ writeRES_FILT()

void reSIDfp::Filter::writeRES_FILT ( unsigned char  res_filt)

Write Resonance/Filter register.

Parameters
res_filtResonance/Filter

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