blob: 3e8c23cb8095b9d6fc164d2b58278b6a0eabe895 [file] [log] [blame]
// Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "touch_noise_filter/mux_filter.h"
#include <algorithm>
namespace touch_noise_filter {
MuxFilter::MuxFilter(NoiseFilter** filters, size_t num_filters)
: filters_(new NoiseFilter*[num_filters]), num_filters_(num_filters) {
std::copy(&filters[0], &filters[num_filters], filters_.get());
}
MuxFilter::~MuxFilter() {
for (size_t i = 0; i < num_filters_; i++)
delete filters_[i];
}
void MuxFilter::FilterFrame(Frame* previous, Frame* next, size_t num_slots) {
for (size_t i = 0; i < num_filters_; i++)
filters_[i]->FilterFrame(previous, next, num_slots);
}
} // namespace touch_noise_filter