AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
ConverseStreamMetadataEvent.h
1
6#pragma once
7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/bedrock-runtime/model/ConverseStreamMetrics.h>
9#include <aws/bedrock-runtime/model/ConverseStreamTrace.h>
10#include <aws/bedrock-runtime/model/PerformanceConfiguration.h>
11#include <aws/bedrock-runtime/model/ServiceTier.h>
12#include <aws/bedrock-runtime/model/TokenUsage.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace BedrockRuntime {
24namespace Model {
25
32 public:
33 AWS_BEDROCKRUNTIME_API ConverseStreamMetadataEvent() = default;
36 AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const TokenUsage& GetUsage() const { return m_usage; }
43 inline bool UsageHasBeenSet() const { return m_usageHasBeenSet; }
44 template <typename UsageT = TokenUsage>
45 void SetUsage(UsageT&& value) {
46 m_usageHasBeenSet = true;
47 m_usage = std::forward<UsageT>(value);
48 }
49 template <typename UsageT = TokenUsage>
51 SetUsage(std::forward<UsageT>(value));
52 return *this;
53 }
55
57
60 inline const ConverseStreamMetrics& GetMetrics() const { return m_metrics; }
61 inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; }
62 template <typename MetricsT = ConverseStreamMetrics>
63 void SetMetrics(MetricsT&& value) {
64 m_metricsHasBeenSet = true;
65 m_metrics = std::forward<MetricsT>(value);
66 }
67 template <typename MetricsT = ConverseStreamMetrics>
69 SetMetrics(std::forward<MetricsT>(value));
70 return *this;
71 }
73
75
80 inline const ConverseStreamTrace& GetTrace() const { return m_trace; }
81 inline bool TraceHasBeenSet() const { return m_traceHasBeenSet; }
82 template <typename TraceT = ConverseStreamTrace>
83 void SetTrace(TraceT&& value) {
84 m_traceHasBeenSet = true;
85 m_trace = std::forward<TraceT>(value);
86 }
87 template <typename TraceT = ConverseStreamTrace>
89 SetTrace(std::forward<TraceT>(value));
90 return *this;
91 }
93
95
99 inline const PerformanceConfiguration& GetPerformanceConfig() const { return m_performanceConfig; }
100 inline bool PerformanceConfigHasBeenSet() const { return m_performanceConfigHasBeenSet; }
101 template <typename PerformanceConfigT = PerformanceConfiguration>
103 m_performanceConfigHasBeenSet = true;
104 m_performanceConfig = std::forward<PerformanceConfigT>(value);
105 }
106 template <typename PerformanceConfigT = PerformanceConfiguration>
108 SetPerformanceConfig(std::forward<PerformanceConfigT>(value));
109 return *this;
110 }
112
114
117 inline const ServiceTier& GetServiceTier() const { return m_serviceTier; }
118 inline bool ServiceTierHasBeenSet() const { return m_serviceTierHasBeenSet; }
119 template <typename ServiceTierT = ServiceTier>
121 m_serviceTierHasBeenSet = true;
122 m_serviceTier = std::forward<ServiceTierT>(value);
123 }
124 template <typename ServiceTierT = ServiceTier>
126 SetServiceTier(std::forward<ServiceTierT>(value));
127 return *this;
128 }
130 private:
131 TokenUsage m_usage;
132
133 ConverseStreamMetrics m_metrics;
134
135 ConverseStreamTrace m_trace;
136
137 PerformanceConfiguration m_performanceConfig;
138
139 ServiceTier m_serviceTier;
140 bool m_usageHasBeenSet = false;
141 bool m_metricsHasBeenSet = false;
142 bool m_traceHasBeenSet = false;
143 bool m_performanceConfigHasBeenSet = false;
144 bool m_serviceTierHasBeenSet = false;
145};
146
147} // namespace Model
148} // namespace BedrockRuntime
149} // namespace Aws
ConverseStreamMetadataEvent & WithPerformanceConfig(PerformanceConfigT &&value)
ConverseStreamMetadataEvent & WithUsage(UsageT &&value)
AWS_BEDROCKRUNTIME_API ConverseStreamMetadataEvent & operator=(Aws::Utils::Json::JsonView jsonValue)
ConverseStreamMetadataEvent & WithServiceTier(ServiceTierT &&value)
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)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
Aws::Utils::Json::JsonValue JsonValue