26#include <ArmarXCore/interface/observers/Filters.h>
27#include <ArmarXCore/interface/observers/ObserverInterface.h>
34 template <
class IceBaseClass,
class DerivedClass>
42 template <
class BaseClass,
class VariantClass>
43 friend class ::armarx::GenericFactory;
55 ParameterTypeList
getSupportedTypes(
const Ice::Current& = Ice::emptyCurrent)
const override;
60 std::vector<double> inputHistory = std::vector<double>(2, 0.0);
63 std::vector<double> outputHistory = std::vector<double>(3, 0.0);
70 const Ice::Current& = Ice::emptyCurrent)
override;
71 void update(
double newInput);
76 void reset(
double frequency,
int sampleRate, PassType passType,
double resonance);
80 StringFloatDictionary
getProperties(
const Ice::Current&)
const override;
81 void setProperties(
const StringFloatDictionary& values,
const Ice::Current&)
override;
ParameterTypeList getSupportedTypes(const Ice::Current &=Ice::emptyCurrent) const override
This filter supports: Int, Long, Float, Double.
void update(Ice::Long, const VariantBasePtr &value, const Ice::Current &=Ice::emptyCurrent) override
double getRawValue() const
ButterworthFilter(double frequency, int sampleRate, PassType passType, double resonance)
VariantBasePtr getValue(const Ice::Current &=Ice::emptyCurrent) const override
void setProperties(const StringFloatDictionary &values, const Ice::Current &) override
void setInitialValue(double value)
VariantBasePtr calculate(const Ice::Current &=Ice::emptyCurrent) const override
StringFloatDictionary getProperties(const Ice::Current &) const override
void reset(double frequency, int sampleRate, PassType passType, double resonance)
This file offers overloads of toIce() and fromIce() functions for STL container types.
::IceInternal::Handle<::armarx::VariantBase > VariantBasePtr