NVIDIA DeepStream SDK API Reference

8.0 Release
sources/includes/prometheus/detail/builder.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 
5 #include "prometheus/labels.h"
6 
7 // IWYU pragma: private
8 // IWYU pragma: no_include "prometheus/family.h"
9 
10 namespace prometheus {
11 
12 template <typename T>
13 class Family; // IWYU pragma: keep
14 class Registry; // IWYU pragma: keep
15 
16 namespace detail {
17 
18 template <typename T>
19 class Builder {
20  public:
21  Builder& Labels(const ::prometheus::Labels& labels);
22  Builder& Name(const std::string&);
23  Builder& Help(const std::string&);
24  Family<T>& Register(Registry&);
25 
26  private:
27  ::prometheus::Labels labels_;
28  std::string name_;
29  std::string help_;
30 };
31 
32 } // namespace detail
33 } // namespace prometheus
prometheus::Labels
std::map< std::string, std::string > Labels
Multiple labels and their value.
Definition: sources/includes/prometheus/labels.h:9
prometheus::detail::Builder::Register
Family< T > & Register(Registry &)
prometheus::detail::Builder::Labels
Builder & Labels(const ::prometheus::Labels &labels)
prometheus::detail::Builder::Help
Builder & Help(const std::string &)
prometheus::detail::Builder::Name
Builder & Name(const std::string &)
prometheus
Definition: sources/includes/prometheus/check_names.h:8