ntwain/NTwain/Triplets/DGImage/DGImage.IccProfile.cs
2014-05-20 07:25:57 -04:00

27 lines
1018 B
C#

using NTwain.Data;
using NTwain.Internals;
namespace NTwain.Triplets
{
/// <summary>
/// Represents <see cref="DataArgumentType.IccProfile"/>.
/// </summary>
public sealed class IccProfile : OpBase
{
internal IccProfile(ITwainSessionInternal session) : base(session) { }
/// <summary>
/// This operation provides the application with the ICC profile associated with the image which is
/// about to be transferred (state 6) or is being transferred (state 7).
/// </summary>
/// <param name="profile">The profile.</param>
/// <returns></returns>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1045:DoNotPassTypesByReference", MessageId = "0#")]
public ReturnCode Get(ref TWMemory profile)
{
Session.VerifyState(6, 7, DataGroups.Image, DataArgumentType.IccProfile, Message.Get);
profile = new TWMemory();
return Dsm.DsmEntry(Session.AppId, Session.CurrentSource.Identity, DataArgumentType.IccProfile, Message.Get, ref profile);
}
}
}