using NTwain.Data; using System; using System.Collections.Generic; namespace NTwain { /// /// Interface for reading a TWAIN capability associated with a . /// /// The TWAIN type of the value. public interface IReadOnlyCapWrapper { /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can get values; otherwise, false. /// bool CanGet { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can get default value; otherwise, false. /// bool CanGetCurrent { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can get current value; otherwise, false. /// bool CanGetDefault { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can get help; otherwise, false. /// bool CanGetHelp { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can get label; otherwise, false. /// bool CanGetLabel { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can get label enum; otherwise, false. /// bool CanGetLabelEnum { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can reset; otherwise, false. /// bool CanReset { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can set; otherwise, false. /// bool CanSet { get; } /// /// Gets a value indicating whether is supported. /// /// /// true if this capability can set constraint; otherwise, false. /// bool CanSetConstraint { get; } /// /// Gets the capability. /// /// /// The capability. /// CapabilityId Capability { get; } /// /// Gets all the possible values of this capability. /// /// IList Get(); /// /// Gets the current value of this capability. /// /// TValue GetCurrent(); /// /// Gets the default value of this capability. /// /// TValue GetDefault(); /// /// [Experimental] Gets the help value of this capability. /// /// string GetHelp(); /// /// [Experimental] Gets the label value of this capability. /// /// string GetLabel(); /// /// [Experimental] Gets the display names for possible values of this capability. /// /// IList GetLabelEnum(); /// /// Gets a value indicating whether this capability is supported. /// /// /// true if this capability is supported; otherwise, false. /// bool IsSupported { get; } /// /// Gets the supported actions. /// /// /// The supported actions. /// QuerySupports SupportedActions { get; } } /// /// Interface for reading/writing a TWAIN capability associated with a . /// /// The TWAIN type of the value. public interface ICapWrapper : IReadOnlyCapWrapper { /// /// Resets the current value to power-on default. /// /// ReturnCode Reset(); /// /// Simplified version that sets the current value of this capability. /// /// The value. /// ReturnCode Set(TValue value);/// /// /// A version of Set that uses an array. /// /// The value. /// ReturnCode Set(TWArray value); /// /// A version of Set that uses an enumeration. /// /// The value. /// ReturnCode Set(TWEnumeration value); /// /// Sets the constraint value of this capability. /// /// The value. /// ReturnCode SetConstraint(TWOneValue value); /// /// Sets the constraint value of this capability. /// /// The value. /// ReturnCode SetConstraint(TWEnumeration value); /// /// Sets the constraint value of this capability. /// /// The value. /// ReturnCode SetConstraint(TWRange value); } }