| // Copyright 2018 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef GARNET_BIN_TRACE_TESTS_SELF_CONTAINED_PROVIDER_H_ |
| #define GARNET_BIN_TRACE_TESTS_SELF_CONTAINED_PROVIDER_H_ |
| |
| // We need to define _ALL_SOURCE in order to get |thrd_create_with_name()|. |
| // We don't need it in this file, but self_contained_provider.cc needs it. |
| // If we don't do this here then we have a subtle header inclusion order |
| // dependency: If we're included first self_contained_provider.cc won't |
| // compile. Therefore, we do this here. [Yes, this is what happens when you |
| // have macros that control what symbols headers provider.] |
| #ifndef _ALL_SOURCE |
| #define _ALL_SOURCE // Enables thrd_create_with_name in <threads.h>. |
| #endif |
| #include <threads.h> |
| |
| namespace tracing { |
| namespace test { |
| |
| bool StartSelfContainedProvider(thrd_t* out_thread); |
| |
| } // namespace test |
| } // namespace tracing |
| |
| #endif // GARNET_BIN_TRACE_TESTS_SELF_CONTAINED_PROVIDER_H_ |