Program Listing for File event_logger_provider.h
↰ Return to documentation for file (/tmp/B.puc0r6hi/BUILD/opentelemetry-cpp-1.27.0-build/opentelemetry-cpp-1.27.0/api/include/opentelemetry/logs/event_logger_provider.h)
// Copyright The OpenTelemetry Authors
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include "opentelemetry/nostd/shared_ptr.h"
#include "opentelemetry/nostd/string_view.h"
#include "opentelemetry/version.h"
OPENTELEMETRY_BEGIN_NAMESPACE
namespace logs
{
class EventLogger;
class Logger;
#if OPENTELEMETRY_ABI_VERSION_NO < 2
class EventLoggerProvider
{
public:
EventLoggerProvider() = default;
EventLoggerProvider(const EventLoggerProvider &) = default;
EventLoggerProvider(EventLoggerProvider &&) noexcept = default;
EventLoggerProvider &operator=(const EventLoggerProvider &) = default;
EventLoggerProvider &operator=(EventLoggerProvider &&) noexcept = default;
virtual ~EventLoggerProvider() = default;
virtual nostd::shared_ptr<EventLogger> CreateEventLogger(
nostd::shared_ptr<Logger> delegate_logger,
nostd::string_view event_domain) noexcept = 0;
};
#endif
} // namespace logs
OPENTELEMETRY_END_NAMESPACE