8 #ifndef GPUGenie_query_h 9 #define GPUGenie_query_h 24 typedef unsigned int u32;
27 typedef unsigned long long u64;
67 dim(
int query,
int order,
int start_pos,
int end_pos,
float weight);
84 std::map<int, std::vector<range> > _attr_map;
92 std::map<int, std::vector<dim> > _dim_map;
243 build_compressed(
int max_load);
269 build(std::vector<dim> &);
282 dump(std::vector<dim>& vout);
285 dump(std::vector<range>& ranges);
void build_and_apply_load_balance(int max_load)
The function would construct query in the setting where load balance feature is on.
This is the top-level namespace of the project.
The declaration for class inv_table.
void build_sequence()
build query dim for sequence search
int topk()
Get top k matches.
void print(int limit)
Print out the information of all dims.
genie::table::inv_table * ref_table()
The refrenced table's pointer.
int dump(std::vector< dim > &vout)
std::vector< dim > _dims
Collection of dims of all queries.
void apply_adaptive_query_range()
Construct query in adaptice range mode.
Query class includes the functions for processing queries based on user's input.
int count_ranges()
Get value of _ count.
The first-step struct for processing queries.
void clear_dim(int index)
Delete the dim at index.
void attr(int index, int low, int up, float weight, int order)
Modify the matching range and weight of an attribute.
The second-step struct for processing queries.
int index()
Get index of the query.
Declaration of inv_list class.
bool is_load_balanced
Whether this query set has been applied load balance feature.
bool use_load_balance
Whether this query set is to use load balance.
void build()
Construct the query based on a normal table.