/** * @file KglGenInteger.h * * Copyright (c) 2017 Keyence Corporation. * All rights reserved. * */ #pragma once #include namespace Keyence { //------------------------------------------------------------ /** * \~English @brief Feature parameter class (Integer). * \~Japanese @brief Feature(Integer)パラメータクラスです。 */ class KGLLIB_API KglGenInteger : public KglGenParameter { public: //------------------------------------------------------------ /** * \~English @brief Default constructor. * \~Japanese @brief デフォルトコンストラクタ。 */ KglGenInteger() : KglGenParameter(){} //------------------------------------------------------------ /** * \~English @brief Destructor. * \~Japanese @brief デストラクタ。 */ virtual ~KglGenInteger(){} //------------------------------------------------------------ /** * \~English @brief Sets the value of a feature (Integer). * \~Japanese @brief Feature(Integer)の値を設定します。 * \~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(int64_t val) = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the value of a feature (Integer). * \~Japanese @brief Feature(Integer)の値を取得します。 * \~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(int64_t& val) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the limits (minimum) of a feature (Integer). * \~Japanese @brief Feature(Integer)の最小値を取得します。 * \~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(int64_t& min) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the limits (maximum) of a feature (Integer). * \~Japanese @brief Feature(Integer)の最大値を取得します。 * \~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(int64_t& max) const = 0; //------------------------------------------------------------ /** * \~English @brief Retrieves the increment of a feature (Integer). * \~Japanese @brief Feature(Integer)のインクリメントを取得します。 * \~English @param [out] increment Feature increment. * \~Japanese @param [out] increment 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 getIncrement(int64_t& increment) 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: KglGenInteger( const KglGenInteger & ); const KglGenInteger &operator=( const KglGenInteger & ); }; }; //end of namespace Keyence