mirror of
https://github.com/soukoku/ntwain.git
synced 2025-11-08 02:24:46 +08:00
Hid some more triplets.
This commit is contained in:
@@ -96,5 +96,12 @@ namespace NTwain
|
||||
/// <param name="session">The session.</param>
|
||||
/// <returns></returns>
|
||||
TWStatus GetStatus();
|
||||
|
||||
/// <summary>
|
||||
/// Gets the manager status. Only call this at state 3 or higher.
|
||||
/// </summary>
|
||||
/// <param name="session">The session.</param>
|
||||
/// <returns></returns>
|
||||
TWStatusUtf8 GetStatusUtf8();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,10 +6,10 @@ namespace NTwain.Triplets
|
||||
/// <summary>
|
||||
/// Represents <see cref="DataArgumentType.DeviceEvent"/>.
|
||||
/// </summary>
|
||||
public sealed class DeviceEvent : OpBase
|
||||
sealed class DeviceEvent : OpBase
|
||||
{
|
||||
internal DeviceEvent(ITwainSessionInternal session) : base(session) { }
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId = "0#")]
|
||||
|
||||
public ReturnCode Get(out TWDeviceEvent sourceDeviceEvent)
|
||||
{
|
||||
Session.VerifyState(4, 7, DataGroups.Control, DataArgumentType.DeviceEvent, Message.Get);
|
||||
|
||||
@@ -6,7 +6,7 @@ namespace NTwain.Triplets
|
||||
/// <summary>
|
||||
/// Represents <see cref="DataArgumentType.StatusUtf8"/>.
|
||||
/// </summary>
|
||||
public sealed class StatusUtf8 : OpBase
|
||||
sealed class StatusUtf8 : OpBase
|
||||
{
|
||||
internal StatusUtf8(ITwainSessionInternal session) : base(session) { }
|
||||
|
||||
@@ -16,8 +16,9 @@ namespace NTwain.Triplets
|
||||
/// </summary>
|
||||
/// <param name="status">The status.</param>
|
||||
/// <returns></returns>
|
||||
public ReturnCode GetManager(TWStatusUtf8 status)
|
||||
public ReturnCode GetManager(out TWStatusUtf8 status)
|
||||
{
|
||||
status = new TWStatusUtf8();
|
||||
Session.VerifyState(3, 7, DataGroups.Control, DataArgumentType.StatusUtf8, Message.Get);
|
||||
return Dsm.DsmEntry(Session.AppId, null, Message.Get, status);
|
||||
}
|
||||
@@ -28,8 +29,9 @@ namespace NTwain.Triplets
|
||||
/// </summary>
|
||||
/// <param name="status">The status.</param>
|
||||
/// <returns></returns>
|
||||
public ReturnCode GetSource(TWStatusUtf8 status)
|
||||
public ReturnCode GetSource(out TWStatusUtf8 status)
|
||||
{
|
||||
status = new TWStatusUtf8();
|
||||
Session.VerifyState(3, 7, DataGroups.Control, DataArgumentType.StatusUtf8, Message.Get);
|
||||
return Dsm.DsmEntry(Session.AppId, Session.CurrentSource.Identity, Message.Get, status);
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ namespace NTwain.Triplets
|
||||
}
|
||||
}
|
||||
DeviceEvent _deviceEvent;
|
||||
public DeviceEvent DeviceEvent
|
||||
internal DeviceEvent DeviceEvent
|
||||
{
|
||||
get
|
||||
{
|
||||
@@ -163,7 +163,7 @@ namespace NTwain.Triplets
|
||||
}
|
||||
}
|
||||
StatusUtf8 _statusUtf8;
|
||||
public StatusUtf8 StatusUtf8
|
||||
internal StatusUtf8 StatusUtf8
|
||||
{
|
||||
get
|
||||
{
|
||||
|
||||
@@ -6,16 +6,15 @@ namespace NTwain.Triplets
|
||||
/// <summary>
|
||||
/// Represents <see cref="DataArgumentType.ImageInfo"/>.
|
||||
/// </summary>
|
||||
public sealed class ImageInfo : OpBase
|
||||
{
|
||||
internal ImageInfo(ITwainSessionInternal session) : base(session) { }
|
||||
sealed class ImageInfo : OpBase
|
||||
{
|
||||
internal ImageInfo(ITwainSessionInternal session) : base(session) { }
|
||||
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId = "0#")]
|
||||
public ReturnCode Get(out TWImageInfo info)
|
||||
{
|
||||
Session.VerifyState(6, 7, DataGroups.Image, DataArgumentType.ImageInfo, Message.Get);
|
||||
info = new TWImageInfo();
|
||||
return Dsm.DsmEntry(Session.AppId, Session.CurrentSource.Identity, Message.Get, info);
|
||||
}
|
||||
}
|
||||
{
|
||||
Session.VerifyState(6, 7, DataGroups.Image, DataArgumentType.ImageInfo, Message.Get);
|
||||
info = new TWImageInfo();
|
||||
return Dsm.DsmEntry(Session.AppId, Session.CurrentSource.Identity, Message.Get, info);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,35 +5,35 @@ namespace NTwain.Triplets
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents <see cref="DataGroups.Image"/>.
|
||||
/// </summary>
|
||||
public sealed class DGImage
|
||||
{
|
||||
/// </summary>
|
||||
public sealed class DGImage
|
||||
{
|
||||
ITwainSessionInternal _session;
|
||||
internal DGImage(ITwainSessionInternal session)
|
||||
{
|
||||
if (session == null) { throw new ArgumentNullException("session"); }
|
||||
_session = session;
|
||||
}
|
||||
{
|
||||
if (session == null) { throw new ArgumentNullException("session"); }
|
||||
_session = session;
|
||||
}
|
||||
|
||||
CieColor _cieColor;
|
||||
public CieColor CieColor
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_cieColor == null) { _cieColor = new CieColor(_session); }
|
||||
return _cieColor;
|
||||
}
|
||||
}
|
||||
CieColor _cieColor;
|
||||
public CieColor CieColor
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_cieColor == null) { _cieColor = new CieColor(_session); }
|
||||
return _cieColor;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
ExtImageInfo _extImgInfo;
|
||||
public ExtImageInfo ExtImageInfo
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_extImgInfo == null) { _extImgInfo = new ExtImageInfo(_session); }
|
||||
return _extImgInfo;
|
||||
}
|
||||
ExtImageInfo _extImgInfo;
|
||||
public ExtImageInfo ExtImageInfo
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_extImgInfo == null) { _extImgInfo = new ExtImageInfo(_session); }
|
||||
return _extImgInfo;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -47,117 +47,117 @@ namespace NTwain.Triplets
|
||||
}
|
||||
}
|
||||
|
||||
GrayResponse _grayResponse;
|
||||
public GrayResponse GrayResponse
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_grayResponse == null) { _grayResponse = new GrayResponse(_session); }
|
||||
return _grayResponse;
|
||||
}
|
||||
}
|
||||
GrayResponse _grayResponse;
|
||||
public GrayResponse GrayResponse
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_grayResponse == null) { _grayResponse = new GrayResponse(_session); }
|
||||
return _grayResponse;
|
||||
}
|
||||
}
|
||||
|
||||
IccProfile _iccProfile;
|
||||
public IccProfile IccProfile
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_iccProfile == null) { _iccProfile = new IccProfile(_session); }
|
||||
return _iccProfile;
|
||||
}
|
||||
}
|
||||
IccProfile _iccProfile;
|
||||
public IccProfile IccProfile
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_iccProfile == null) { _iccProfile = new IccProfile(_session); }
|
||||
return _iccProfile;
|
||||
}
|
||||
}
|
||||
|
||||
ImageFileXfer _imgFileXfer;
|
||||
internal ImageFileXfer ImageFileXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgFileXfer == null) { _imgFileXfer = new ImageFileXfer(_session); }
|
||||
return _imgFileXfer;
|
||||
}
|
||||
}
|
||||
ImageFileXfer _imgFileXfer;
|
||||
internal ImageFileXfer ImageFileXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgFileXfer == null) { _imgFileXfer = new ImageFileXfer(_session); }
|
||||
return _imgFileXfer;
|
||||
}
|
||||
}
|
||||
|
||||
ImageInfo _imgInfo;
|
||||
public ImageInfo ImageInfo
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgInfo == null) { _imgInfo = new ImageInfo(_session); }
|
||||
return _imgInfo;
|
||||
}
|
||||
}
|
||||
ImageInfo _imgInfo;
|
||||
internal ImageInfo ImageInfo
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgInfo == null) { _imgInfo = new ImageInfo(_session); }
|
||||
return _imgInfo;
|
||||
}
|
||||
}
|
||||
|
||||
ImageLayout _imgLayout;
|
||||
public ImageLayout ImageLayout
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgLayout == null) { _imgLayout = new ImageLayout(_session); }
|
||||
return _imgLayout;
|
||||
}
|
||||
}
|
||||
ImageLayout _imgLayout;
|
||||
public ImageLayout ImageLayout
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgLayout == null) { _imgLayout = new ImageLayout(_session); }
|
||||
return _imgLayout;
|
||||
}
|
||||
}
|
||||
|
||||
ImageMemFileXfer _imgMemFileXfer;
|
||||
internal ImageMemFileXfer ImageMemFileXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgMemFileXfer == null) { _imgMemFileXfer = new ImageMemFileXfer(_session); }
|
||||
return _imgMemFileXfer;
|
||||
}
|
||||
}
|
||||
ImageMemFileXfer _imgMemFileXfer;
|
||||
internal ImageMemFileXfer ImageMemFileXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgMemFileXfer == null) { _imgMemFileXfer = new ImageMemFileXfer(_session); }
|
||||
return _imgMemFileXfer;
|
||||
}
|
||||
}
|
||||
|
||||
ImageMemXfer _imgMemXfer;
|
||||
internal ImageMemXfer ImageMemXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgMemXfer == null) { _imgMemXfer = new ImageMemXfer(_session); }
|
||||
return _imgMemXfer;
|
||||
}
|
||||
}
|
||||
ImageMemXfer _imgMemXfer;
|
||||
internal ImageMemXfer ImageMemXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgMemXfer == null) { _imgMemXfer = new ImageMemXfer(_session); }
|
||||
return _imgMemXfer;
|
||||
}
|
||||
}
|
||||
|
||||
ImageNativeXfer _imgNativeXfer;
|
||||
internal ImageNativeXfer ImageNativeXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgNativeXfer == null) { _imgNativeXfer = new ImageNativeXfer(_session); }
|
||||
return _imgNativeXfer;
|
||||
}
|
||||
}
|
||||
ImageNativeXfer _imgNativeXfer;
|
||||
internal ImageNativeXfer ImageNativeXfer
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_imgNativeXfer == null) { _imgNativeXfer = new ImageNativeXfer(_session); }
|
||||
return _imgNativeXfer;
|
||||
}
|
||||
}
|
||||
|
||||
JpegCompression _jpegComp;
|
||||
public JpegCompression JpegCompression
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_jpegComp == null) { _jpegComp = new JpegCompression(_session); }
|
||||
return _jpegComp;
|
||||
}
|
||||
}
|
||||
JpegCompression _jpegComp;
|
||||
public JpegCompression JpegCompression
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_jpegComp == null) { _jpegComp = new JpegCompression(_session); }
|
||||
return _jpegComp;
|
||||
}
|
||||
}
|
||||
|
||||
Palette8 _palette8;
|
||||
public Palette8 Palette8
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_palette8 == null) { _palette8 = new Palette8(_session); }
|
||||
return _palette8;
|
||||
}
|
||||
}
|
||||
Palette8 _palette8;
|
||||
public Palette8 Palette8
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_palette8 == null) { _palette8 = new Palette8(_session); }
|
||||
return _palette8;
|
||||
}
|
||||
}
|
||||
|
||||
RgbResponse _rgbResp;
|
||||
public RgbResponse RgbResponse
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_rgbResp == null) { _rgbResp = new RgbResponse(_session); }
|
||||
return _rgbResp;
|
||||
}
|
||||
}
|
||||
RgbResponse _rgbResp;
|
||||
public RgbResponse RgbResponse
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_rgbResp == null) { _rgbResp = new RgbResponse(_session); }
|
||||
return _rgbResp;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -139,7 +139,7 @@ namespace NTwain
|
||||
TWIdentity id;
|
||||
if (DGControl.Identity.GetDefault(out id) == ReturnCode.Success)
|
||||
{
|
||||
return new TwainSource(this, id);
|
||||
return TwainSource.GetInstance(this, id);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -162,7 +162,7 @@ namespace NTwain
|
||||
TWIdentity id;
|
||||
if (DGControl.Identity.UserSelect(out id) == ReturnCode.Success)
|
||||
{
|
||||
return new TwainSource(this, id);
|
||||
return TwainSource.GetInstance(this, id);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -311,7 +311,7 @@ namespace NTwain
|
||||
var rc = DGControl.Identity.GetFirst(out srcId);
|
||||
while (rc == ReturnCode.Success)
|
||||
{
|
||||
yield return new TwainSource(this, srcId);
|
||||
yield return TwainSource.GetInstance(this, srcId);
|
||||
rc = DGControl.Identity.GetNext(out srcId);
|
||||
}
|
||||
}
|
||||
@@ -327,6 +327,18 @@ namespace NTwain
|
||||
return stat;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the manager status. Only call this at state 3 or higher.
|
||||
/// </summary>
|
||||
/// <param name="session">The session.</param>
|
||||
/// <returns></returns>
|
||||
public TWStatusUtf8 GetStatusUtf8()
|
||||
{
|
||||
TWStatusUtf8 stat;
|
||||
DGControl.StatusUtf8.GetManager(out stat);
|
||||
return stat;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -16,9 +16,21 @@ namespace NTwain
|
||||
/// </summary>
|
||||
public partial class TwainSource : INotifyPropertyChanged
|
||||
{
|
||||
static readonly Dictionary<string, TwainSource> __globalInstances = new Dictionary<string, TwainSource>();
|
||||
|
||||
internal static TwainSource GetInstance(ITwainSessionInternal session, TWIdentity sourceId)
|
||||
{
|
||||
var key = string.Format("{0}|{1}", sourceId.Manufacturer, sourceId.ProductFamily, sourceId.ProductName);
|
||||
if (__globalInstances.ContainsKey(key))
|
||||
{
|
||||
return __globalInstances[key];
|
||||
}
|
||||
return __globalInstances[key] = new TwainSource(session, sourceId);
|
||||
}
|
||||
|
||||
ITwainSessionInternal _session;
|
||||
|
||||
internal TwainSource(ITwainSessionInternal session, TWIdentity sourceId)
|
||||
private TwainSource(ITwainSessionInternal session, TWIdentity sourceId)
|
||||
{
|
||||
_session = session;
|
||||
Identity = sourceId;
|
||||
@@ -84,6 +96,18 @@ namespace NTwain
|
||||
_session.DGControl.Status.GetSource(out stat);
|
||||
return stat;
|
||||
}
|
||||
/// <summary>
|
||||
/// Gets the source status. Only call this at state 4 or higher.
|
||||
/// </summary>
|
||||
/// <param name="session">The session.</param>
|
||||
/// <returns></returns>
|
||||
public TWStatusUtf8 GetStatusUtf8()
|
||||
{
|
||||
TWStatusUtf8 stat;
|
||||
_session.DGControl.StatusUtf8.GetSource(out stat);
|
||||
return stat;
|
||||
}
|
||||
|
||||
|
||||
#region properties
|
||||
|
||||
|
||||
Reference in New Issue
Block a user