VintaSoft Twain .NET SDK v10.2
DeviceCapability Class
Members  Example 




Vintasoft.WpfTwain Namespace : DeviceCapability Class
Class that allows to manipulate the device capability.
Object Model
DeviceCapability Class
Syntax
'Declaration
 
Public NotInheritable Class DeviceCapability 
'Usage
 
Dim instance As DeviceCapability
public sealed class DeviceCapability 
public __gc __sealed class DeviceCapability 
public ref class DeviceCapability sealed 
Example
This example shows how to get information about all pixel types supported by the device.
Private Shared Sub GetPixelTypesInfo()
    Using deviceManager As New DeviceManager()
        ' open the device manager
        deviceManager.Open()
            
        ' get reference to the deafult device
        Dim device As Device = deviceManager.DefaultDevice
            
        ' open the device
        device.Open()
            
        ' get reference to object that manipulates IPixelType capability
        Dim pixelTypeCap As DeviceCapability = device.Capabilities.Find(DeviceCapabilityId.IPixelType)
        ' if IPixelType capability supported
        If pixelTypeCap IsNot Nothing Then
            ' get information about current, default and supported values of capability
            Dim capValue As TwainValueContainerBase = pixelTypeCap.GetValue()
            
            Select Case capValue.ContainerType
                Case TwainValueContainerType.[Enum]
                    Dim capValueAsEnum As TwainEnumValueContainer = DirectCast(capValue, TwainEnumValueContainer)
                    Dim enumValues As Array = capValueAsEnum.EnumValues
            
                    ' output the capability values in human readable format
                    Console.WriteLine(String.Format("Current pixel type: {0}", enumValues.GetValue(capValueAsEnum.ValueIndex)))
                    Console.WriteLine(String.Format("Default pixel type: {0}", enumValues.GetValue(capValueAsEnum.DefaultValueIndex)))
                    Console.Write("Supported pixel types:")
                    For i As Integer = 0 To enumValues.Length - 1
                        Console.Write(String.Format(" {0}", enumValues.GetValue(i)))
                    Next
                    Exit Select
            End Select
            
            Console.WriteLine()
        End If
            
        ' close the device
        device.Close()
            
        ' close the device manager
        deviceManager.Close()
    End Using
End Sub
private static void GetPixelTypesInfo()
{
    using (DeviceManager deviceManager = new DeviceManager())
    {
        // open the device manager
        deviceManager.Open();
            
        // get reference to the deafult device
        Device device = deviceManager.DefaultDevice;
        
        // open the device
        device.Open();
            
        // get reference to object that manipulates IPixelType capability
        DeviceCapability pixelTypeCap = device.Capabilities.Find(DeviceCapabilityId.IPixelType);
        // if IPixelType capability supported
        if (pixelTypeCap != null)
        {
            // get information about current, default and supported values of capability
            TwainValueContainerBase capValue = pixelTypeCap.GetValue();
            
            switch (capValue.ContainerType)
            {
                case TwainValueContainerType.Enum:
                    TwainEnumValueContainer capValueAsEnum = (TwainEnumValueContainer)capValue;
                    Array enumValues = capValueAsEnum.EnumValues;
            
                    // output the capability values in human readable format
                    Console.WriteLine(string.Format("Current pixel type: {0}", enumValues.GetValue(capValueAsEnum.ValueIndex)));
                    Console.WriteLine(string.Format("Default pixel type: {0}", enumValues.GetValue(capValueAsEnum.DefaultValueIndex)));
                    Console.Write("Supported pixel types:");
                    for (int i = 0; i < enumValues.Length; i++)
                        Console.Write(string.Format(" {0}", enumValues.GetValue(i)));
                    break;
            }
            
            Console.WriteLine();
        }
            
        // close the device
        device.Close();
            
        // close the device manager
        deviceManager.Close();
    }
}
Inheritance Hierarchy

System.Object
   Vintasoft.WpfTwain.DeviceCapability

Requirements

Target Platforms: Windows 8, Windows 7, Windows Vista, Windows XP, Windows Server 2012, Windows Server 2008, Windows Server 2003

See Also

Reference

DeviceCapability Members
Vintasoft.WpfTwain Namespace