7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dynamodb/DynamoDB_EXPORTS.h>
10#include <aws/dynamodb/model/Projection.h>
11#include <aws/dynamodb/model/SearchSchemaElement.h>
12#include <aws/dynamodb/model/VectorAttributeDefinition.h>
13#include <aws/dynamodb/model/VectorDistanceFunction.h>
46 template <
typename IndexNameT = Aws::String>
48 m_indexNameHasBeenSet =
true;
49 m_indexName = std::forward<IndexNameT>(value);
51 template <
typename IndexNameT = Aws::String>
64 template <
typename VectorAttributeT = VectorAttributeDefinition>
66 m_vectorAttributeHasBeenSet =
true;
67 m_vectorAttribute = std::forward<VectorAttributeT>(value);
69 template <
typename VectorAttributeT = VectorAttributeDefinition>
83 template <
typename SearchSchemaT = Aws::Vector<SearchSchemaElement>>
85 m_searchSchemaHasBeenSet =
true;
86 m_searchSchema = std::forward<SearchSchemaT>(value);
88 template <
typename SearchSchemaT = Aws::Vector<SearchSchemaElement>>
93 template <
typename SearchSchemaT = SearchSchemaElement>
95 m_searchSchemaHasBeenSet =
true;
96 m_searchSchema.emplace_back(std::forward<SearchSchemaT>(value));
108 template <
typename ProjectionT = Projection>
110 m_projectionHasBeenSet =
true;
111 m_projection = std::forward<ProjectionT>(value);
113 template <
typename ProjectionT = Projection>
127 m_dimensionsHasBeenSet =
true;
128 m_dimensions = value;
143 m_distanceFunctionHasBeenSet =
true;
144 m_distanceFunction = value;
160 long long m_dimensions{0};
163 bool m_indexNameHasBeenSet =
false;
164 bool m_vectorAttributeHasBeenSet =
false;
165 bool m_searchSchemaHasBeenSet =
false;
166 bool m_projectionHasBeenSet =
false;
167 bool m_dimensionsHasBeenSet =
false;
168 bool m_distanceFunctionHasBeenSet =
false;
const VectorAttributeDefinition & GetVectorAttribute() const
AWS_DYNAMODB_API VectorIndexInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ProjectionHasBeenSet() const
bool SearchSchemaHasBeenSet() const
const Aws::Vector< SearchSchemaElement > & GetSearchSchema() const
VectorIndexInfo & WithDistanceFunction(VectorDistanceFunction value)
AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSearchSchema(SearchSchemaT &&value)
long long GetDimensions() const
bool DimensionsHasBeenSet() const
VectorIndexInfo & WithIndexName(IndexNameT &&value)
VectorIndexInfo & WithVectorAttribute(VectorAttributeT &&value)
VectorIndexInfo & WithProjection(ProjectionT &&value)
void SetProjection(ProjectionT &&value)
VectorIndexInfo & AddSearchSchema(SearchSchemaT &&value)
AWS_DYNAMODB_API VectorIndexInfo(Aws::Utils::Json::JsonView jsonValue)
void SetVectorAttribute(VectorAttributeT &&value)
void SetDimensions(long long value)
VectorDistanceFunction GetDistanceFunction() const
VectorIndexInfo & WithSearchSchema(SearchSchemaT &&value)
void SetIndexName(IndexNameT &&value)
void SetDistanceFunction(VectorDistanceFunction value)
bool DistanceFunctionHasBeenSet() const
const Aws::String & GetIndexName() const
const Projection & GetProjection() const
AWS_DYNAMODB_API VectorIndexInfo()=default
VectorIndexInfo & WithDimensions(long long value)
bool VectorAttributeHasBeenSet() const
bool IndexNameHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue