AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
HierarchicalChunkingConfiguration.h
1
6#pragma once
7#include <aws/qconnect/QConnect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/qconnect/model/HierarchicalChunkingLevelConfiguration.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace QConnect
23{
24namespace Model
25{
26
36 {
37 public:
38 AWS_QCONNECT_API HierarchicalChunkingConfiguration() = default;
41 AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::Vector<HierarchicalChunkingLevelConfiguration>& GetLevelConfigurations() const { return m_levelConfigurations; }
49 inline bool LevelConfigurationsHasBeenSet() const { return m_levelConfigurationsHasBeenSet; }
50 template<typename LevelConfigurationsT = Aws::Vector<HierarchicalChunkingLevelConfiguration>>
51 void SetLevelConfigurations(LevelConfigurationsT&& value) { m_levelConfigurationsHasBeenSet = true; m_levelConfigurations = std::forward<LevelConfigurationsT>(value); }
52 template<typename LevelConfigurationsT = Aws::Vector<HierarchicalChunkingLevelConfiguration>>
53 HierarchicalChunkingConfiguration& WithLevelConfigurations(LevelConfigurationsT&& value) { SetLevelConfigurations(std::forward<LevelConfigurationsT>(value)); return *this;}
54 template<typename LevelConfigurationsT = HierarchicalChunkingLevelConfiguration>
55 HierarchicalChunkingConfiguration& AddLevelConfigurations(LevelConfigurationsT&& value) { m_levelConfigurationsHasBeenSet = true; m_levelConfigurations.emplace_back(std::forward<LevelConfigurationsT>(value)); return *this; }
57
59
62 inline int GetOverlapTokens() const { return m_overlapTokens; }
63 inline bool OverlapTokensHasBeenSet() const { return m_overlapTokensHasBeenSet; }
64 inline void SetOverlapTokens(int value) { m_overlapTokensHasBeenSet = true; m_overlapTokens = value; }
65 inline HierarchicalChunkingConfiguration& WithOverlapTokens(int value) { SetOverlapTokens(value); return *this;}
67 private:
68
70 bool m_levelConfigurationsHasBeenSet = false;
71
72 int m_overlapTokens{0};
73 bool m_overlapTokensHasBeenSet = false;
74 };
75
76} // namespace Model
77} // namespace QConnect
78} // namespace Aws
const Aws::Vector< HierarchicalChunkingLevelConfiguration > & GetLevelConfigurations() const
AWS_QCONNECT_API HierarchicalChunkingConfiguration(Aws::Utils::Json::JsonView jsonValue)
HierarchicalChunkingConfiguration & AddLevelConfigurations(LevelConfigurationsT &&value)
AWS_QCONNECT_API HierarchicalChunkingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_QCONNECT_API HierarchicalChunkingConfiguration()=default
HierarchicalChunkingConfiguration & WithOverlapTokens(int value)
HierarchicalChunkingConfiguration & WithLevelConfigurations(LevelConfigurationsT &&value)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue