28 #include <ArmarXCore/interface/observers/ObserverInterface.h>
29 #include <ArmarXCore/interface/observers/Filters.h>
34 template <
class IceBaseClass,
class DerivedClass>
41 public ButterworthFilterBase,
44 template <
class BaseClass,
class VariantClass>
45 friend class ::armarx::GenericFactory;
50 ButterworthFilter(
double frequency,
int sampleRate, PassType passType,
double resonance);
56 ParameterTypeList
getSupportedTypes(
const Ice::Current& = Ice::emptyCurrent)
const override;
62 std::vector<double> inputHistory = std::vector<double>(2, 0.0);
65 std::vector<double> outputHistory = std::vector<double>(3, 0.0);
73 void update(
double newInput);
78 void reset(
double frequency,
int sampleRate, PassType passType,
double resonance);
82 StringFloatDictionary
getProperties(
const Ice::Current&)
const override;