2 #include "libbenchmark_results_internal.h"
8 /****************************************************************************/
9 int libbenchmark_results_get_result( struct libbenchmark_results_state *rs,
10 enum libbenchmark_datastructure_id datastructure_id,
11 enum libbenchmark_benchmark_id benchmark_id,
12 enum libbenchmark_lock_id lock_id,
13 enum libbenchmark_topology_numa_mode numa_mode,
14 struct lfds710_list_aso_state *lpset,
15 struct libbenchmark_topology_node_state *tns,
16 lfds710_pal_uint_t *result )
21 struct lfds710_btree_au_element
24 struct libbenchmark_result
28 LFDS710_PAL_ASSERT( rs != NULL );
29 // TRD : datastructure_id can be any value in its range
30 // TRD : benchmark_id can be any value in its range
31 // TRD : lock_id can be any value in its range
32 // TRD : numa_mode can be any value in its range
33 LFDS710_PAL_ASSERT( lpset != NULL );
34 LFDS710_PAL_ASSERT( tns!= NULL );
35 LFDS710_PAL_ASSERT( result != NULL );
37 search_key.datastructure_id = datastructure_id;
38 search_key.benchmark_id = benchmark_id;
39 search_key.lock_id = lock_id;
40 search_key.numa_mode = numa_mode;
41 search_key.lpset = lpset;
42 search_key.tns = *tns;
44 rv = lfds710_btree_au_get_by_key( &rs->results_tree, NULL, &search_key, &baue );
48 r = LFDS710_BTREE_AU_GET_KEY_FROM_ELEMENT( *baue );