kopia lustrzana https://gitlab.com/sane-project/backends
genesys: Return errors as exceptions from *set_powersaving()
rodzic
fd12b4052f
commit
a0aa335d90
|
@ -6772,14 +6772,14 @@ set_option_value (Genesys_Scanner * s, int option, void *val,
|
||||||
case OPT_LAMP_OFF_TIME:
|
case OPT_LAMP_OFF_TIME:
|
||||||
if (*reinterpret_cast<SANE_Word*>(val) != s->lamp_off_time) {
|
if (*reinterpret_cast<SANE_Word*>(val) != s->lamp_off_time) {
|
||||||
s->lamp_off_time = *reinterpret_cast<SANE_Word*>(val);
|
s->lamp_off_time = *reinterpret_cast<SANE_Word*>(val);
|
||||||
RIE(s->dev->model->cmd_set->set_powersaving(s->dev, s->lamp_off_time));
|
s->dev->model->cmd_set->set_powersaving(s->dev, s->lamp_off_time);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case OPT_EXPIRATION_TIME:
|
case OPT_EXPIRATION_TIME:
|
||||||
if (*reinterpret_cast<SANE_Word*>(val) != s->expiration_time) {
|
if (*reinterpret_cast<SANE_Word*>(val) != s->expiration_time) {
|
||||||
s->expiration_time = *reinterpret_cast<SANE_Word*>(val);
|
s->expiration_time = *reinterpret_cast<SANE_Word*>(val);
|
||||||
// BUG: this is most likely not intended behavior, found out during refactor
|
// BUG: this is most likely not intended behavior, found out during refactor
|
||||||
RIE(s->dev->model->cmd_set->set_powersaving(s->dev, s->expiration_time));
|
s->dev->model->cmd_set->set_powersaving(s->dev, s->expiration_time);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -1493,8 +1493,7 @@ static void gl124_save_power(Genesys_Device* dev, SANE_Bool enable)
|
||||||
DBG_HELPER_ARGS(dbg, "enable = %d", enable);
|
DBG_HELPER_ARGS(dbg, "enable = %d", enable);
|
||||||
}
|
}
|
||||||
|
|
||||||
static SANE_Status
|
static void gl124_set_powersaving(Genesys_Device* dev, int delay /* in minutes */)
|
||||||
gl124_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
|
||||||
{
|
{
|
||||||
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
||||||
GenesysRegister *r;
|
GenesysRegister *r;
|
||||||
|
@ -1509,8 +1508,6 @@ gl124_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
||||||
{
|
{
|
||||||
r->value |= 0x0f;
|
r->value |= 0x0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
return SANE_STATUS_GOOD;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gl124_start_action(Genesys_Device* dev)
|
static void gl124_start_action(Genesys_Device* dev)
|
||||||
|
|
|
@ -1535,11 +1535,9 @@ static void gl646_save_power(Genesys_Device* dev, SANE_Bool enable)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static SANE_Status
|
static void gl646_set_powersaving(Genesys_Device* dev, int delay /* in minutes */)
|
||||||
gl646_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
|
||||||
{
|
{
|
||||||
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
||||||
SANE_Status status = SANE_STATUS_GOOD;
|
|
||||||
Genesys_Register_Set local_reg(Genesys_Register_Set::SEQUENTIAL);
|
Genesys_Register_Set local_reg(Genesys_Register_Set::SEQUENTIAL);
|
||||||
int rate, exposure_time, tgtime, time;
|
int rate, exposure_time, tgtime, time;
|
||||||
|
|
||||||
|
@ -1595,8 +1593,6 @@ gl646_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
||||||
local_reg.find_reg(0x39).value = exposure_time & 255;
|
local_reg.find_reg(0x39).value = exposure_time & 255;
|
||||||
|
|
||||||
sanei_genesys_bulk_write_register(dev, local_reg);
|
sanei_genesys_bulk_write_register(dev, local_reg);
|
||||||
|
|
||||||
return status;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -3522,8 +3518,8 @@ gl646_init (Genesys_Device * dev)
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set powersaving (default = 15 minutes) */
|
// Set powersaving(default = 15 minutes)
|
||||||
RIE (gl646_set_powersaving (dev, 15));
|
gl646_set_powersaving(dev, 15);
|
||||||
} /* end if cold */
|
} /* end if cold */
|
||||||
|
|
||||||
// Set analog frontend
|
// Set analog frontend
|
||||||
|
|
|
@ -2403,12 +2403,9 @@ static void gl841_save_power(Genesys_Device* dev, SANE_Bool enable)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static SANE_Status
|
static void gl841_set_powersaving(Genesys_Device* dev, int delay /* in minutes */)
|
||||||
gl841_set_powersaving (Genesys_Device * dev,
|
|
||||||
int delay /* in minutes */ )
|
|
||||||
{
|
{
|
||||||
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
||||||
SANE_Status status = SANE_STATUS_GOOD;
|
|
||||||
// FIXME: SEQUENTIAL not really needed in this case
|
// FIXME: SEQUENTIAL not really needed in this case
|
||||||
Genesys_Register_Set local_reg(Genesys_Register_Set::SEQUENTIAL);
|
Genesys_Register_Set local_reg(Genesys_Register_Set::SEQUENTIAL);
|
||||||
int rate, exposure_time, tgtime, time;
|
int rate, exposure_time, tgtime, time;
|
||||||
|
@ -2469,8 +2466,6 @@ gl841_set_powersaving (Genesys_Device * dev,
|
||||||
local_reg.set8(0x39, exposure_time & 255); /* lowbyte */
|
local_reg.set8(0x39, exposure_time & 255); /* lowbyte */
|
||||||
|
|
||||||
sanei_genesys_bulk_write_register(dev, local_reg);
|
sanei_genesys_bulk_write_register(dev, local_reg);
|
||||||
|
|
||||||
return status;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gl841_start_action(Genesys_Device* dev)
|
static void gl841_start_action(Genesys_Device* dev)
|
||||||
|
@ -4451,8 +4446,8 @@ gl841_init (Genesys_Device * dev)
|
||||||
|
|
||||||
regs = dev->reg;
|
regs = dev->reg;
|
||||||
|
|
||||||
/* Set powersaving (default = 15 minutes) */
|
// Set powersaving(default = 15 minutes)
|
||||||
RIE (gl841_set_powersaving (dev, 15));
|
gl841_set_powersaving(dev, 15);
|
||||||
dev->already_initialized = SANE_TRUE;
|
dev->already_initialized = SANE_TRUE;
|
||||||
|
|
||||||
return SANE_STATUS_GOOD;
|
return SANE_STATUS_GOOD;
|
||||||
|
|
|
@ -1688,16 +1688,10 @@ static void gl843_save_power(Genesys_Device* dev, SANE_Bool enable)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static SANE_Status
|
static void gl843_set_powersaving(Genesys_Device* dev, int delay /* in minutes */)
|
||||||
gl843_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
|
||||||
{
|
{
|
||||||
|
(void) dev;
|
||||||
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
||||||
SANE_Status status = SANE_STATUS_GOOD;
|
|
||||||
|
|
||||||
if (dev == NULL)
|
|
||||||
return SANE_STATUS_INVAL;
|
|
||||||
|
|
||||||
return status;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gl843_start_action(Genesys_Device* dev)
|
static void gl843_start_action(Genesys_Device* dev)
|
||||||
|
|
|
@ -1346,14 +1346,10 @@ static void gl846_save_power(Genesys_Device* dev, SANE_Bool enable)
|
||||||
DBG_HELPER_ARGS(dbg, "enable = %d", enable);
|
DBG_HELPER_ARGS(dbg, "enable = %d", enable);
|
||||||
}
|
}
|
||||||
|
|
||||||
static SANE_Status
|
static void gl846_set_powersaving(Genesys_Device* dev, int delay /* in minutes */)
|
||||||
gl846_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
|
||||||
{
|
{
|
||||||
|
(void) dev;
|
||||||
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
||||||
if (dev == NULL)
|
|
||||||
return SANE_STATUS_INVAL;
|
|
||||||
|
|
||||||
return SANE_STATUS_GOOD;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gl846_start_action(Genesys_Device* dev)
|
static void gl846_start_action(Genesys_Device* dev)
|
||||||
|
|
|
@ -1362,14 +1362,10 @@ static void gl847_save_power(Genesys_Device* dev, SANE_Bool enable)
|
||||||
(void) dev;
|
(void) dev;
|
||||||
}
|
}
|
||||||
|
|
||||||
static SANE_Status
|
static void gl847_set_powersaving(Genesys_Device* dev, int delay /* in minutes */)
|
||||||
gl847_set_powersaving (Genesys_Device * dev, int delay /* in minutes */ )
|
|
||||||
{
|
{
|
||||||
|
(void) dev;
|
||||||
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
DBG_HELPER_ARGS(dbg, "delay = %d", delay);
|
||||||
if (dev == NULL)
|
|
||||||
return SANE_STATUS_INVAL;
|
|
||||||
|
|
||||||
return SANE_STATUS_GOOD;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gl847_start_action(Genesys_Device* dev)
|
static void gl847_start_action(Genesys_Device* dev)
|
||||||
|
|
|
@ -1277,8 +1277,8 @@ sanei_genesys_asic_init(Genesys_Device* dev, int /*max_regs*/)
|
||||||
dev->model->cmd_set->slow_back_home(dev, SANE_TRUE);
|
dev->model->cmd_set->slow_back_home(dev, SANE_TRUE);
|
||||||
dev->scanhead_position_in_steps = 0;
|
dev->scanhead_position_in_steps = 0;
|
||||||
|
|
||||||
/* Set powersaving (default = 15 minutes) */
|
// Set powersaving (default = 15 minutes)
|
||||||
RIE (dev->model->cmd_set->set_powersaving (dev, 15));
|
dev->model->cmd_set->set_powersaving(dev, 15);
|
||||||
|
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1066,7 +1066,7 @@ struct Genesys_Command_Set
|
||||||
SANE_Bool (*test_motor_flag_bit) (SANE_Byte val);
|
SANE_Bool (*test_motor_flag_bit) (SANE_Byte val);
|
||||||
|
|
||||||
void (*set_fe) (Genesys_Device* dev, const Genesys_Sensor& sensor, uint8_t set);
|
void (*set_fe) (Genesys_Device* dev, const Genesys_Sensor& sensor, uint8_t set);
|
||||||
SANE_Status (*set_powersaving) (Genesys_Device * dev, int delay);
|
void (*set_powersaving) (Genesys_Device* dev, int delay);
|
||||||
void (*save_power) (Genesys_Device* dev, SANE_Bool enable);
|
void (*save_power) (Genesys_Device* dev, SANE_Bool enable);
|
||||||
|
|
||||||
void (*begin_scan) (Genesys_Device* dev, const Genesys_Sensor& sensor,
|
void (*begin_scan) (Genesys_Device* dev, const Genesys_Sensor& sensor,
|
||||||
|
|
Ładowanie…
Reference in New Issue