2#include <ossia/detail/config.hpp>
4#include <ossia/detail/flat_map.hpp>
12void set_thread_realtime(std::thread& t,
int prio = 99,
bool algo_fifo =
true);
14void set_thread_name(std::thread& t, std::string_view name);
16void set_thread_name(std::string_view name);
18void set_thread_pinned(
int cpu);
20enum class thread_type :
unsigned char
38using thread_specs = ossia::flat_map<thread_type, thread_spec>;
41const thread_specs& get_thread_specs() noexcept;
44thread_type get_current_thread_type();
48void set_thread_pinned(thread_type kind,
int thread_index);
51void ensure_current_thread(thread_type kind);
54#define OSSIA_ENSURE_CURRENT_THREAD(a) \
59#define OSSIA_ENSURE_CURRENT_THREAD(a) ::ossia::ensure_current_thread(a)
63std::string get_exe_path();
66std::string get_exe_folder();
69std::string get_module_path();