23 #include <drizzled/tree.h>
42 size_t max_in_memory_size;
44 unsigned char *record_pointers;
49 Unique(qsort_cmp2 comp_func,
void *comp_func_fixed_arg,
50 uint32_t size_arg,
size_t max_in_memory_size_arg);
52 ulong elements_in_tree() {
return tree.getElementsInTree(); }
53 inline bool unique_add(
void *ptr)
55 return (not tree.tree_insert(ptr, 0, tree.getCustomArg()));
58 bool get(
Table *table);
59 static double get_use_cost(uint32_t *buffer, uint32_t nkeys, uint32_t key_size,
60 size_t max_in_memory_size);
61 inline static int get_cost_calc_buff_size(ulong nkeys, uint32_t key_size,
64 register size_t max_elems_in_tree=
65 (1 + sortbuff_size / ALIGN_SIZE(
sizeof(
Tree_Element)+key_size));
66 return (
int) (
sizeof(uint32_t)*(1 + nkeys/max_elems_in_tree));
70 bool walk(tree_walk_action action,
void *walk_action_arg);
72 friend int unique_write_to_file(
unsigned char* key, uint32_t count,
Unique *unique);
73 friend int unique_write_to_ptrs(
unsigned char* key, uint32_t count,
Unique *unique);
TODO: Rename this file - func.h is stupid.