/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SagemakerEdgeManager { namespace Model { /** *

Information about a model deployed on an edge device that is registered with * SageMaker Edge Manager.

See Also:

AWS * API Reference

*/ class Model { public: AWS_SAGEMAKEREDGEMANAGER_API Model(); AWS_SAGEMAKEREDGEMANAGER_API Model(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKEREDGEMANAGER_API Model& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKEREDGEMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name of the model.

*/ inline const Aws::String& GetModelName() const{ return m_modelName; } /** *

The name of the model.

*/ inline bool ModelNameHasBeenSet() const { return m_modelNameHasBeenSet; } /** *

The name of the model.

*/ inline void SetModelName(const Aws::String& value) { m_modelNameHasBeenSet = true; m_modelName = value; } /** *

The name of the model.

*/ inline void SetModelName(Aws::String&& value) { m_modelNameHasBeenSet = true; m_modelName = std::move(value); } /** *

The name of the model.

*/ inline void SetModelName(const char* value) { m_modelNameHasBeenSet = true; m_modelName.assign(value); } /** *

The name of the model.

*/ inline Model& WithModelName(const Aws::String& value) { SetModelName(value); return *this;} /** *

The name of the model.

*/ inline Model& WithModelName(Aws::String&& value) { SetModelName(std::move(value)); return *this;} /** *

The name of the model.

*/ inline Model& WithModelName(const char* value) { SetModelName(value); return *this;} /** *

The version of the model.

*/ inline const Aws::String& GetModelVersion() const{ return m_modelVersion; } /** *

The version of the model.

*/ inline bool ModelVersionHasBeenSet() const { return m_modelVersionHasBeenSet; } /** *

The version of the model.

*/ inline void SetModelVersion(const Aws::String& value) { m_modelVersionHasBeenSet = true; m_modelVersion = value; } /** *

The version of the model.

*/ inline void SetModelVersion(Aws::String&& value) { m_modelVersionHasBeenSet = true; m_modelVersion = std::move(value); } /** *

The version of the model.

*/ inline void SetModelVersion(const char* value) { m_modelVersionHasBeenSet = true; m_modelVersion.assign(value); } /** *

The version of the model.

*/ inline Model& WithModelVersion(const Aws::String& value) { SetModelVersion(value); return *this;} /** *

The version of the model.

*/ inline Model& WithModelVersion(Aws::String&& value) { SetModelVersion(std::move(value)); return *this;} /** *

The version of the model.

*/ inline Model& WithModelVersion(const char* value) { SetModelVersion(value); return *this;} /** *

The timestamp of the last data sample taken.

*/ inline const Aws::Utils::DateTime& GetLatestSampleTime() const{ return m_latestSampleTime; } /** *

The timestamp of the last data sample taken.

*/ inline bool LatestSampleTimeHasBeenSet() const { return m_latestSampleTimeHasBeenSet; } /** *

The timestamp of the last data sample taken.

*/ inline void SetLatestSampleTime(const Aws::Utils::DateTime& value) { m_latestSampleTimeHasBeenSet = true; m_latestSampleTime = value; } /** *

The timestamp of the last data sample taken.

*/ inline void SetLatestSampleTime(Aws::Utils::DateTime&& value) { m_latestSampleTimeHasBeenSet = true; m_latestSampleTime = std::move(value); } /** *

The timestamp of the last data sample taken.

*/ inline Model& WithLatestSampleTime(const Aws::Utils::DateTime& value) { SetLatestSampleTime(value); return *this;} /** *

The timestamp of the last data sample taken.

*/ inline Model& WithLatestSampleTime(Aws::Utils::DateTime&& value) { SetLatestSampleTime(std::move(value)); return *this;} /** *

The timestamp of the last inference that was made.

*/ inline const Aws::Utils::DateTime& GetLatestInference() const{ return m_latestInference; } /** *

The timestamp of the last inference that was made.

*/ inline bool LatestInferenceHasBeenSet() const { return m_latestInferenceHasBeenSet; } /** *

The timestamp of the last inference that was made.

*/ inline void SetLatestInference(const Aws::Utils::DateTime& value) { m_latestInferenceHasBeenSet = true; m_latestInference = value; } /** *

The timestamp of the last inference that was made.

*/ inline void SetLatestInference(Aws::Utils::DateTime&& value) { m_latestInferenceHasBeenSet = true; m_latestInference = std::move(value); } /** *

The timestamp of the last inference that was made.

*/ inline Model& WithLatestInference(const Aws::Utils::DateTime& value) { SetLatestInference(value); return *this;} /** *

The timestamp of the last inference that was made.

*/ inline Model& WithLatestInference(Aws::Utils::DateTime&& value) { SetLatestInference(std::move(value)); return *this;} /** *

Information required for model metrics.

*/ inline const Aws::Vector& GetModelMetrics() const{ return m_modelMetrics; } /** *

Information required for model metrics.

*/ inline bool ModelMetricsHasBeenSet() const { return m_modelMetricsHasBeenSet; } /** *

Information required for model metrics.

*/ inline void SetModelMetrics(const Aws::Vector& value) { m_modelMetricsHasBeenSet = true; m_modelMetrics = value; } /** *

Information required for model metrics.

*/ inline void SetModelMetrics(Aws::Vector&& value) { m_modelMetricsHasBeenSet = true; m_modelMetrics = std::move(value); } /** *

Information required for model metrics.

*/ inline Model& WithModelMetrics(const Aws::Vector& value) { SetModelMetrics(value); return *this;} /** *

Information required for model metrics.

*/ inline Model& WithModelMetrics(Aws::Vector&& value) { SetModelMetrics(std::move(value)); return *this;} /** *

Information required for model metrics.

*/ inline Model& AddModelMetrics(const EdgeMetric& value) { m_modelMetricsHasBeenSet = true; m_modelMetrics.push_back(value); return *this; } /** *

Information required for model metrics.

*/ inline Model& AddModelMetrics(EdgeMetric&& value) { m_modelMetricsHasBeenSet = true; m_modelMetrics.push_back(std::move(value)); return *this; } private: Aws::String m_modelName; bool m_modelNameHasBeenSet = false; Aws::String m_modelVersion; bool m_modelVersionHasBeenSet = false; Aws::Utils::DateTime m_latestSampleTime; bool m_latestSampleTimeHasBeenSet = false; Aws::Utils::DateTime m_latestInference; bool m_latestInferenceHasBeenSet = false; Aws::Vector m_modelMetrics; bool m_modelMetricsHasBeenSet = false; }; } // namespace Model } // namespace SagemakerEdgeManager } // namespace Aws