17 #ifndef JUBATUS_CORE_NEAREST_NEIGHBOR_BIT_VECTOR_NEAREST_NEIGHBOR_BASE_HPP_
18 #define JUBATUS_CORE_NEAREST_NEIGHBOR_BIT_VECTOR_NEAREST_NEIGHBOR_BASE_HPP_
24 #include "jubatus/util/lang/shared_ptr.h"
32 namespace nearest_neighbor {
38 jubatus::util::lang::shared_ptr<storage::column_table> table,
39 const std::string&
id);
42 jubatus::util::lang::shared_ptr<storage::column_table> table,
43 std::vector<storage::column_type>& schema,
44 const std::string&
id);
51 std::vector<std::pair<std::string, float> >& ids,
52 uint64_t ret_num)
const;
54 const std::string& query_id,
55 std::vector<std::pair<std::string, float> >& ids,
56 uint64_t ret_num)
const;
61 void fill_schema(std::vector<storage::column_type>& schema);
66 std::vector<std::pair<std::string, float> >& ids,
67 uint64_t ret_num)
const;
77 #endif // JUBATUS_CORE_NEAREST_NEIGHBOR_BIT_VECTOR_NEAREST_NEIGHBOR_BASE_HPP_
virtual void set_row(const std::string &id, const common::sfv_t &sfv)
void neighbor_row_from_hash(const storage::bit_vector &query, std::vector< std::pair< std::string, float > > &ids, uint64_t ret_num) const
uint64_t bit_vector_column_id_
storage::const_bit_vector_column & bit_vector_column() const
void fill_schema(std::vector< storage::column_type > &schema)
std::vector< std::pair< std::string, float > > sfv_t
virtual storage::bit_vector hash(const common::sfv_t &sfv) const =0
virtual void neighbor_row(const common::sfv_t &query, std::vector< std::pair< std::string, float > > &ids, uint64_t ret_num) const
bit_vector_nearest_neighbor_base(uint32_t bitnum, jubatus::util::lang::shared_ptr< storage::column_table > table, const std::string &id)