blob: 556ce1f98085eeb5dd8aa088a5b016d91caafacd [file] [log] [blame]
// 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_