Exemplo n.º 1
0
        protected void SetValue <T>(T value)
        {
            var rawValue        = Convert.ToInt32(value);
            var oneValue        = new CapabilityOneValue(_twainType, rawValue);
            var twainCapability = TwainCapability.From(_capability, oneValue);

            var result = Twain32Native.DsCapability(
                _applicationId,
                _sourceId,
                DataGroup.Control,
                DataArgumentType.Capability,
                Message.Set,
                twainCapability);

            if (result == TwainResult.Success)
            {
                return;
            }
            if (result == TwainResult.Failure)
            {
                throw new TwainException("Failed to set capability.", result, GetStatus());
            }
            if (result != TwainResult.CheckStatus)
            {
                throw new TwainException("Failed to set capability.", result);
            }
        }
Exemplo n.º 2
0
        public BasicCapabilityResult GetBasicValue()
        {
            var oneValue        = new CapabilityOneValue(_twainType, 0);
            var twainCapability = TwainCapability.From(_capability, oneValue);

            var result = Twain32Native.DsCapability(
                _applicationId,
                _sourceId,
                DataGroup.Control,
                DataArgumentType.Capability,
                Message.Get,
                twainCapability);

            if (result != TwainResult.Success)
            {
                var conditionCode = GetStatus();

                log.Debug(string.Format("Failed to get capability:{0} reason: {1}",
                                        _capability, conditionCode));

                return(new BasicCapabilityResult()
                {
                    ConditionCode = conditionCode,
                    ErrorCode = result
                });
            }

            twainCapability.ReadBackValue();

            return(new BasicCapabilityResult()
            {
                RawBasicValue = oneValue.Value
            });
        }
Exemplo n.º 3
0
        protected void SetValue <T>(T value)
        {
            /*log.Debug(string.Format("Attempting to set capabilities:{0}, value:{1}, type:{1}",
             *  _capability, value, _twainType));*/
            Logger.WriteLog(LOG_LEVEL.LL_NORMAL_LOG, string.Format("Attempting to set capabilities:{0}, value:{1}, type:{2}",
                                                                   _capability, value, _twainType.ToString()));

            int rawValue        = Convert.ToInt32(value);
            var oneValue        = new CapabilityOneValue(_twainType, rawValue);
            var twainCapability = TwainCapability.From(_capability, oneValue);

            TwainResult result = Twain32Native.DsCapability(
                _applicationId,
                _sourceId,
                DataGroup.Control,
                DataArgumentType.Capability,
                Message.Set,
                twainCapability);

            if (result != TwainResult.Success)
            {
                Logger.WriteLog(LOG_LEVEL.LL_SUB_FUNC, string.Format("Failed to set capabilities:{0}, value:{1}, type:{2}, result:{3}",
                                                                     _capability, value, _twainType, result));

                if (result == TwainResult.Failure)
                {
                    var conditionCode = GetStatus();

                    Logger.WriteLog(LOG_LEVEL.LL_SERIOUS_ERROR, string.Format("Failed to set capabilites:{0} reason: {1}",
                                                                              _capability, conditionCode));

                    throw new TwainException("Failed to set capability.", result, conditionCode);
                }
                else if (result == TwainResult.CheckStatus)
                {
                    Logger.WriteLog(LOG_LEVEL.LL_SUB_FUNC, "Value changed but not to requested value");
                }
                else
                {
                    throw new TwainException("Failed to set capability.", result);
                }
            }
            else
            {
                Logger.WriteLog(LOG_LEVEL.LL_NORMAL_LOG, "Set capabilities:" + _capability + " successfully");
            }
        }
Exemplo n.º 4
0
        protected void SetValue <T>(T value)
        {
            log.Debug(string.Format("Attempting to set capabilities:{0}, value:{1}, type:{1}",
                                    _capability, value, _twainType));

            int rawValue        = Convert.ToInt32(value);
            var oneValue        = new CapabilityOneValue(_twainType, rawValue);
            var twainCapability = TwainCapability.From(_capability, oneValue);

            TwainResult result = Twain32Native.DsCapability(
                _applicationId,
                _sourceId,
                DataGroup.Control,
                DataArgumentType.Capability,
                Message.Set,
                twainCapability);

            if (result != TwainResult.Success)
            {
                log.Debug(string.Format("Failed to set capabilities:{0}, value:{1}, type:{1}, result:{2}",
                                        _capability, value, _twainType, result));

                if (result == TwainResult.Failure)
                {
                    var conditionCode = GetStatus();

                    log.Error(string.Format("Failed to set capabilites:{0} reason: {1}",
                                            _capability, conditionCode));

                    throw new TwainException("Failed to set capability.", result, conditionCode);
                }
                else if (result == TwainResult.CheckStatus)
                {
                    log.Debug("Value changed but not to requested value");
                }
                else
                {
                    throw new TwainException("Failed to set capability.", result);
                }
            }
            else
            {
                log.Debug("Set capabilities successfully");
            }
        }