#ifndef UTIL_TRACE_LOGGING_SCOPED_TRACE_OPERATIONS_H_
#define UTIL_TRACE_LOGGING_SCOPED_TRACE_OPERATIONS_H_
#include <atomic>
#include <cstring>
#include <memory>
#include <stack>
#include <utility>
#include <vector>
#include "platform/api/time.h"
#include "platform/api/trace_logging_platform.h"
#include "platform/base/error.h"
#include "platform/base/trace_logging_types.h"
#include "util/osp_logging.h"
#if defined(ENABLE_TRACE_LOGGING)
namespace openscreen::internal {
class ScopedTraceOperation { … };
class TraceLoggerBase : public ScopedTraceOperation { … };
class SynchronousTraceLogger : public TraceLoggerBase { … };
class AsynchronousTraceLogger : public TraceLoggerBase { … };
class TraceIdSetter final : public ScopedTraceOperation { … };
template <class T>
class TraceInstanceHelper { … };
}
#endif
#endif