11 #ifndef __LOWPASS_HEADER
12 #define __LOWPASS_HEADER
15 #include "../../util/mean_trait.hpp"
19 template<
typename T,
unsigned N,
typename _base =
identity_filter<T> >
39 val_ = ((N - 1) * val_ + base::value()) / N;
44 return lowpass_impl<mean_type, T>();
51 template<
typename M,
typename U>
55 template<
typename M,
typename U>
56 typename enable_if<not is_same<M, U>::value, M>::type lowpass_impl()
const {
65 template<typename T, typename _base,
unsigned N>
70 #endif //__LOWPASS_HEADER
S & operator<<(S &os, oss_class< D, max_buf > const &arg)
Definition: serializer.hpp:158
Definition: type_traits.hpp:228
lowpass_filter(lowpass_filter const &arg)
Definition: lowpass.hpp:27
lowpass_filter & operator=(T const &in)
Definition: lowpass.hpp:32
lowpass_filter(T const &arg)
Definition: lowpass.hpp:29
#define EMPTY_FILTER(NAME, VALUE)
Definition: realization.hpp:22
Definition: realization.hpp:19
ustd::conditional< detail::use_double_identifier< T >::value, double, T >::type type
Definition: mean_trait.hpp:44
lowpass_filter & operator<<(T const &in)
Definition: lowpass.hpp:37
Definition: lowpass.hpp:20
lowpass_filter()
Definition: lowpass.hpp:25
lowpass_filter< T, N, _base > type
Definition: lowpass.hpp:67
T value() const
Definition: lowpass.hpp:43