IIRFilter Class


An infinite impulse response (IIR) low-pass filter operator. More...

Header: #include <IIRFilter>
Inherits: CDPOperator<T>

Public Functions

IIRFilter(const CDPPropertyBase &in)

Reimplemented Public Functions

virtual void Configure(XMLPrimitive *operatorXML) override
virtual void Create(const char *shortName, CDPBaseObject *pParent) override
virtual void FillNodeChildren(CDP::StudioAPI::NodeStream &stream) const override
virtual std::string GetNodeTypeName() const override
virtual unsigned int Process() override

Additional Inherited Members

Detailed Description

An infinite impulse response (IIR) low-pass filter operator.

This CDP operator can be used to limit (truncate) input signal using 1st order IIR filter.


f3dB-3dB cut-off frequency for IIR filter
ResetResets IIRFilter calculation. When toggled from 0 to 1 IIRFilter signal history is cleared and calculation reset.


Below is an example plot of 1Hz Sine signal (cyan) and the same signal with IIRFilter operator with property f3dB=1 applied (orange):

Member Function Documentation

IIRFilter::IIRFilter(const CDPPropertyBase &in)

Constructs a IIRFilter with input in.

[override virtual] void IIRFilter::Configure(XMLPrimitive *operatorXML)

Reimplemented from CDPBaseObject::Configure().

[override virtual] void IIRFilter::Create(const char *shortName, CDPBaseObject *pParent)

Reimplemented from CDPBaseObject::Create().

[override virtual] void IIRFilter::FillNodeChildren(CDP::StudioAPI::NodeStream &stream) const

Reimplemented from CDPNode::FillNodeChildren().

Exposes himself and Arguments to Studio

[override virtual] std::string IIRFilter::GetNodeTypeName() const

Reimplemented from CDPNode::GetNodeTypeName().

[override virtual] unsigned int IIRFilter::Process()

Reimplemented from CDPOperatorBase::Process().

Does actual Ramp Filter output calculation.