]> git.proxmox.com Git - ceph.git/blame - ceph/src/jaegertracing/opentelemetry-cpp/api/include/opentelemetry/metrics/meter_provider.h
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / api / include / opentelemetry / metrics / meter_provider.h
CommitLineData
1e59de90
TL
1// Copyright The OpenTelemetry Authors
2// SPDX-License-Identifier: Apache-2.0
3
4#pragma once
5#ifndef ENABLE_METRICS_PREVIEW
6
7# include "opentelemetry/metrics/meter.h"
8# include "opentelemetry/nostd/shared_ptr.h"
9# include "opentelemetry/nostd/string_view.h"
10
11OPENTELEMETRY_BEGIN_NAMESPACE
12namespace metrics
13{
14/**
15 * Creates new Meter instances.
16 */
17class MeterProvider
18{
19public:
20 virtual ~MeterProvider() = default;
21 /**
22 * Gets or creates a named Meter instance.
23 *
24 * Optionally a version can be passed to create a named and versioned Meter
25 * instance.
26 */
27 virtual nostd::shared_ptr<Meter> GetMeter(nostd::string_view library_name,
28 nostd::string_view library_version = "",
29 nostd::string_view schema_url = "") noexcept = 0;
30};
31} // namespace metrics
32OPENTELEMETRY_END_NAMESPACE
33#endif