AWS SDK for C++

AWS SDK for C++ Version 1.11.610

Loading...
Searching...
No Matches
ToolConfiguration.h
1
6#pragma once
7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/bedrock-runtime/model/ToolChoice.h>
10#include <aws/bedrock-runtime/model/Tool.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace BedrockRuntime
24{
25namespace Model
26{
27
38 {
39 public:
40 AWS_BEDROCKRUNTIME_API ToolConfiguration() = default;
41 AWS_BEDROCKRUNTIME_API ToolConfiguration(Aws::Utils::Json::JsonView jsonValue);
42 AWS_BEDROCKRUNTIME_API ToolConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
50 inline const Aws::Vector<Tool>& GetTools() const { return m_tools; }
51 inline bool ToolsHasBeenSet() const { return m_toolsHasBeenSet; }
52 template<typename ToolsT = Aws::Vector<Tool>>
53 void SetTools(ToolsT&& value) { m_toolsHasBeenSet = true; m_tools = std::forward<ToolsT>(value); }
54 template<typename ToolsT = Aws::Vector<Tool>>
55 ToolConfiguration& WithTools(ToolsT&& value) { SetTools(std::forward<ToolsT>(value)); return *this;}
56 template<typename ToolsT = Tool>
57 ToolConfiguration& AddTools(ToolsT&& value) { m_toolsHasBeenSet = true; m_tools.emplace_back(std::forward<ToolsT>(value)); return *this; }
59
61
64 inline const ToolChoice& GetToolChoice() const { return m_toolChoice; }
65 inline bool ToolChoiceHasBeenSet() const { return m_toolChoiceHasBeenSet; }
66 template<typename ToolChoiceT = ToolChoice>
67 void SetToolChoice(ToolChoiceT&& value) { m_toolChoiceHasBeenSet = true; m_toolChoice = std::forward<ToolChoiceT>(value); }
68 template<typename ToolChoiceT = ToolChoice>
69 ToolConfiguration& WithToolChoice(ToolChoiceT&& value) { SetToolChoice(std::forward<ToolChoiceT>(value)); return *this;}
71 private:
72
73 Aws::Vector<Tool> m_tools;
74 bool m_toolsHasBeenSet = false;
75
76 ToolChoice m_toolChoice;
77 bool m_toolChoiceHasBeenSet = false;
78 };
79
80} // namespace Model
81} // namespace BedrockRuntime
82} // namespace Aws
ToolConfiguration & WithToolChoice(ToolChoiceT &&value)
AWS_BEDROCKRUNTIME_API ToolConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKRUNTIME_API ToolConfiguration()=default
ToolConfiguration & AddTools(ToolsT &&value)
AWS_BEDROCKRUNTIME_API ToolConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
ToolConfiguration & WithTools(ToolsT &&value)
AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Tool > & GetTools() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue