annotate foosdk/sdk/foobar2000/SDK/foosort.h @ 1:20d02a178406 default tip

*: check in everything else yay
author Paper <paper@tflc.us>
date Mon, 05 Jan 2026 02:15:46 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
1 #pragma once
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
2
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
3 // #define FOOSORT_LIMIT_THREADS 1
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
4
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
5
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
6 namespace fb2k {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
7
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
8 // foosort
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
9 // abortable multithreaded quicksort
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
10 // expects cb to handle concurrent calls as long as they do not touch the same items concurrently
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
11 void sort(pfc::sort_callback & cb, size_t count, size_t concurrency, abort_callback & aborter);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
12
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
13 }