/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace SageMaker
{
namespace Model
{
/**
* Defines the possible values for categorical, continuous, and integer
* hyperparameters to be used by an algorithm.
See Also:
AWS
* API Reference
*/
class ParameterRange
{
public:
AWS_SAGEMAKER_API ParameterRange();
AWS_SAGEMAKER_API ParameterRange(Aws::Utils::Json::JsonView jsonValue);
AWS_SAGEMAKER_API ParameterRange& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
/**
* A IntegerParameterRangeSpecification
object that defines the
* possible values for an integer hyperparameter.
*/
inline const IntegerParameterRangeSpecification& GetIntegerParameterRangeSpecification() const{ return m_integerParameterRangeSpecification; }
/**
* A IntegerParameterRangeSpecification
object that defines the
* possible values for an integer hyperparameter.
*/
inline bool IntegerParameterRangeSpecificationHasBeenSet() const { return m_integerParameterRangeSpecificationHasBeenSet; }
/**
* A IntegerParameterRangeSpecification
object that defines the
* possible values for an integer hyperparameter.
*/
inline void SetIntegerParameterRangeSpecification(const IntegerParameterRangeSpecification& value) { m_integerParameterRangeSpecificationHasBeenSet = true; m_integerParameterRangeSpecification = value; }
/**
* A IntegerParameterRangeSpecification
object that defines the
* possible values for an integer hyperparameter.
*/
inline void SetIntegerParameterRangeSpecification(IntegerParameterRangeSpecification&& value) { m_integerParameterRangeSpecificationHasBeenSet = true; m_integerParameterRangeSpecification = std::move(value); }
/**
* A IntegerParameterRangeSpecification
object that defines the
* possible values for an integer hyperparameter.
*/
inline ParameterRange& WithIntegerParameterRangeSpecification(const IntegerParameterRangeSpecification& value) { SetIntegerParameterRangeSpecification(value); return *this;}
/**
* A IntegerParameterRangeSpecification
object that defines the
* possible values for an integer hyperparameter.
*/
inline ParameterRange& WithIntegerParameterRangeSpecification(IntegerParameterRangeSpecification&& value) { SetIntegerParameterRangeSpecification(std::move(value)); return *this;}
/**
* A ContinuousParameterRangeSpecification
object that defines the
* possible values for a continuous hyperparameter.
*/
inline const ContinuousParameterRangeSpecification& GetContinuousParameterRangeSpecification() const{ return m_continuousParameterRangeSpecification; }
/**
* A ContinuousParameterRangeSpecification
object that defines the
* possible values for a continuous hyperparameter.
*/
inline bool ContinuousParameterRangeSpecificationHasBeenSet() const { return m_continuousParameterRangeSpecificationHasBeenSet; }
/**
* A ContinuousParameterRangeSpecification
object that defines the
* possible values for a continuous hyperparameter.
*/
inline void SetContinuousParameterRangeSpecification(const ContinuousParameterRangeSpecification& value) { m_continuousParameterRangeSpecificationHasBeenSet = true; m_continuousParameterRangeSpecification = value; }
/**
* A ContinuousParameterRangeSpecification
object that defines the
* possible values for a continuous hyperparameter.
*/
inline void SetContinuousParameterRangeSpecification(ContinuousParameterRangeSpecification&& value) { m_continuousParameterRangeSpecificationHasBeenSet = true; m_continuousParameterRangeSpecification = std::move(value); }
/**
* A ContinuousParameterRangeSpecification
object that defines the
* possible values for a continuous hyperparameter.
*/
inline ParameterRange& WithContinuousParameterRangeSpecification(const ContinuousParameterRangeSpecification& value) { SetContinuousParameterRangeSpecification(value); return *this;}
/**
* A ContinuousParameterRangeSpecification
object that defines the
* possible values for a continuous hyperparameter.
*/
inline ParameterRange& WithContinuousParameterRangeSpecification(ContinuousParameterRangeSpecification&& value) { SetContinuousParameterRangeSpecification(std::move(value)); return *this;}
/**
* A CategoricalParameterRangeSpecification
object that defines the
* possible values for a categorical hyperparameter.
*/
inline const CategoricalParameterRangeSpecification& GetCategoricalParameterRangeSpecification() const{ return m_categoricalParameterRangeSpecification; }
/**
* A CategoricalParameterRangeSpecification
object that defines the
* possible values for a categorical hyperparameter.
*/
inline bool CategoricalParameterRangeSpecificationHasBeenSet() const { return m_categoricalParameterRangeSpecificationHasBeenSet; }
/**
* A CategoricalParameterRangeSpecification
object that defines the
* possible values for a categorical hyperparameter.
*/
inline void SetCategoricalParameterRangeSpecification(const CategoricalParameterRangeSpecification& value) { m_categoricalParameterRangeSpecificationHasBeenSet = true; m_categoricalParameterRangeSpecification = value; }
/**
* A CategoricalParameterRangeSpecification
object that defines the
* possible values for a categorical hyperparameter.
*/
inline void SetCategoricalParameterRangeSpecification(CategoricalParameterRangeSpecification&& value) { m_categoricalParameterRangeSpecificationHasBeenSet = true; m_categoricalParameterRangeSpecification = std::move(value); }
/**
* A CategoricalParameterRangeSpecification
object that defines the
* possible values for a categorical hyperparameter.
*/
inline ParameterRange& WithCategoricalParameterRangeSpecification(const CategoricalParameterRangeSpecification& value) { SetCategoricalParameterRangeSpecification(value); return *this;}
/**
* A CategoricalParameterRangeSpecification
object that defines the
* possible values for a categorical hyperparameter.
*/
inline ParameterRange& WithCategoricalParameterRangeSpecification(CategoricalParameterRangeSpecification&& value) { SetCategoricalParameterRangeSpecification(std::move(value)); return *this;}
private:
IntegerParameterRangeSpecification m_integerParameterRangeSpecification;
bool m_integerParameterRangeSpecificationHasBeenSet = false;
ContinuousParameterRangeSpecification m_continuousParameterRangeSpecification;
bool m_continuousParameterRangeSpecificationHasBeenSet = false;
CategoricalParameterRangeSpecification m_categoricalParameterRangeSpecification;
bool m_categoricalParameterRangeSpecificationHasBeenSet = false;
};
} // namespace Model
} // namespace SageMaker
} // namespace Aws