NVIDIA DeepStream SDK API Reference
9.2 Release
includes/opentelemetry/sdk/metrics/view/predicate_factory.h
Go to the documentation of this file.
1
// Copyright The OpenTelemetry Authors
2
// SPDX-License-Identifier: Apache-2.0
3
4
#pragma once
5
6
#include <memory>
7
8
#include "opentelemetry/nostd/string_view.h"
9
#include "opentelemetry/sdk/metrics/view/predicate.h"
10
#include "opentelemetry/version.h"
11
12
OPENTELEMETRY_BEGIN_NAMESPACE
13
namespace
sdk
14
{
15
namespace
metrics
16
{
17
18
enum class
PredicateType
: uint8_t
19
{
20
kPattern
,
21
kExact
22
};
23
24
class
PredicateFactory
25
{
26
public
:
27
static
std::unique_ptr<Predicate>
GetPredicate
(
opentelemetry::nostd::string_view
pattern,
28
PredicateType
type)
29
{
30
if
((type ==
PredicateType::kPattern
&& pattern ==
"*"
) ||
31
(type ==
PredicateType::kExact
&& pattern ==
""
))
32
{
33
return
std::unique_ptr<Predicate>(
new
MatchEverythingPattern
());
34
}
35
if
(type ==
PredicateType::kPattern
)
36
{
37
return
std::unique_ptr<Predicate>(
new
PatternPredicate
(pattern));
38
}
39
if
(type ==
PredicateType::kExact
)
40
{
41
return
std::unique_ptr<Predicate>(
new
ExactPredicate
(pattern));
42
}
43
return
std::unique_ptr<Predicate>(
new
MatchNothingPattern
());
44
}
45
};
46
}
// namespace metrics
47
}
// namespace sdk
48
OPENTELEMETRY_END_NAMESPACE
sdk::metrics::PatternPredicate
Definition:
includes/opentelemetry/sdk/metrics/view/predicate.h:27
OPENTELEMETRY_BEGIN_NAMESPACE
#define OPENTELEMETRY_BEGIN_NAMESPACE
Definition:
includes/opentelemetry/version.h:21
sdk::metrics::MatchEverythingPattern
Definition:
includes/opentelemetry/sdk/metrics/view/predicate.h:68
sdk::metrics::PredicateFactory
Definition:
includes/opentelemetry/sdk/metrics/view/predicate_factory.h:24
OPENTELEMETRY_END_NAMESPACE
#define OPENTELEMETRY_END_NAMESPACE
Definition:
includes/opentelemetry/version.h:24
sdk::metrics::ExactPredicate
Definition:
includes/opentelemetry/sdk/metrics/view/predicate.h:51
sdk::metrics::PredicateType
PredicateType
Definition:
includes/opentelemetry/sdk/metrics/view/predicate_factory.h:18
sdk::metrics::MatchNothingPattern
Definition:
includes/opentelemetry/sdk/metrics/view/predicate.h:73
sdk::metrics::PredicateFactory::GetPredicate
static std::unique_ptr< Predicate > GetPredicate(opentelemetry::nostd::string_view pattern, PredicateType type)
Definition:
includes/opentelemetry/sdk/metrics/view/predicate_factory.h:27
sdk
Definition:
includes/opentelemetry/sdk/common/atomic_shared_ptr.h:13
metrics
Definition:
includes/opentelemetry/metrics/async_instruments.h:10
sdk::metrics::PredicateType::kExact
@ kExact
sdk::metrics::PredicateType::kPattern
@ kPattern
nostd::string_view
std::string_view string_view
Definition:
includes/opentelemetry/std/string_view.h:18
Privacy Policy
|
Your Privacy Choices
|
Terms of Service
|
Accessibility
|
Corporate Policies
|
Product Security
|
Contact
© 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
NVIDIA Confidential | Subject to Change | For test and development only.
Wed Oct 28 2026 12:02:34 | PR-09318-R32