AWS SDK for C++

AWS SDK for C++ Version 1.11.609

Loading...
Searching...
No Matches
ConverseStreamMetadataEvent.h
1
6#pragma once
7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/bedrock-runtime/model/TokenUsage.h>
9#include <aws/bedrock-runtime/model/ConverseStreamMetrics.h>
10#include <aws/bedrock-runtime/model/ConverseStreamTrace.h>
11#include <aws/bedrock-runtime/model/PerformanceConfiguration.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace BedrockRuntime
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_BEDROCKRUNTIME_API ConverseStreamMetadataEvent() = default;
40 AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const TokenUsage& GetUsage() const { return m_usage; }
48 inline bool UsageHasBeenSet() const { return m_usageHasBeenSet; }
49 template<typename UsageT = TokenUsage>
50 void SetUsage(UsageT&& value) { m_usageHasBeenSet = true; m_usage = std::forward<UsageT>(value); }
51 template<typename UsageT = TokenUsage>
52 ConverseStreamMetadataEvent& WithUsage(UsageT&& value) { SetUsage(std::forward<UsageT>(value)); return *this;}
54
56
59 inline const ConverseStreamMetrics& GetMetrics() const { return m_metrics; }
60 inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
61 template<typename MetricsT = ConverseStreamMetrics>
62 void SetMetrics(MetricsT&& value) { m_metricsHasBeenSet = true; m_metrics = std::forward<MetricsT>(value); }
63 template<typename MetricsT = ConverseStreamMetrics>
64 ConverseStreamMetadataEvent& WithMetrics(MetricsT&& value) { SetMetrics(std::forward<MetricsT>(value)); return *this;}
66
68
73 inline const ConverseStreamTrace& GetTrace() const { return m_trace; }
74 inline bool TraceHasBeenSet() const { return m_traceHasBeenSet; }
75 template<typename TraceT = ConverseStreamTrace>
76 void SetTrace(TraceT&& value) { m_traceHasBeenSet = true; m_trace = std::forward<TraceT>(value); }
77 template<typename TraceT = ConverseStreamTrace>
78 ConverseStreamMetadataEvent& WithTrace(TraceT&& value) { SetTrace(std::forward<TraceT>(value)); return *this;}
80
82
86 inline const PerformanceConfiguration& GetPerformanceConfig() const { return m_performanceConfig; }
87 inline bool PerformanceConfigHasBeenSet() const { return m_performanceConfigHasBeenSet; }
88 template<typename PerformanceConfigT = PerformanceConfiguration>
89 void SetPerformanceConfig(PerformanceConfigT&& value) { m_performanceConfigHasBeenSet = true; m_performanceConfig = std::forward<PerformanceConfigT>(value); }
90 template<typename PerformanceConfigT = PerformanceConfiguration>
91 ConverseStreamMetadataEvent& WithPerformanceConfig(PerformanceConfigT&& value) { SetPerformanceConfig(std::forward<PerformanceConfigT>(value)); return *this;}
93 private:
94
95 TokenUsage m_usage;
96 bool m_usageHasBeenSet = false;
97
98 ConverseStreamMetrics m_metrics;
99 bool m_metricsHasBeenSet = false;
100
101 ConverseStreamTrace m_trace;
102 bool m_traceHasBeenSet = false;
103
104 PerformanceConfiguration m_performanceConfig;
105 bool m_performanceConfigHasBeenSet = false;
106 };
107
108} // namespace Model
109} // namespace BedrockRuntime
110} // namespace Aws
ConverseStreamMetadataEvent & WithPerformanceConfig(PerformanceConfigT &&value)
ConverseStreamMetadataEvent & WithUsage(UsageT &&value)
AWS_BEDROCKRUNTIME_API ConverseStreamMetadataEvent & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKRUNTIME_API ConverseStreamMetadataEvent(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKRUNTIME_API ConverseStreamMetadataEvent()=default
AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const
ConverseStreamMetadataEvent & WithTrace(TraceT &&value)
ConverseStreamMetadataEvent & WithMetrics(MetricsT &&value)
Aws::Utils::Json::JsonValue JsonValue