// Copyright Keysight Technologies 2012-2019 // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, you can obtain one at http://mozilla.org/MPL/2.0/. using System.ComponentModel; using System.Xml.Serialization; namespace OpenTap { /// /// Base interface for resources. Specializations include Dut, Instrument and ResultListener. /// public interface IResource : INotifyPropertyChanged { /// /// A short name to display in the user interface in areas with limited space. /// [Display("Name",Group: "Common", Order: -1)] string Name { get; set; } /// /// When overridden in a derived class, opens a connection to the resource represented by this class. /// void Open(); /// /// When overridden in a derived class, closes the connection made to the resource represented by this class. /// void Close(); /// /// Indicates whether this DUT is currently connected. /// This value should be set by Open() and Close(). /// [XmlIgnore] [Browsable(false)] bool IsConnected { get; } } /// /// Resources that can be enabled and disabled. Currently this is only supported for ResultListeners. /// public interface IEnabledResource : IResource { /// /// Gets or sets if this resources is enabled. /// bool IsEnabled { get; set; } } }