NVIDIA DeepStream SDK API Reference

9.2 Release
includes/opentelemetry/sdk/trace/exporter.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 <chrono>
7 #include <memory>
8 
9 #include "opentelemetry/nostd/span.h"
10 #include "opentelemetry/sdk/common/exporter_utils.h"
11 #include "opentelemetry/sdk/trace/recordable.h"
12 #include "opentelemetry/version.h"
13 
15 namespace sdk
16 {
17 namespace trace
18 {
19 
25 {
26 public:
27  SpanExporter();
28  virtual ~SpanExporter();
29 
39  virtual std::unique_ptr<Recordable> MakeRecordable() noexcept = 0;
40 
46  virtual sdk::common::ExportResult Export(
47  const nostd::span<std::unique_ptr<Recordable>> &spans) noexcept = 0;
48 
55  virtual bool ForceFlush(
56  std::chrono::microseconds timeout = (std::chrono::microseconds::max)()) noexcept = 0;
57 
63  virtual bool Shutdown(
64  std::chrono::microseconds timeout = (std::chrono::microseconds::max)()) noexcept = 0;
65 };
66 } // namespace trace
67 } // namespace sdk
sdk::common::ExportResult
ExportResult
ExportResult is returned as result of exporting a batch of Records.
Definition: includes/opentelemetry/sdk/common/exporter_utils.h:16
trace
Definition: includes/opentelemetry/context/context_value.h:18
OPENTELEMETRY_EXPORT
#define OPENTELEMETRY_EXPORT
Definition: includes/opentelemetry/common/macros.h:386
OPENTELEMETRY_BEGIN_NAMESPACE
#define OPENTELEMETRY_BEGIN_NAMESPACE
Definition: includes/opentelemetry/version.h:21
nostd::span
Back port of std::span.
Definition: includes/opentelemetry/nostd/span.h:51
max
int max(int a, int b)
Compute the component-wise maximum.
Definition: sources/libs/nvmultiobjecttracker/include/modules/cuDCFv2/helper_math.h:60
OPENTELEMETRY_END_NAMESPACE
#define OPENTELEMETRY_END_NAMESPACE
Definition: includes/opentelemetry/version.h:24
sdk
Definition: includes/opentelemetry/sdk/common/atomic_shared_ptr.h:13
sdk::trace::SpanExporter
SpanExporter defines the interface that protocol-specific span exporters must implement.
Definition: includes/opentelemetry/sdk/trace/exporter.h:24