//******************************************************************************************************
// Settings.cs - Gbtc
//
// Copyright © 2017, Grid Protection Alliance. All Rights Reserved.
//
// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
// the NOTICE file distributed with this work for additional information regarding copyright ownership.
// The GPA licenses this file to you under the MIT License (MIT), the "License"; you may not use this
// file except in compliance with the License. You may obtain a copy of the License at:
//
// http://opensource.org/licenses/MIT
//
// Unless agreed to in writing, the subject software distributed under the License is distributed on an
// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
// License for the specific language governing permissions and limitations.
//
// Code Modification History:
// ----------------------------------------------------------------------------------------------------
// 03/26/2020 - J. Ritchie Carroll
// Generated original version of source code.
//
//******************************************************************************************************
using System;
using System.ComponentModel;
using System.Configuration;
using ExpressionEvaluator;
using GSF.ComponentModel;
using GSF.Configuration;
namespace UpdateTagNames
{
///
/// Defines settings for the DataExtractor application.
///
///
///
/// Default value expressions in this class reference the primary form instance, as a result,
/// instances of this class should only be created from the primary UI thread or otherwise
/// use .
///
///
/// In order for properties of this class decorated with
/// to have access to form element values, the elements should be declared with "public" access.
///
///
public sealed class Settings : CategorizedSettingsBase
{
///
/// Creates a new instance.
///
///
/// Type registry to use when parsing instances,
/// or null to use .
///
public Settings(TypeRegistry typeRegistry) : base("systemSettings", typeRegistry)
{
}
///
/// Gets or sets host address for historian connection.
///
[TypeConvertedValueExpression("Form.textBoxConfigFile.Text")]
[Description("Target config file name.")]
[ApplicationScopedSetting]
public string TargetConfigFile { get; set; }
///
/// Gets or sets port for historian GEP connection.
///
[TypeConvertedValueExpression("Form.textBoxExpression.Text")]
[Description("Point tag name expression.")]
[ApplicationScopedSetting]
public string Expression { get; set; }
///
/// Gets or sets name of historian instance to access.
///
[TypeConvertedValueExpression("Form.checkBoxSetPortNumber.Checked")]
[Description("Flag that determines if STTP port number should be set.")]
[ApplicationScopedSetting]
public bool SetPortNumber { get; set; }
///
/// Gets or sets frame-rate, in frames per second, used to estimate total data for timespan.
///
[TypeConvertedValueExpression("Form.maskedTextBoxPortNumber.Text")]
[Description("Target STTP port number.")]
[ApplicationScopedSetting]
public int PortNumber { get; set; }
}
}