00001 #ifndef _theplu_yat_utility_knni_ 00002 #define _theplu_yat_utility_knni_ 00003 00004 // $Id: kNNI.h 1797 2009-02-12 18:07:10Z peter $ 00005 00006 /* 00007 Copyright (C) 2004 Jari Häkkinen 00008 Copyright (C) 2005 Jari Häkkinen, Peter Johansson 00009 Copyright (C) 2006 Jari Häkkinen 00010 Copyright (C) 2007, 2008 Jari Häkkinen, Peter Johansson 00011 Copyright (C) 2009 Jari Häkkinen 00012 00013 This file is part of the yat library, http://dev.thep.lu.se/yat 00014 00015 The yat library is free software; you can redistribute it and/or 00016 modify it under the terms of the GNU General Public License as 00017 published by the Free Software Foundation; either version 3 of the 00018 License, or (at your option) any later version. 00019 00020 The yat library is distributed in the hope that it will be useful, 00021 but WITHOUT ANY WARRANTY; without even the implied warranty of 00022 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00023 General Public License for more details. 00024 00025 You should have received a copy of the GNU General Public License 00026 along with yat. If not, see <http://www.gnu.org/licenses/>. 00027 */ 00028 00029 #include "NNI.h" 00030 00031 #include <iostream> 00032 #include <vector> 00033 00034 namespace theplu { 00035 namespace yat { 00036 namespace utility { 00037 00050 class kNNI : public NNI 00051 { 00052 public: 00056 kNNI(const utility::Matrix& matrix,const utility::Matrix& weight, 00057 const unsigned int neighbours); 00058 00075 unsigned int estimate(void); 00076 00077 private: 00078 std::vector<size_t> mv_rows_; // index to rows that have values to estimate 00079 }; 00080 00081 }}} // of namespace utility, yat, and theplu 00082 00083 #endif