2005-01-20 23:22:22 +00:00
|
|
|
// Berkeley Open Infrastructure for Network Computing
|
|
|
|
// http://boinc.berkeley.edu
|
|
|
|
// Copyright (C) 2005 University of California
|
2003-08-14 00:02:15 +00:00
|
|
|
//
|
2005-01-20 23:22:22 +00:00
|
|
|
// This is free software; you can redistribute it and/or
|
|
|
|
// modify it under the terms of the GNU Lesser General Public
|
|
|
|
// License as published by the Free Software Foundation;
|
|
|
|
// either version 2.1 of the License, or (at your option) any later version.
|
2003-08-14 00:02:15 +00:00
|
|
|
//
|
2005-01-20 23:22:22 +00:00
|
|
|
// This software is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
// See the GNU Lesser General Public License for more details.
|
2003-08-14 00:02:15 +00:00
|
|
|
//
|
2005-01-20 23:22:22 +00:00
|
|
|
// To view the GNU Lesser General Public License visit
|
|
|
|
// http://www.gnu.org/copyleft/lesser.html
|
|
|
|
// or write to the Free Software Foundation, Inc.,
|
|
|
|
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
2003-08-14 00:02:15 +00:00
|
|
|
|
|
|
|
#ifndef H_VALIDATE_UTIL
|
|
|
|
#define H_VALIDATE_UTIL
|
|
|
|
|
|
|
|
#include "boinc_db.h"
|
|
|
|
#include <vector>
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
typedef int (*init_result_f)(RESULT const&, void*&);
|
2004-09-09 22:25:10 +00:00
|
|
|
typedef int (*check_pair_with_data_f)(RESULT &, void*, RESULT const&, void*, bool&);
|
2003-08-14 00:02:15 +00:00
|
|
|
typedef int (*cleanup_result_f)(RESULT const&, void*);
|
2004-06-30 18:17:21 +00:00
|
|
|
extern int get_output_file_path(RESULT const& result, std::string& path);
|
2005-03-09 20:51:15 +00:00
|
|
|
extern double median_mean_credit(std::vector<RESULT>& results);
|
2003-09-20 17:38:13 +00:00
|
|
|
|
2004-07-13 12:23:47 +00:00
|
|
|
int generic_check_set(
|
|
|
|
std::vector<RESULT>& results, int& canonicalid, double& credit,
|
|
|
|
init_result_f init_result_f,
|
|
|
|
check_pair_with_data_f check_pair_with_data_f,
|
|
|
|
cleanup_result_f cleanup_result_f,
|
2004-07-13 13:54:09 +00:00
|
|
|
size_t min_valid);
|
2004-07-13 12:23:47 +00:00
|
|
|
|
2003-08-26 18:33:21 +00:00
|
|
|
int generic_check_set_majority(
|
2004-06-30 18:17:21 +00:00
|
|
|
std::vector<RESULT>& results, int& canonicalid, double& credit,
|
2003-08-26 18:33:21 +00:00
|
|
|
init_result_f init_result_f,
|
|
|
|
check_pair_with_data_f check_pair_with_data_f,
|
2004-07-13 12:23:47 +00:00
|
|
|
cleanup_result_f cleanup_result_f);
|
|
|
|
|
2003-08-26 18:33:21 +00:00
|
|
|
int generic_check_pair(
|
2004-09-09 22:25:10 +00:00
|
|
|
RESULT & r1, RESULT const& r2,
|
2003-08-26 18:33:21 +00:00
|
|
|
init_result_f init_result_f,
|
|
|
|
check_pair_with_data_f check_pair_with_data_f,
|
2004-07-13 12:23:47 +00:00
|
|
|
cleanup_result_f cleanup_result_f);
|
2003-08-14 00:02:15 +00:00
|
|
|
|
|
|
|
#endif
|