00001 #ifndef _theplu_yat_utility_knni_ 00002 #define _theplu_yat_utility_knni_ 00003 00004 // $Id: kNNI.h 2119 2009-12-12 23:11:43Z 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 <vector> 00032 00033 namespace theplu { 00034 namespace yat { 00035 namespace utility { 00036 00049 class kNNI : public NNI 00050 { 00051 public: 00055 kNNI(const utility::Matrix& matrix,const utility::Matrix& weight, 00056 const unsigned int neighbours); 00057 00074 unsigned int estimate(void); 00075 00076 private: 00077 std::vector<size_t> mv_rows_; // index to rows that have values to estimate 00078 }; 00079 00080 }}} // of namespace utility, yat, and theplu 00081 00082 #endif