/** * @file KglGenFloat.h * * Copyright (c) 2017 Keyence Corporation. * All rights reserved. * */ #pragma once #include namespace Keyence { class KglString; //------------------------------------------------------------ /** * \~English @brief Feature parameter class (Float). * \~Japanese @brief Feature(Float)パラメータクラスです。 */ class KGLLIB_API KglGenFloat : public KglGenParameter { public: //------------------------------------------------------------ /** * \~English @brief Default constructor. * \~Japanese @brief デフォルトコンストラクタ。 */ KglGenFloat() : KglGenParameter(){} //------------------------------------------------------------ /** * \~English @brief Destructor. * \~Japanese @brief デストラクタ。 */ virtual ~KglGenFloat(){} //------------------------------------------------------------ /** * \~English @brief Sets the value of a feature (Float). * \~Japanese @brief Feature(Float)の値を設定します。 * \~English @param [in] val Feature value. * \~Japanese @param [in] val Feature値。 * \~English @retval KGL_ERR_NOT_INITIALIZED An invalid KglGenParameter. * \~Japanese @retval KGL_ERR_NOT_INITIALIZED 無効なKglGenParameterです。 * \~English @retval KGL_ERR_INVALID_FEATURE_ACCESS The requested operation resulted in an error regarding the Available attribute, access type, or range check of the feature. * \~Japanese @retval KGL_ERR_INVALID_FEATURE_ACCESS 要求された操作はFeatureのAvailable属性、アクセスタイプ、範囲チェックのいずれかでエラーが発生しました。 * \~English @retval KGL_GENERIC_ERROR An unexpected error has occurred. * \~Japanese @retval KGL_GENERIC_ERROR 予期しないエラーが発生しました。 * \~English @retval KGL_SUCCESS Success. * \~Japanese @retval KGL_SUCCESS 成功。 */ virtual KglResult setValue(double val) = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the value of a feature (Float). * \~Japanese @brief Feature(Float)の値を取得します。 * \~English @param [out] val Feature value. * \~Japanese @param [out] val Feature値。 * \~English @retval KGL_ERR_NOT_INITIALIZED An invalid KglGenParameter. * \~Japanese @retval KGL_ERR_NOT_INITIALIZED 無効なKglGenParameterです。 * \~English @retval KGL_ERR_INVALID_FEATURE_ACCESS The requested operation resulted in an error regarding the Available attribute, access type, or range check of the feature. * \~Japanese @retval KGL_ERR_INVALID_FEATURE_ACCESS 要求された操作はFeatureのAvailable属性、アクセスタイプ、範囲チェックのいずれかでエラーが発生しました。 * \~English @retval KGL_GENERIC_ERROR An unexpected error has occurred. * \~Japanese @retval KGL_GENERIC_ERROR 予期しないエラーが発生しました。 * \~English @retval KGL_SUCCESS Success. * \~Japanese @retval KGL_SUCCESS 成功。 */ virtual KglResult getValue(double& val) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the limits (minimum) of a feature (Float). * \~Japanese @brief Feature(Float)の最小値を取得します。 * \~English @param [out] min Feature value. * \~Japanese @param [out] min Feature値。 * \~English @retval KGL_ERR_NOT_INITIALIZED An invalid KglGenParameter. * \~Japanese @retval KGL_ERR_NOT_INITIALIZED 無効なKglGenParameterです。 * \~English @retval KGL_ERR_INVALID_FEATURE_ACCESS The requested operation resulted in an error regarding the Available attribute, access type, or range check of the feature. * \~Japanese @retval KGL_ERR_INVALID_FEATURE_ACCESS 要求された操作はFeatureのAvailable属性、アクセスタイプ、範囲チェックのいずれかでエラーが発生しました。 * \~English @retval KGL_GENERIC_ERROR An unexpected error has occurred. * \~Japanese @retval KGL_GENERIC_ERROR 予期しないエラーが発生しました。 * \~English @retval KGL_SUCCESS Success. * \~Japanese @retval KGL_SUCCESS 成功。 */ virtual KglResult getMin(double& min) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the limits (maximum) of a feature (Float). * \~Japanese @brief Feature(Float)の最大値を取得します。 * \~English @param [out] max Feature value. * \~Japanese @param [out] max Feature値。 * \~English @retval KGL_ERR_NOT_INITIALIZED An invalid KglGenParameter. * \~Japanese @retval KGL_ERR_NOT_INITIALIZED 無効なKglGenParameterです。 * \~English @retval KGL_ERR_INVALID_FEATURE_ACCESS The requested operation resulted in an error regarding the Available attribute, access type, or range check of the feature. * \~Japanese @retval KGL_ERR_INVALID_FEATURE_ACCESS 要求された操作はFeatureのAvailable属性、アクセスタイプ、範囲チェックのいずれかでエラーが発生しました。 * \~English @retval KGL_GENERIC_ERROR An unexpected error has occurred. * \~Japanese @retval KGL_GENERIC_ERROR 予期しないエラーが発生しました。 * \~English @retval KGL_SUCCESS Success. * \~Japanese @retval KGL_SUCCESS 成功。 */ virtual KglResult getMax(double& max) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the representation of a feature. * \~Japanese @brief 数値表示設定に適したUI形式を取得します。 * \~English @param [out] representation representation. * \~Japanese @param [out] representation 提案するUI形式。 * \~English @retval KGL_ERR_NOT_INITIALIZED An invalid KglGenParameter. * \~Japanese @retval KGL_ERR_NOT_INITIALIZED 無効なKglGenParameterです。 * \~English @retval KGL_GENERIC_ERROR An unexpected error has occurred. * \~Japanese @retval KGL_GENERIC_ERROR 予期しないエラーが発生しました。 * \~English @retval KGL_SUCCESS Success. * \~Japanese @retval KGL_SUCCESS 成功。 */ virtual KglResult getRepresentation(KglRepresentation& representation) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the unit of a feature. * \~Japanese @brief Featureの単位を取得します。 * \~English @param [out] unit unit. * \~Japanese @param [out] unit Featureの単位。 * \~English @retval KGL_ERR_NOT_INITIALIZED An invalid KglGenParameter. * \~Japanese @retval KGL_ERR_NOT_INITIALIZED 無効なKglGenParameterです。 * \~English @retval KGL_GENERIC_ERROR An unexpected error has occurred. * \~Japanese @retval KGL_GENERIC_ERROR 予期しないエラーが発生しました。 * \~English @retval KGL_SUCCESS Success. * \~Japanese @retval KGL_SUCCESS 成功。 */ virtual KglResult getUnit(KglString& unit) const = 0; private: KglGenFloat( const KglGenFloat & ); const KglGenFloat &operator=( const KglGenFloat & ); }; }; //end of namespace Keyence