00001 00002 // This code is part of the MaiaProject free software 00003 // 00004 // Keyboard and Mouse Emulator - Virtual keyboard Engine 00005 // 00006 // Copyright (c) 2002-2003 Luca Clivio <luca.clivio@maiaproject.org> 00007 // Tel. +39-347-2538040 00008 // via B.Croce 2, 20037 Paderno Dugnano (Milano) - Italy 00009 // 00010 // Developers: 00011 // Simone Mangano <simone.mangano@maiaproject.org> 00012 // Andrea Tosato <andrea.tosato@maiaproject.org> 00013 // 00014 // ----------------------------------------------------------------------------- 00015 // This program is free software; This program is free software; 00016 // you can redistribute it and/or modify it under the terms of the 00017 // GNU General Public License as published by the Free Software Foundation; 00018 // either version 2 of the License, or (at your option) any later version. 00019 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00020 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00021 // GNU General Public License for more details. 00022 // You should have received a copy of the GNU General Public License 00023 // along with this program; if not, write to the Free Software 00024 // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00026 00027 00028 #ifndef _omARMA_h_ 00029 #define _omARMA_h_ 00030 00031 00032 #include <iostream> 00033 #include <vector> 00034 00043 class omARMA 00044 { 00045 private: 00046 int order; //order of filter 00047 std::vector<double> x; 00048 std::vector<double> y; //ARMA x and y storical value 00049 std::vector<double> a,b; //ARMA parameters 00050 00051 public: 00052 omARMA(int order, std::vector<double> a, std::vector<double> b); 00053 void Initialize(double initValue); 00054 double Filter(double value); 00055 }; 00056 00057 #endif
Copyright © by Luca Clivio |