/**
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * SPDX-License-Identifier: Apache-2.0.
 */
#pragma once
#include  Represents the output of a GetEvaluation operation and describes
   * an Evaluation.See Also:
   AWS
   * API Reference
The evaluation ID which is same as the EvaluationId in the
     * request.
The evaluation ID which is same as the EvaluationId in the
     * request.
The evaluation ID which is same as the EvaluationId in the
     * request.
The evaluation ID which is same as the EvaluationId in the
     * request.
The evaluation ID which is same as the EvaluationId in the
     * request.
The evaluation ID which is same as the EvaluationId in the
     * request.
The evaluation ID which is same as the EvaluationId in the
     * request.
The ID of the MLModel that was the focus of the evaluation.
The ID of the MLModel that was the focus of the evaluation.
The ID of the MLModel that was the focus of the evaluation.
The ID of the MLModel that was the focus of the evaluation.
The ID of the MLModel that was the focus of the evaluation.
The ID of the MLModel that was the focus of the evaluation.
The ID of the MLModel that was the focus of the evaluation.
The DataSource used for this evaluation.
The DataSource used for this evaluation.
The DataSource used for this evaluation.
The DataSource used for this evaluation.
The DataSource used for this evaluation.
The DataSource used for this evaluation.
The DataSource used for this evaluation.
The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline const Aws::String& GetInputDataLocationS3() const{ return m_inputDataLocationS3; } /** *The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline void SetInputDataLocationS3(const Aws::String& value) { m_inputDataLocationS3 = value; } /** *The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline void SetInputDataLocationS3(Aws::String&& value) { m_inputDataLocationS3 = std::move(value); } /** *The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline void SetInputDataLocationS3(const char* value) { m_inputDataLocationS3.assign(value); } /** *The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline GetEvaluationResult& WithInputDataLocationS3(const Aws::String& value) { SetInputDataLocationS3(value); return *this;} /** *The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline GetEvaluationResult& WithInputDataLocationS3(Aws::String&& value) { SetInputDataLocationS3(std::move(value)); return *this;} /** *The location of the data file or directory in Amazon Simple Storage Service * (Amazon S3).
*/ inline GetEvaluationResult& WithInputDataLocationS3(const char* value) { SetInputDataLocationS3(value); return *this;} /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline const Aws::String& GetCreatedByIamUser() const{ return m_createdByIamUser; } /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline void SetCreatedByIamUser(const Aws::String& value) { m_createdByIamUser = value; } /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline void SetCreatedByIamUser(Aws::String&& value) { m_createdByIamUser = std::move(value); } /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline void SetCreatedByIamUser(const char* value) { m_createdByIamUser.assign(value); } /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline GetEvaluationResult& WithCreatedByIamUser(const Aws::String& value) { SetCreatedByIamUser(value); return *this;} /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline GetEvaluationResult& WithCreatedByIamUser(Aws::String&& value) { SetCreatedByIamUser(std::move(value)); return *this;} /** *The AWS user account that invoked the evaluation. The account type can be * either an AWS root account or an AWS Identity and Access Management (IAM) user * account.
*/ inline GetEvaluationResult& WithCreatedByIamUser(const char* value) { SetCreatedByIamUser(value); return *this;} /** *The time that the Evaluation was created. The time is expressed
     * in epoch time.
The time that the Evaluation was created. The time is expressed
     * in epoch time.
The time that the Evaluation was created. The time is expressed
     * in epoch time.
The time that the Evaluation was created. The time is expressed
     * in epoch time.
The time that the Evaluation was created. The time is expressed
     * in epoch time.
The time of the most recent edit to the Evaluation. The time is
     * expressed in epoch time.
The time of the most recent edit to the Evaluation. The time is
     * expressed in epoch time.
The time of the most recent edit to the Evaluation. The time is
     * expressed in epoch time.
The time of the most recent edit to the Evaluation. The time is
     * expressed in epoch time.
The time of the most recent edit to the Evaluation. The time is
     * expressed in epoch time.
A user-supplied name or description of the Evaluation. 
A user-supplied name or description of the Evaluation. 
A user-supplied name or description of the Evaluation. 
A user-supplied name or description of the Evaluation. 
A user-supplied name or description of the Evaluation. 
A user-supplied name or description of the Evaluation. 
A user-supplied name or description of the Evaluation. 
The status of the evaluation. This element can have one of the following * values:
 PENDING - Amazon Machine Language (Amazon
     * ML) submitted a request to evaluate an MLModel.
     * INPROGRESS - The evaluation is underway.
     * FAILED - The request to evaluate an MLModel did not
     * run to completion. It is not usable.
 COMPLETED -
     * The evaluation process completed successfully.
     * DELETED - The Evaluation is marked as deleted. It is
     * not usable.
The status of the evaluation. This element can have one of the following * values:
 PENDING - Amazon Machine Language (Amazon
     * ML) submitted a request to evaluate an MLModel.
     * INPROGRESS - The evaluation is underway.
     * FAILED - The request to evaluate an MLModel did not
     * run to completion. It is not usable.
 COMPLETED -
     * The evaluation process completed successfully.
     * DELETED - The Evaluation is marked as deleted. It is
     * not usable.
The status of the evaluation. This element can have one of the following * values:
 PENDING - Amazon Machine Language (Amazon
     * ML) submitted a request to evaluate an MLModel.
     * INPROGRESS - The evaluation is underway.
     * FAILED - The request to evaluate an MLModel did not
     * run to completion. It is not usable.
 COMPLETED -
     * The evaluation process completed successfully.
     * DELETED - The Evaluation is marked as deleted. It is
     * not usable.
The status of the evaluation. This element can have one of the following * values:
 PENDING - Amazon Machine Language (Amazon
     * ML) submitted a request to evaluate an MLModel.
     * INPROGRESS - The evaluation is underway.
     * FAILED - The request to evaluate an MLModel did not
     * run to completion. It is not usable.
 COMPLETED -
     * The evaluation process completed successfully.
     * DELETED - The Evaluation is marked as deleted. It is
     * not usable.
The status of the evaluation. This element can have one of the following * values:
 PENDING - Amazon Machine Language (Amazon
     * ML) submitted a request to evaluate an MLModel.
     * INPROGRESS - The evaluation is underway.
     * FAILED - The request to evaluate an MLModel did not
     * run to completion. It is not usable.
 COMPLETED -
     * The evaluation process completed successfully.
     * DELETED - The Evaluation is marked as deleted. It is
     * not usable.
Measurements of how well the MLModel performed using
     * observations referenced by the DataSource. One of the following
     * metric is returned based on the type of the MLModel: 
BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC)
     * technique to measure performance. 
RegressionRMSE: A
     * regression MLModel uses the Root Mean Square Error (RMSE) technique
     * to measure performance. RMSE measures the difference between predicted and
     * actual values for a single variable.
MulticlassAvgFScore: A
     * multiclass MLModel uses the F1 score technique to measure
     * performance. 
For more information about performance * metrics, please see the Amazon Machine * Learning Developer Guide.
*/ inline const PerformanceMetrics& GetPerformanceMetrics() const{ return m_performanceMetrics; } /** *Measurements of how well the MLModel performed using
     * observations referenced by the DataSource. One of the following
     * metric is returned based on the type of the MLModel: 
BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC)
     * technique to measure performance. 
RegressionRMSE: A
     * regression MLModel uses the Root Mean Square Error (RMSE) technique
     * to measure performance. RMSE measures the difference between predicted and
     * actual values for a single variable.
MulticlassAvgFScore: A
     * multiclass MLModel uses the F1 score technique to measure
     * performance. 
For more information about performance * metrics, please see the Amazon Machine * Learning Developer Guide.
*/ inline void SetPerformanceMetrics(const PerformanceMetrics& value) { m_performanceMetrics = value; } /** *Measurements of how well the MLModel performed using
     * observations referenced by the DataSource. One of the following
     * metric is returned based on the type of the MLModel: 
BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC)
     * technique to measure performance. 
RegressionRMSE: A
     * regression MLModel uses the Root Mean Square Error (RMSE) technique
     * to measure performance. RMSE measures the difference between predicted and
     * actual values for a single variable.
MulticlassAvgFScore: A
     * multiclass MLModel uses the F1 score technique to measure
     * performance. 
For more information about performance * metrics, please see the Amazon Machine * Learning Developer Guide.
*/ inline void SetPerformanceMetrics(PerformanceMetrics&& value) { m_performanceMetrics = std::move(value); } /** *Measurements of how well the MLModel performed using
     * observations referenced by the DataSource. One of the following
     * metric is returned based on the type of the MLModel: 
BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC)
     * technique to measure performance. 
RegressionRMSE: A
     * regression MLModel uses the Root Mean Square Error (RMSE) technique
     * to measure performance. RMSE measures the difference between predicted and
     * actual values for a single variable.
MulticlassAvgFScore: A
     * multiclass MLModel uses the F1 score technique to measure
     * performance. 
For more information about performance * metrics, please see the Amazon Machine * Learning Developer Guide.
*/ inline GetEvaluationResult& WithPerformanceMetrics(const PerformanceMetrics& value) { SetPerformanceMetrics(value); return *this;} /** *Measurements of how well the MLModel performed using
     * observations referenced by the DataSource. One of the following
     * metric is returned based on the type of the MLModel: 
BinaryAUC: A binary MLModel uses the Area Under the Curve (AUC)
     * technique to measure performance. 
RegressionRMSE: A
     * regression MLModel uses the Root Mean Square Error (RMSE) technique
     * to measure performance. RMSE measures the difference between predicted and
     * actual values for a single variable.
MulticlassAvgFScore: A
     * multiclass MLModel uses the F1 score technique to measure
     * performance. 
For more information about performance * metrics, please see the Amazon Machine * Learning Developer Guide.
*/ inline GetEvaluationResult& WithPerformanceMetrics(PerformanceMetrics&& value) { SetPerformanceMetrics(std::move(value)); return *this;} /** *A link to the file that contains logs of the CreateEvaluation
     * operation.
A link to the file that contains logs of the CreateEvaluation
     * operation.
A link to the file that contains logs of the CreateEvaluation
     * operation.
A link to the file that contains logs of the CreateEvaluation
     * operation.
A link to the file that contains logs of the CreateEvaluation
     * operation.
A link to the file that contains logs of the CreateEvaluation
     * operation.
A link to the file that contains logs of the CreateEvaluation
     * operation.
A description of the most recent details about evaluating the
     * MLModel.
A description of the most recent details about evaluating the
     * MLModel.
A description of the most recent details about evaluating the
     * MLModel.
A description of the most recent details about evaluating the
     * MLModel.
A description of the most recent details about evaluating the
     * MLModel.
A description of the most recent details about evaluating the
     * MLModel.
A description of the most recent details about evaluating the
     * MLModel.
The approximate CPU time in milliseconds that Amazon Machine Learning spent
     * processing the Evaluation, normalized and scaled on computation
     * resources. ComputeTime is only available if the
     * Evaluation is in the COMPLETED state.
The approximate CPU time in milliseconds that Amazon Machine Learning spent
     * processing the Evaluation, normalized and scaled on computation
     * resources. ComputeTime is only available if the
     * Evaluation is in the COMPLETED state.
The approximate CPU time in milliseconds that Amazon Machine Learning spent
     * processing the Evaluation, normalized and scaled on computation
     * resources. ComputeTime is only available if the
     * Evaluation is in the COMPLETED state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as COMPLETED or FAILED.
     * FinishedAt is only available when the Evaluation is in
     * the COMPLETED or FAILED state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as COMPLETED or FAILED.
     * FinishedAt is only available when the Evaluation is in
     * the COMPLETED or FAILED state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as COMPLETED or FAILED.
     * FinishedAt is only available when the Evaluation is in
     * the COMPLETED or FAILED state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as COMPLETED or FAILED.
     * FinishedAt is only available when the Evaluation is in
     * the COMPLETED or FAILED state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as COMPLETED or FAILED.
     * FinishedAt is only available when the Evaluation is in
     * the COMPLETED or FAILED state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as INPROGRESS. StartedAt isn't
     * available if the Evaluation is in the PENDING
     * state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as INPROGRESS. StartedAt isn't
     * available if the Evaluation is in the PENDING
     * state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as INPROGRESS. StartedAt isn't
     * available if the Evaluation is in the PENDING
     * state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as INPROGRESS. StartedAt isn't
     * available if the Evaluation is in the PENDING
     * state.
The epoch time when Amazon Machine Learning marked the
     * Evaluation as INPROGRESS. StartedAt isn't
     * available if the Evaluation is in the PENDING
     * state.