// Copyright (c) Advanced Micro Devices, Inc. // SPDX-License-Identifier: MIT #pragma once #include "common/defines.h" #include "core/concepts.hpp" #include #include #include #include namespace rocprofsys { namespace causal { namespace sampling { std::set get_signal_types(std::int64_t _tid); void block_samples(); void unblock_samples(); void block_backtrace_samples(); void unblock_backtrace_samples(); template concept sampling_scope = std::is_same_v || std::is_same_v; template requires sampling_scope void pause(Tp = {}); template requires sampling_scope void resume(Tp = {}); void block_signals(std::set = {}); void unblock_signals(std::set = {}); std::set setup(); std::set shutdown(); void post_process(); } // namespace sampling } // namespace causal } // namespace rocprofsys