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