AWS SDK for C++

AWS SDK for C++ Version 1.11.750

Loading...
Searching...
No Matches
GuardrailInvocationMetrics.h
1
6#pragma once
7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/bedrock-runtime/model/GuardrailCoverage.h>
9#include <aws/bedrock-runtime/model/GuardrailUsage.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace BedrockRuntime {
21namespace Model {
22
29 public:
30 AWS_BEDROCKRUNTIME_API GuardrailInvocationMetrics() = default;
33 AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline long long GetGuardrailProcessingLatency() const { return m_guardrailProcessingLatency; }
40 inline bool GuardrailProcessingLatencyHasBeenSet() const { return m_guardrailProcessingLatencyHasBeenSet; }
41 inline void SetGuardrailProcessingLatency(long long value) {
42 m_guardrailProcessingLatencyHasBeenSet = true;
43 m_guardrailProcessingLatency = value;
44 }
47 return *this;
48 }
50
52
55 inline const GuardrailUsage& GetUsage() const { return m_usage; }
56 inline bool UsageHasBeenSet() const { return m_usageHasBeenSet; }
57 template <typename UsageT = GuardrailUsage>
58 void SetUsage(UsageT&& value) {
59 m_usageHasBeenSet = true;
60 m_usage = std::forward<UsageT>(value);
61 }
62 template <typename UsageT = GuardrailUsage>
64 SetUsage(std::forward<UsageT>(value));
65 return *this;
66 }
68
70
73 inline const GuardrailCoverage& GetGuardrailCoverage() const { return m_guardrailCoverage; }
74 inline bool GuardrailCoverageHasBeenSet() const { return m_guardrailCoverageHasBeenSet; }
75 template <typename GuardrailCoverageT = GuardrailCoverage>
77 m_guardrailCoverageHasBeenSet = true;
78 m_guardrailCoverage = std::forward<GuardrailCoverageT>(value);
79 }
80 template <typename GuardrailCoverageT = GuardrailCoverage>
82 SetGuardrailCoverage(std::forward<GuardrailCoverageT>(value));
83 return *this;
84 }
86 private:
87 long long m_guardrailProcessingLatency{0};
88
89 GuardrailUsage m_usage;
90
91 GuardrailCoverage m_guardrailCoverage;
92 bool m_guardrailProcessingLatencyHasBeenSet = false;
93 bool m_usageHasBeenSet = false;
94 bool m_guardrailCoverageHasBeenSet = false;
95};
96
97} // namespace Model
98} // namespace BedrockRuntime
99} // namespace Aws
GuardrailInvocationMetrics & WithGuardrailProcessingLatency(long long value)
GuardrailInvocationMetrics & WithGuardrailCoverage(GuardrailCoverageT &&value)
AWS_BEDROCKRUNTIME_API GuardrailInvocationMetrics & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKRUNTIME_API GuardrailInvocationMetrics()=default
GuardrailInvocationMetrics & WithUsage(UsageT &&value)
AWS_BEDROCKRUNTIME_API GuardrailInvocationMetrics(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
Aws::Utils::Json::JsonValue JsonValue