+stat_segment_data_t *
+stat_segment_dump_entry_r (uint32_t index, stat_client_main_t * sm)
+{
+ stat_segment_directory_entry_t *ep;
+ stat_segment_data_t *res = 0;
+ stat_segment_access_t sa;
+
+ stat_segment_access_start (&sa, sm);
+
+ /* Collect counter */
+ ep = vec_elt_at_index (sm->directory_vector, index);
+ vec_add1 (res, copy_data (ep, sm));
+
+ if (stat_segment_access_end (&sa, sm))
+ return res;
+ return 0;
+}
+
+stat_segment_data_t *
+stat_segment_dump_entry (uint32_t index)
+{
+ stat_client_main_t *sm = &stat_client_main;
+ return stat_segment_dump_entry_r (index, sm);
+}
+
+char *
+stat_segment_index_to_name (uint32_t index)
+{
+ char *name;
+ stat_segment_directory_entry_t *counter_vec = get_stat_vector ();
+ stat_segment_directory_entry_t *ep;
+ ep = vec_elt_at_index (counter_vec, index);
+ name = strdup (ep->name);
+ return name;
+}
+