option_descriptor_t** kds_s2000w_descriptors = NULL;
uint8_t kds_s2000w_max_option_count = 0;
+option_descriptor_t* _kds_s2000w_option_descriptor_descriptor_init()
+{
+ option_descriptor_t* descriptor = malloc(sizeof(option_descriptor_t));
+ if (descriptor == NULL)
+ return NULL;
+
+ descriptor->descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ if (descriptor->descriptor == NULL) {
+ free(descriptor);
+ return NULL;
+ }
+
+ return descriptor;
+}
+
void _kds_s2000w_option_descriptor_descriptor_free(option_descriptor_t* descriptor)
{
if (descriptor == NULL)
SANE_Status _kds_s2000w_option_descriptor_validate()
{
for (int i = 0; i < kds_s2000w_max_option_count; i++) {
- if (kds_s2000w_descriptors[i]->descriptor == NULL) {
+ if (kds_s2000w_descriptors[i] == NULL) {
kds_s2000w_option_descriptors_free();
return SANE_STATUS_NO_MEM;
}
return SANE_STATUS_GOOD;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_num_options()
+option_descriptor_t* _kds_s2000w_option_descriptor_num_options()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = SANE_NAME_NUM_OPTIONS;
- descriptor->title = SANE_TITLE_NUM_OPTIONS;
- descriptor->desc = SANE_DESC_NUM_OPTIONS;
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = OPTION_COUNT;
+ descriptor->descriptor->name = SANE_NAME_NUM_OPTIONS;
+ descriptor->descriptor->title = SANE_TITLE_NUM_OPTIONS;
+ descriptor->descriptor->desc = SANE_DESC_NUM_OPTIONS;
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
/*******************************************************************************
* standard group
******************************************************************************/
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_standard_group()
+option_descriptor_t* _kds_s2000w_option_descriptor_standard_group()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = SANE_NAME_STANDARD;
- descriptor->title = SANE_TITLE_STANDARD;
- descriptor->desc = SANE_DESC_STANDARD;
- descriptor->type = SANE_TYPE_GROUP;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = STANDARD_GROUP;
+ descriptor->descriptor->name = SANE_NAME_STANDARD;
+ descriptor->descriptor->title = SANE_TITLE_STANDARD;
+ descriptor->descriptor->desc = SANE_DESC_STANDARD;
+ descriptor->descriptor->type = SANE_TYPE_GROUP;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_scan_source()
+option_descriptor_t* _kds_s2000w_option_descriptor_scan_source()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "DocumentFeeder";
constraint[1] = "Automatic";
constraint[2] = "Flatbed";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_SOURCE;
- descriptor->title = SANE_TITLE_SCAN_SOURCE;
- descriptor->desc = SANE_DESC_SCAN_SOURCE;
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = SCAN_SOURCE;
+ descriptor->descriptor->name = SANE_NAME_SCAN_SOURCE;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_SOURCE;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_SOURCE;
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_mode()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_mode()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "Color";
constraint[1] = "Gray";
constraint[2] = "BW";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_MODE;
- descriptor->title = SANE_TITLE_SCAN_MODE;
- descriptor->desc = SANE_DESC_SCAN_MODE;
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = COLOR_MODE;
+ descriptor->descriptor->name = SANE_NAME_SCAN_MODE;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_MODE;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_MODE;
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_dpi()
+option_descriptor_t* _kds_s2000w_option_descriptor_dpi()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Word* constraint = malloc(sizeof(SANE_Word) * 6);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = 5;
constraint[1] = 100;
constraint[4] = 300;
constraint[5] = 600;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_RESOLUTION;
- descriptor->title = SANE_TITLE_SCAN_RESOLUTION;
- descriptor->desc = SANE_DESC_SCAN_RESOLUTION;
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_DPI;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_WORD_LIST;
- descriptor->constraint.word_list = constraint;
+ descriptor->config_name = DPI;
+ descriptor->descriptor->name = SANE_NAME_SCAN_RESOLUTION;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_RESOLUTION;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_RESOLUTION;
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_DPI;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_WORD_LIST;
+ descriptor->descriptor->constraint.word_list = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_scanside()
+option_descriptor_t* _kds_s2000w_option_descriptor_scanside()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 3);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "Simplex";
constraint[1] = "Duplex";
constraint[2] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "scanside";
- descriptor->title = "Duplex Mode";
- descriptor->desc = "Duplex Mode";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 3;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = SCAN_SIDE;
+ descriptor->descriptor->name = "scanside";
+ descriptor->descriptor->title = "Duplex Mode";
+ descriptor->descriptor->desc = "Duplex Mode";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 3;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
/*******************************************************************************
* geometry group
******************************************************************************/
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_geometry_group()
+option_descriptor_t* _kds_s2000w_option_descriptor_geometry_group()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = SANE_NAME_GEOMETRY;
- descriptor->title = SANE_TITLE_GEOMETRY;
- descriptor->desc = SANE_DESC_GEOMETRY;
- descriptor->type = SANE_TYPE_GROUP;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = GEOMETRY_GROUP;
+ descriptor->descriptor->name = SANE_NAME_GEOMETRY;
+ descriptor->descriptor->title = SANE_TITLE_GEOMETRY;
+ descriptor->descriptor->desc = SANE_DESC_GEOMETRY;
+ descriptor->descriptor->type = SANE_TYPE_GROUP;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_cropping_mode()
+option_descriptor_t* _kds_s2000w_option_descriptor_cropping_mode()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 5);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "AutomaticStraighten";
constraint[1] = "Automatic";
constraint[3] = "Manual";
constraint[4] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "cropping-mode";
- descriptor->title = "Cropping Mode";
- descriptor->desc = "Cropping Mode";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 5;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = CROPPING_MODE;
+ descriptor->descriptor->name = "cropping-mode";
+ descriptor->descriptor->title = "Cropping Mode";
+ descriptor->descriptor->desc = "Cropping Mode";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 5;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_cropping_image()
+option_descriptor_t* _kds_s2000w_option_descriptor_cropping_image()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 3);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "EntireDocument";
constraint[1] = "PartialDocument";
constraint[2] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "cropping-image";
- descriptor->title = "Cropping Image";
- descriptor->desc = "Cropping Image";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 3;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = CROPPING_IMAGE;
+ descriptor->descriptor->name = "cropping-image";
+ descriptor->descriptor->title = "Cropping Image";
+ descriptor->descriptor->desc = "Cropping Image";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 3;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_image_offset_x()
+option_descriptor_t* _kds_s2000w_option_descriptor_image_offset_x()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 0;
constraint->max = 2250;
constraint->quant = 30;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_TL_X;
- descriptor->title = SANE_TITLE_SCAN_TL_X;
- descriptor->desc = SANE_DESC_SCAN_TL_X;
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_PIXEL;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = IMAGE_OFFSET_X;
+ descriptor->descriptor->name = SANE_NAME_SCAN_TL_X;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_TL_X;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_TL_X;
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_PIXEL;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_image_offset_y()
+option_descriptor_t* _kds_s2000w_option_descriptor_image_offset_y()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 0;
constraint->max = 3900;
constraint->quant = 30;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_TL_Y;
- descriptor->title = SANE_TITLE_SCAN_TL_Y;
- descriptor->desc = SANE_DESC_SCAN_TL_Y;
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_PIXEL;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = IMAGE_OFFSET_Y;
+ descriptor->descriptor->name = SANE_NAME_SCAN_TL_Y;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_TL_Y;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_TL_Y;
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_PIXEL;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_image_width()
+option_descriptor_t* _kds_s2000w_option_descriptor_image_width()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 300;
constraint->max = 2550;
constraint->quant = 30;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_BR_X;
- descriptor->title = SANE_TITLE_SCAN_BR_X;
- descriptor->desc = SANE_DESC_SCAN_BR_X;
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_PIXEL;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = IMAGE_WIDTH;
+ descriptor->descriptor->name = SANE_NAME_SCAN_BR_X;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_BR_X;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_BR_X;
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_PIXEL;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_image_height()
+option_descriptor_t* _kds_s2000w_option_descriptor_image_height()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 300;
constraint->max = 4200;
constraint->quant = 30;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = SANE_NAME_SCAN_BR_Y;
- descriptor->title = SANE_TITLE_SCAN_BR_Y;
- descriptor->desc = SANE_DESC_SCAN_BR_Y;
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_PIXEL;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = IMAGE_HEIGHT;
+ descriptor->descriptor->name = SANE_NAME_SCAN_BR_Y;
+ descriptor->descriptor->title = SANE_TITLE_SCAN_BR_Y;
+ descriptor->descriptor->desc = SANE_DESC_SCAN_BR_Y;
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_PIXEL;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
/*******************************************************************************
* boldness smoothing group
******************************************************************************/
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_boldness_smoothing_group()
+option_descriptor_t* _kds_s2000w_option_descriptor_boldness_smoothing_group()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "boldness-smoothing";
- descriptor->title = "Boldness / Smoothing Options";
- descriptor->desc = "Foreground boldness Options and background smoothing options";
- descriptor->type = SANE_TYPE_GROUP;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = BOLDNESS_SMOOTHING_GROUP;
+ descriptor->descriptor->name = "boldness-smoothing";
+ descriptor->descriptor->title = "Boldness / Smoothing Options";
+ descriptor->descriptor->desc = "Foreground boldness Options and background smoothing options";
+ descriptor->descriptor->type = SANE_TYPE_GROUP;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_foreground_boldness_mode()
+option_descriptor_t* _kds_s2000w_option_descriptor_foreground_boldness_mode()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "AutomaticAdvanced";
constraint[2] = "Automatic";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "foreground-boldness-mode";
- descriptor->title = "Foreground Boldness Mode";
- descriptor->desc = "Foreground Boldness Mode";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = FOREGROUND_BOLDNESS_MODE;
+ descriptor->descriptor->name = "foreground-boldness-mode";
+ descriptor->descriptor->title = "Foreground Boldness Mode";
+ descriptor->descriptor->desc = "Foreground Boldness Mode";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness()
+option_descriptor_t* _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -10;
constraint->max = 10;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "foreground-boldness-aggressiveness";
- descriptor->title = "Foreground Boldness Aggressiveness";
- descriptor->desc = "Foreground Boldness Aggressiveness";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = FOREGROUND_BOLDNESS_AGGRESSIVENESS;
+ descriptor->descriptor->name = "foreground-boldness-aggressiveness";
+ descriptor->descriptor->title = "Foreground Boldness Aggressiveness";
+ descriptor->descriptor->desc = "Foreground Boldness Aggressiveness";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_background_smoothing_mode()
+option_descriptor_t* _kds_s2000w_option_descriptor_background_smoothing_mode()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "AutomaticAdvanced";
constraint[2] = "Automatic";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "background-smoothing-mode";
- descriptor->title = "Background Smoothing Mode";
- descriptor->desc = "Background Smoothing Mode";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = BACKGROUND_SMOOTHING_MODE;
+ descriptor->descriptor->name = "background-smoothing-mode";
+ descriptor->descriptor->title = "Background Smoothing Mode";
+ descriptor->descriptor->desc = "Background Smoothing Mode";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_background_smoothing_aggressiveness()
+option_descriptor_t* _kds_s2000w_option_descriptor_background_smoothing_aggressiveness()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -10;
constraint->max = 10;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "background-smoothing-aggressiveness";
- descriptor->title = "Background Smoothing Aggressiveness";
- descriptor->desc = "Background Smoothing Aggressiveness";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = BACKGROUND_SMOOTHING_AGGRESSIVENESS;
+ descriptor->descriptor->name = "background-smoothing-aggressiveness";
+ descriptor->descriptor->title = "Background Smoothing Aggressiveness";
+ descriptor->descriptor->desc = "Background Smoothing Aggressiveness";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
/*******************************************************************************
* boldness color group
******************************************************************************/
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_boldness_color_group()
+option_descriptor_t* _kds_s2000w_option_descriptor_boldness_color_group()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "color-options";
- descriptor->title = "Color Options";
- descriptor->desc = "Color Options";
- descriptor->type = SANE_TYPE_GROUP;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = BOLDNESS_COLOR_GROUP;
+ descriptor->descriptor->name = "color-options";
+ descriptor->descriptor->title = "Color Options";
+ descriptor->descriptor->desc = "Color Options";
+ descriptor->descriptor->type = SANE_TYPE_GROUP;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_drop()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_drop()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 9);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Red";
constraint[7] = "Multiple";
constraint[8] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-drop-out";
- descriptor->title = "Color Drop Out";
- descriptor->desc = "Color Drop Out";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const) * 9;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = COLOR_DROP_OUT;
+ descriptor->descriptor->name = "color-drop-out";
+ descriptor->descriptor->title = "Color Drop Out";
+ descriptor->descriptor->desc = "Color Drop Out";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const) * 9;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_drop_out_aggressiveness()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_drop_out_aggressiveness()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -10;
constraint->max = 10;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-drop-out-aggressiveness";
- descriptor->title = "Color Drop Out Aggressiveness";
- descriptor->desc = "Color Drop Out Aggressiveness";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_DROP_OUT_AGGRESSIVENESS;
+ descriptor->descriptor->name = "color-drop-out-aggressiveness";
+ descriptor->descriptor->title = "Color Drop Out Aggressiveness";
+ descriptor->descriptor->desc = "Color Drop Out Aggressiveness";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_auto_brightness_mode()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_auto_brightness_mode()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Manual";
constraint[2] = "Automatic";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-auto-brightness-mode";
- descriptor->title = "Color Auto Brightness Mode";
- descriptor->desc = "Color Auto Brightness Mode";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = COLOR_AUTO_BRIGHTNESS_MODE;
+ descriptor->descriptor->name = "color-auto-brightness-mode";
+ descriptor->descriptor->title = "Color Auto Brightness Mode";
+ descriptor->descriptor->desc = "Color Auto Brightness Mode";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_brightness()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_brightness()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -50;
constraint->max = 50;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-brightness";
- descriptor->title = "Color Brightness";
- descriptor->desc = "Color Brightness";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT ;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_BRIGHTNESS;
+ descriptor->descriptor->name = "color-brightness";
+ descriptor->descriptor->title = "Color Brightness";
+ descriptor->descriptor->desc = "Color Brightness";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT ;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_contrast()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_contrast()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -50;
constraint->max = 50;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-contrast";
- descriptor->title = "Color Contrast";
- descriptor->desc = "Color Contrast";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT ;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_CONTRAST;
+ descriptor->descriptor->name = "color-contrast";
+ descriptor->descriptor->title = "Color Contrast";
+ descriptor->descriptor->desc = "Color Contrast";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT ;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_balance_mode()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_balance_mode()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 5);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Manual";
constraint[3] = "AutomaticAdvanced";
constraint[4] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-balance-mode";
- descriptor->title = "Color Balance Mode";
- descriptor->desc = "Color Balance Mode";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 5;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = COLOR_BALANCE_MODE;
+ descriptor->descriptor->name = "color-balance-mode";
+ descriptor->descriptor->title = "Color Balance Mode";
+ descriptor->descriptor->desc = "Color Balance Mode";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 5;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_balance_agressiveness()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_balance_agressiveness()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -2;
constraint->max = 2;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-balance-aggressiveness";
- descriptor->title = "Color Balance Aggressiveness";
- descriptor->desc = "Color Balance Aggressiveness";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT ;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_BALANCE_AGGRESSIVENESS;
+ descriptor->descriptor->name = "color-balance-aggressiveness";
+ descriptor->descriptor->title = "Color Balance Aggressiveness";
+ descriptor->descriptor->desc = "Color Balance Aggressiveness";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT ;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_balance_red()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_balance_red()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -50;
constraint->max = 50;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-balance-red";
- descriptor->title = "Color Balance Red";
- descriptor->desc = "Color Balance Red";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT ;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_BALANCE_RED;
+ descriptor->descriptor->name = "color-balance-red";
+ descriptor->descriptor->title = "Color Balance Red";
+ descriptor->descriptor->desc = "Color Balance Red";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT ;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_balance_green()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_balance_green()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -50;
constraint->max = 50;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-balance-green";
- descriptor->title = "Color Balance Green";
- descriptor->desc = "Color Balance Green";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT ;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_BALANCE_GREEN;
+ descriptor->descriptor->name = "color-balance-green";
+ descriptor->descriptor->title = "Color Balance Green";
+ descriptor->descriptor->desc = "Color Balance Green";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT ;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_balance_blue()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_balance_blue()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -50;
constraint->max = 50;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-balance-blue";
- descriptor->title = "Color Balance Blue";
- descriptor->desc = "Color Balance Blue";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT ;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = COLOR_BALANCE_BLUE;
+ descriptor->descriptor->name = "color-balance-blue";
+ descriptor->descriptor->title = "Color Balance Blue";
+ descriptor->descriptor->desc = "Color Balance Blue";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT ;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_color_sharpen()
+option_descriptor_t* _kds_s2000w_option_descriptor_color_sharpen()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 5);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Normal";
constraint[3] = "Exaggerated";
constraint[4] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "color-sharpen";
- descriptor->title = "Color Sharpen";
- descriptor->desc = "Color Sharpen";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 5;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = COLOR_SHARPEN;
+ descriptor->descriptor->name = "color-sharpen";
+ descriptor->descriptor->title = "Color Sharpen";
+ descriptor->descriptor->desc = "Color Sharpen";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 5;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_binarization_contrast()
+option_descriptor_t* _kds_s2000w_option_descriptor_binarization_contrast()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = -50;
constraint->max = 50;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "binarization-contrast";
- descriptor->title = "Binarization Contrast";
- descriptor->desc = "Binarization Contrast";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = BINARIZATION_CONTRAST;
+ descriptor->descriptor->name = "binarization-contrast";
+ descriptor->descriptor->title = "Binarization Contrast";
+ descriptor->descriptor->desc = "Binarization Contrast";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_config_reset()
+option_descriptor_t* _kds_s2000w_option_descriptor_config_reset()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "config-reset";
- descriptor->title = "Reset Config";
- descriptor->desc = "Load default configuration from scanner";
- descriptor->type = SANE_TYPE_BUTTON;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = RESET;
+ descriptor->descriptor->name = "config-reset";
+ descriptor->descriptor->title = "Reset Config";
+ descriptor->descriptor->desc = "Load default configuration from scanner";
+ descriptor->descriptor->type = SANE_TYPE_BUTTON;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
/*******************************************************************************
* image processing group
******************************************************************************/
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_image_processing_group()
+option_descriptor_t* _kds_s2000w_option_descriptor_image_processing_group()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "image-processing-options";
- descriptor->title = "Image Processing Options";
- descriptor->desc = "Image Processing Options";
- descriptor->type = SANE_TYPE_GROUP;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = IMAGE_PROCESSING_GROUP;
+ descriptor->descriptor->name = "image-processing-options";
+ descriptor->descriptor->title = "Image Processing Options";
+ descriptor->descriptor->desc = "Image Processing Options";
+ descriptor->descriptor->type = SANE_TYPE_GROUP;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_skip_blank_pages()
+option_descriptor_t* _kds_s2000w_option_descriptor_skip_blank_pages()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "skip-blank-pages";
- descriptor->title = "Blank Blank Pages";
- descriptor->desc = "Blank Blank Pages";
- descriptor->type = SANE_TYPE_BOOL;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Bool);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = SKIP_BLANK_PAGES;
+ descriptor->descriptor->name = "skip-blank-pages";
+ descriptor->descriptor->title = "Blank Blank Pages";
+ descriptor->descriptor->desc = "Blank Blank Pages";
+ descriptor->descriptor->type = SANE_TYPE_BOOL;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Bool);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_skip_blank_page_content()
+option_descriptor_t* _kds_s2000w_option_descriptor_skip_blank_page_content()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 0;
constraint->max = 100;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "skip-blank-page-content";
- descriptor->title = "Skip Blank Page Content";
- descriptor->desc = "Skip Blank Page Content";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_PERCENT;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = SKIP_BLANK_PAGES_CONTENT;
+ descriptor->descriptor->name = "skip-blank-page-content";
+ descriptor->descriptor->title = "Skip Blank Page Content";
+ descriptor->descriptor->desc = "Skip Blank Page Content";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_PERCENT;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_hole_fill()
+option_descriptor_t* _kds_s2000w_option_descriptor_hole_fill()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "hole-fill";
- descriptor->title = "Hole Fill";
- descriptor->desc = "Hole Fill";
- descriptor->type = SANE_TYPE_BOOL;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Bool);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = HOLE_FILL;
+ descriptor->descriptor->name = "hole-fill";
+ descriptor->descriptor->title = "Hole Fill";
+ descriptor->descriptor->desc = "Hole Fill";
+ descriptor->descriptor->type = SANE_TYPE_BOOL;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Bool);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_post_scan_rotation()
+option_descriptor_t* _kds_s2000w_option_descriptor_post_scan_rotation()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 6);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Automatic";
constraint[4] = "Automatic270";
constraint[5] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "post-scan-rotation";
- descriptor->title = "Post Scan Rotation";
- descriptor->desc = "Post Scan Rotation";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 6;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = POST_SCAN_ROTATION;
+ descriptor->descriptor->name = "post-scan-rotation";
+ descriptor->descriptor->title = "Post Scan Rotation";
+ descriptor->descriptor->desc = "Post Scan Rotation";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 6;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_edge_fill()
+option_descriptor_t* _kds_s2000w_option_descriptor_edge_fill()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Automatic";
constraint[2] = "AutomaticIncludeTears";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "edge-fill";
- descriptor->title = "Edge Fill";
- descriptor->desc = "Edge Fill";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = EDGE_FILL;
+ descriptor->descriptor->name = "edge-fill";
+ descriptor->descriptor->title = "Edge Fill";
+ descriptor->descriptor->desc = "Edge Fill";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_image_border()
+option_descriptor_t* _kds_s2000w_option_descriptor_image_border()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Add";
constraint[2] = "Remove";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- }
-
- descriptor->name = "image-border";
- descriptor->title = "Image Border";
- descriptor->desc = "Image Border";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = IMAGE_BORDER;
+ descriptor->descriptor->name = "image-border";
+ descriptor->descriptor->title = "Image Border";
+ descriptor->descriptor->desc = "Image Border";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_jpeg_quality()
+option_descriptor_t* _kds_s2000w_option_descriptor_jpeg_quality()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 6);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "Draft";
constraint[1] = "Good";
constraint[4] = "Superior";
constraint[5] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "jpeg-quality";
- descriptor->title = "Jpeg Quality";
- descriptor->desc = "Jpeg Quality";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 6;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = JPEG_QUALITY;
+ descriptor->descriptor->name = "jpeg-quality";
+ descriptor->descriptor->title = "Jpeg Quality";
+ descriptor->descriptor->desc = "Jpeg Quality";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 6;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
/*******************************************************************************
* feeder group
******************************************************************************/
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_feeder_group()
+option_descriptor_t* _kds_s2000w_option_descriptor_feeder_group()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "feeder-options";
- descriptor->title = "Feeder Options";
- descriptor->desc = "Feeder Options";
- descriptor->type = SANE_TYPE_GROUP;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = 0;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = FEEDER_GROUP;
+ descriptor->descriptor->name = "feeder-options";
+ descriptor->descriptor->title = "Feeder Options";
+ descriptor->descriptor->desc = "Feeder Options";
+ descriptor->descriptor->type = SANE_TYPE_GROUP;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = 0;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_autostart()
+option_descriptor_t* _kds_s2000w_option_descriptor_autostart()
{
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
if (descriptor == NULL)
return NULL;
- descriptor->name = "autostart";
- descriptor->title = "Autostart";
- descriptor->desc = "Autostart";
- descriptor->type = SANE_TYPE_BOOL;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Bool);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_NONE;
+ descriptor->config_name = AUTOSTART;
+ descriptor->descriptor->name = "autostart";
+ descriptor->descriptor->title = "Autostart";
+ descriptor->descriptor->desc = "Autostart";
+ descriptor->descriptor->type = SANE_TYPE_BOOL;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Bool);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_NONE;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_max_document_length()
+option_descriptor_t* _kds_s2000w_option_descriptor_max_document_length()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 25;
constraint->max = 400;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "max-document-length";
- descriptor->title = "Max Document Length";
- descriptor->desc = "Max Document Length";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = MAX_DOCUMENT_LENGTH;
+ descriptor->descriptor->name = "max-document-length";
+ descriptor->descriptor->title = "Max Document Length";
+ descriptor->descriptor->desc = "Max Document Length";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_transport_handling()
+option_descriptor_t* _kds_s2000w_option_descriptor_transport_handling()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 5);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "Normal";
constraint[1] = "ImprovedStacking";
constraint[3] = "Special";
constraint[4] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "transport-handling";
- descriptor->title = "Transport Handling";
- descriptor->desc = "Transport Handling";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 5;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = TRANSPORT_HANDLING;
+ descriptor->descriptor->name = "transport-handling";
+ descriptor->descriptor->title = "Transport Handling";
+ descriptor->descriptor->desc = "Transport Handling";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 5;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_multifeed_sensitivity()
+option_descriptor_t* _kds_s2000w_option_descriptor_multifeed_sensitivity()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 5);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "None";
constraint[1] = "Low";
constraint[3] = "High";
constraint[4] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "multifeed-sensitivity";
- descriptor->title = "Multifeed Sensitivity";
- descriptor->desc = "Multifeed Sensitivity";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 5;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = MULTIFEED_SENSITIVITY;
+ descriptor->descriptor->name = "multifeed-sensitivity";
+ descriptor->descriptor->title = "Multifeed Sensitivity";
+ descriptor->descriptor->desc = "Multifeed Sensitivity";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 5;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor *_kds_s2000w_option_descriptor_multifeed_response()
+option_descriptor_t *_kds_s2000w_option_descriptor_multifeed_response()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
const char** constraint = malloc(sizeof(SANE_String_Const*) * 3);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "Stop";
constraint[1] = "StopAndGenerateImage";
constraint[2] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "multifeed-response";
- descriptor->title = "Multifeed Response";
- descriptor->desc = "Multifeed Response";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 3;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = MULTIFEED_RESPONSE;
+ descriptor->descriptor->name = "multifeed-response";
+ descriptor->descriptor->title = "Multifeed Response";
+ descriptor->descriptor->desc = "Multifeed Response";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 3;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_document_feeder_timeout()
+option_descriptor_t* _kds_s2000w_option_descriptor_document_feeder_timeout()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
SANE_Range* constraint = malloc(sizeof(SANE_Range));
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint->min = 0;
constraint->max = 120;
constraint->quant = 1;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "document-feeder-timeout";
- descriptor->title = "Document Feeder Timeout";
- descriptor->desc = "Document Feeder Timeout";
- descriptor->type = SANE_TYPE_INT;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_Int);
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
- descriptor->constraint.range = constraint;
+ descriptor->config_name = DOCUMENT_FEEDER_TIMEOUT;
+ descriptor->descriptor->name = "document-feeder-timeout";
+ descriptor->descriptor->title = "Document Feeder Timeout";
+ descriptor->descriptor->desc = "Document Feeder Timeout";
+ descriptor->descriptor->type = SANE_TYPE_INT;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_Int);
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_RANGE;
+ descriptor->descriptor->constraint.range = constraint;
return descriptor;
}
-SANE_Option_Descriptor* _kds_s2000w_option_descriptor_document_feeder_timeout_response()
+option_descriptor_t* _kds_s2000w_option_descriptor_document_feeder_timeout_response()
{
+ option_descriptor_t* descriptor = _kds_s2000w_option_descriptor_descriptor_init();
+ if (descriptor == NULL)
+ return NULL;
+
char** constraint = malloc(sizeof(SANE_String_Const*) * 4);
- if (constraint == NULL)
+ if (constraint == NULL) {
+ _kds_s2000w_option_descriptor_descriptor_free(descriptor);
return NULL;
+ }
constraint[0] = "Stop";
constraint[1] = "Pause";
constraint[2] = "PauseAndWait";
constraint[3] = NULL;
- SANE_Option_Descriptor* descriptor = malloc(sizeof(SANE_Option_Descriptor));
- if (descriptor == NULL) {
- free(constraint);
- constraint = NULL;
- return NULL;
- };
-
- descriptor->name = "document-feeder-timeout-response";
- descriptor->title = "Document Feeder Timeout Response";
- descriptor->desc = "Document Feeder Timeout Response";
- descriptor->type = SANE_TYPE_STRING;
- descriptor->unit = SANE_UNIT_NONE;
- descriptor->size = sizeof(SANE_String_Const*) * 4;
- descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
- descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
- descriptor->constraint.string_list = (SANE_String_Const*) constraint;
+ descriptor->config_name = DOCUMENT_FEEDER_TIMEOUT_RESPONSE;
+ descriptor->descriptor->name = "document-feeder-timeout-response";
+ descriptor->descriptor->title = "Document Feeder Timeout Response";
+ descriptor->descriptor->desc = "Document Feeder Timeout Response";
+ descriptor->descriptor->type = SANE_TYPE_STRING;
+ descriptor->descriptor->unit = SANE_UNIT_NONE;
+ descriptor->descriptor->size = sizeof(SANE_String_Const*) * 4;
+ descriptor->descriptor->cap = SANE_CAP_SOFT_DETECT | SANE_CAP_SOFT_SELECT | SANE_CAP_ADVANCED;
+ descriptor->descriptor->constraint_type = SANE_CONSTRAINT_STRING_LIST;
+ descriptor->descriptor->constraint.string_list = (SANE_String_Const*) constraint;
return descriptor;
}
kds_s2000w_descriptors[i] = NULL;
}
- for (int i = 0; i < kds_s2000w_max_option_count; i++) {
- kds_s2000w_descriptors[i] = malloc(sizeof(option_descriptor_t));
- if (kds_s2000w_descriptors[i] == NULL) {
- kds_s2000w_option_descriptors_free(kds_s2000w_descriptors);
- kds_s2000w_descriptors = NULL;
- return SANE_STATUS_NO_MEM;
- }
- kds_s2000w_descriptors[i]->descriptor = NULL;
- }
-
- kds_s2000w_descriptors[0]->config_name = OPTION_COUNT;
- kds_s2000w_descriptors[0]->descriptor = _kds_s2000w_option_descriptor_num_options();
- kds_s2000w_descriptors[1]->config_name = STANDARD_GROUP;
- kds_s2000w_descriptors[1]->descriptor = _kds_s2000w_option_descriptor_standard_group();
- kds_s2000w_descriptors[2]->config_name = COLOR_MODE;
- kds_s2000w_descriptors[2]->descriptor = _kds_s2000w_option_descriptor_color_mode();
- kds_s2000w_descriptors[3]->config_name = DPI;
- kds_s2000w_descriptors[3]->descriptor = _kds_s2000w_option_descriptor_dpi();
- kds_s2000w_descriptors[4]->config_name = SCAN_SIDE;
- kds_s2000w_descriptors[4]->descriptor = _kds_s2000w_option_descriptor_scanside();
- kds_s2000w_descriptors[5]->config_name = BOLDNESS_COLOR_GROUP;
- kds_s2000w_descriptors[5]->descriptor = _kds_s2000w_option_descriptor_boldness_color_group();
- kds_s2000w_descriptors[6]->config_name = COLOR_DROP_OUT;
- kds_s2000w_descriptors[6]->descriptor = _kds_s2000w_option_descriptor_color_drop();
- kds_s2000w_descriptors[7]->config_name = RESET;
- kds_s2000w_descriptors[7]->descriptor = _kds_s2000w_option_descriptor_config_reset();
- kds_s2000w_descriptors[8]->config_name = IMAGE_PROCESSING_GROUP;
- kds_s2000w_descriptors[8]->descriptor = _kds_s2000w_option_descriptor_image_processing_group();
- kds_s2000w_descriptors[9]->config_name = SKIP_BLANK_PAGES;
- kds_s2000w_descriptors[9]->descriptor = _kds_s2000w_option_descriptor_skip_blank_pages();
- kds_s2000w_descriptors[10]->config_name = FEEDER_GROUP;
- kds_s2000w_descriptors[10]->descriptor = _kds_s2000w_option_descriptor_feeder_group();
- kds_s2000w_descriptors[11]->config_name = AUTOSTART;
- kds_s2000w_descriptors[11]->descriptor = _kds_s2000w_option_descriptor_autostart();
+ kds_s2000w_descriptors[0] = _kds_s2000w_option_descriptor_num_options();;
+ kds_s2000w_descriptors[1] = _kds_s2000w_option_descriptor_standard_group();
+ kds_s2000w_descriptors[2] = _kds_s2000w_option_descriptor_color_mode();
+ kds_s2000w_descriptors[3] = _kds_s2000w_option_descriptor_dpi();
+ kds_s2000w_descriptors[4] = _kds_s2000w_option_descriptor_scanside();
+ kds_s2000w_descriptors[5] = _kds_s2000w_option_descriptor_boldness_color_group();
+ kds_s2000w_descriptors[6] = _kds_s2000w_option_descriptor_color_drop();
+ kds_s2000w_descriptors[7] = _kds_s2000w_option_descriptor_config_reset();
+ kds_s2000w_descriptors[8] = _kds_s2000w_option_descriptor_image_processing_group();
+ kds_s2000w_descriptors[9] = _kds_s2000w_option_descriptor_skip_blank_pages();
+ kds_s2000w_descriptors[10] = _kds_s2000w_option_descriptor_feeder_group();
+ kds_s2000w_descriptors[11] = _kds_s2000w_option_descriptor_autostart();
return _kds_s2000w_option_descriptor_validate();
}
kds_s2000w_descriptors[i] = NULL;
}
- for (int i = 0; i < kds_s2000w_max_option_count; i++) {
- kds_s2000w_descriptors[i] = malloc(sizeof(option_descriptor_t));
- if (kds_s2000w_descriptors[i] == NULL) {
- kds_s2000w_option_descriptors_free(kds_s2000w_descriptors);
- kds_s2000w_descriptors = NULL;
- return SANE_STATUS_NO_MEM;
- }
- kds_s2000w_descriptors[i]->descriptor = NULL;
- }
-
- kds_s2000w_descriptors[0]->config_name = OPTION_COUNT;
- kds_s2000w_descriptors[0]->descriptor = _kds_s2000w_option_descriptor_num_options();
- kds_s2000w_descriptors[1]->config_name = STANDARD_GROUP;
- kds_s2000w_descriptors[1]->descriptor = _kds_s2000w_option_descriptor_standard_group();
- kds_s2000w_descriptors[2]->config_name = SCAN_SOURCE;
- kds_s2000w_descriptors[2]->descriptor = _kds_s2000w_option_descriptor_scan_source();
- kds_s2000w_descriptors[3]->config_name = COLOR_MODE;
- kds_s2000w_descriptors[3]->descriptor = _kds_s2000w_option_descriptor_color_mode();
- kds_s2000w_descriptors[4]->config_name = DPI;
- kds_s2000w_descriptors[4]->descriptor = _kds_s2000w_option_descriptor_dpi();
- kds_s2000w_descriptors[5]->config_name = SCAN_SIDE;
- kds_s2000w_descriptors[5]->descriptor = _kds_s2000w_option_descriptor_scanside();
- kds_s2000w_descriptors[6]->config_name = BOLDNESS_SMOOTHING_GROUP;
- kds_s2000w_descriptors[6]->descriptor = _kds_s2000w_option_descriptor_boldness_smoothing_group();
- kds_s2000w_descriptors[7]->config_name = FOREGROUND_BOLDNESS_MODE;
- kds_s2000w_descriptors[7]->descriptor = _kds_s2000w_option_descriptor_foreground_boldness_mode();
- kds_s2000w_descriptors[8]->config_name = FOREGROUND_BOLDNESS_AGGRESSIVENESS;
- kds_s2000w_descriptors[8]->descriptor = _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness();
- kds_s2000w_descriptors[9]->config_name = BACKGROUND_SMOOTHING_MODE;
- kds_s2000w_descriptors[9]->descriptor = _kds_s2000w_option_descriptor_background_smoothing_mode();
- kds_s2000w_descriptors[10]->config_name = BACKGROUND_SMOOTHING_AGGRESSIVENESS;
- kds_s2000w_descriptors[10]->descriptor = _kds_s2000w_option_descriptor_background_smoothing_aggressiveness();
- kds_s2000w_descriptors[11]->config_name = BOLDNESS_COLOR_GROUP;
- kds_s2000w_descriptors[11]->descriptor = _kds_s2000w_option_descriptor_boldness_color_group();
- kds_s2000w_descriptors[12]->config_name = COLOR_DROP_OUT;
- kds_s2000w_descriptors[12]->descriptor = _kds_s2000w_option_descriptor_color_drop();
- kds_s2000w_descriptors[13]->config_name = COLOR_DROP_OUT_AGGRESSIVENESS;
- kds_s2000w_descriptors[13]->descriptor = _kds_s2000w_option_descriptor_color_drop_out_aggressiveness();
- kds_s2000w_descriptors[14]->config_name = COLOR_AUTO_BRIGHTNESS_MODE;
- kds_s2000w_descriptors[14]->descriptor = _kds_s2000w_option_descriptor_color_auto_brightness_mode();
- kds_s2000w_descriptors[15]->config_name = COLOR_BALANCE_MODE;
- kds_s2000w_descriptors[15]->descriptor = _kds_s2000w_option_descriptor_color_balance_mode();
- kds_s2000w_descriptors[16]->config_name = COLOR_BALANCE_AGGRESSIVENESS;
- kds_s2000w_descriptors[16]->descriptor = _kds_s2000w_option_descriptor_color_balance_agressiveness();
- kds_s2000w_descriptors[17]->config_name = COLOR_BALANCE_RED;
- kds_s2000w_descriptors[17]->descriptor = _kds_s2000w_option_descriptor_color_balance_red();
- kds_s2000w_descriptors[18]->config_name = COLOR_BALANCE_GREEN;
- kds_s2000w_descriptors[18]->descriptor = _kds_s2000w_option_descriptor_color_balance_green();
- kds_s2000w_descriptors[19]->config_name = COLOR_BALANCE_BLUE;
- kds_s2000w_descriptors[19]->descriptor = _kds_s2000w_option_descriptor_color_balance_blue();
- kds_s2000w_descriptors[20]->config_name = BINARIZATION_CONTRAST;
- kds_s2000w_descriptors[20]->descriptor = _kds_s2000w_option_descriptor_binarization_contrast();
- kds_s2000w_descriptors[21]->config_name = RESET;
- kds_s2000w_descriptors[21]->descriptor = _kds_s2000w_option_descriptor_config_reset();
- kds_s2000w_descriptors[22]->config_name = IMAGE_PROCESSING_GROUP;
- kds_s2000w_descriptors[22]->descriptor = _kds_s2000w_option_descriptor_image_processing_group();
- kds_s2000w_descriptors[23]->config_name = SKIP_BLANK_PAGES;
- kds_s2000w_descriptors[23]->descriptor = _kds_s2000w_option_descriptor_skip_blank_pages();
- kds_s2000w_descriptors[24]->config_name = FEEDER_GROUP;
- kds_s2000w_descriptors[24]->descriptor = _kds_s2000w_option_descriptor_feeder_group();
- kds_s2000w_descriptors[25]->config_name = AUTOSTART;
- kds_s2000w_descriptors[25]->descriptor = _kds_s2000w_option_descriptor_autostart();
+ kds_s2000w_descriptors[0] = _kds_s2000w_option_descriptor_num_options();
+ kds_s2000w_descriptors[1] = _kds_s2000w_option_descriptor_standard_group();
+ kds_s2000w_descriptors[2] = _kds_s2000w_option_descriptor_scan_source();
+ kds_s2000w_descriptors[3] = _kds_s2000w_option_descriptor_color_mode();
+ kds_s2000w_descriptors[4] = _kds_s2000w_option_descriptor_dpi();
+ kds_s2000w_descriptors[5] = _kds_s2000w_option_descriptor_scanside();
+ kds_s2000w_descriptors[6] = _kds_s2000w_option_descriptor_boldness_smoothing_group();
+ kds_s2000w_descriptors[7] = _kds_s2000w_option_descriptor_foreground_boldness_mode();
+ kds_s2000w_descriptors[8] = _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness();
+ kds_s2000w_descriptors[9] = _kds_s2000w_option_descriptor_background_smoothing_mode();
+ kds_s2000w_descriptors[10] = _kds_s2000w_option_descriptor_background_smoothing_aggressiveness();
+ kds_s2000w_descriptors[11] = _kds_s2000w_option_descriptor_boldness_color_group();
+ kds_s2000w_descriptors[12] = _kds_s2000w_option_descriptor_color_drop();
+ kds_s2000w_descriptors[13] = _kds_s2000w_option_descriptor_color_drop_out_aggressiveness();
+ kds_s2000w_descriptors[14] = _kds_s2000w_option_descriptor_color_auto_brightness_mode();
+ kds_s2000w_descriptors[15] = _kds_s2000w_option_descriptor_color_balance_mode();
+ kds_s2000w_descriptors[16] = _kds_s2000w_option_descriptor_color_balance_agressiveness();
+ kds_s2000w_descriptors[17] = _kds_s2000w_option_descriptor_color_balance_red();
+ kds_s2000w_descriptors[18] = _kds_s2000w_option_descriptor_color_balance_green();
+ kds_s2000w_descriptors[19] = _kds_s2000w_option_descriptor_color_balance_blue();
+ kds_s2000w_descriptors[20] = _kds_s2000w_option_descriptor_binarization_contrast();
+ kds_s2000w_descriptors[21] = _kds_s2000w_option_descriptor_config_reset();
+ kds_s2000w_descriptors[22] = _kds_s2000w_option_descriptor_image_processing_group();
+ kds_s2000w_descriptors[23] = _kds_s2000w_option_descriptor_skip_blank_pages();
+ kds_s2000w_descriptors[24] = _kds_s2000w_option_descriptor_feeder_group();
+ kds_s2000w_descriptors[25] = _kds_s2000w_option_descriptor_autostart();
return _kds_s2000w_option_descriptor_validate();
}
kds_s2000w_descriptors[i] = NULL;
}
- for (int i = 0; i < kds_s2000w_max_option_count; i++) {
- kds_s2000w_descriptors[i] = malloc(sizeof(option_descriptor_t));
- if (kds_s2000w_descriptors[i] == NULL) {
- kds_s2000w_option_descriptors_free(kds_s2000w_descriptors);
- kds_s2000w_descriptors = NULL;
- return SANE_STATUS_NO_MEM;
- }
- kds_s2000w_descriptors[i]->descriptor = NULL;
- }
-
- kds_s2000w_descriptors[0]->config_name = OPTION_COUNT;
- kds_s2000w_descriptors[0]->descriptor = _kds_s2000w_option_descriptor_num_options();
- kds_s2000w_descriptors[1]->config_name = STANDARD_GROUP;
- kds_s2000w_descriptors[1]->descriptor = _kds_s2000w_option_descriptor_standard_group();
- kds_s2000w_descriptors[2]->config_name = SCAN_SOURCE;
- kds_s2000w_descriptors[2]->descriptor = _kds_s2000w_option_descriptor_scan_source();
- kds_s2000w_descriptors[3]->config_name = COLOR_MODE;
- kds_s2000w_descriptors[3]->descriptor = _kds_s2000w_option_descriptor_color_mode();
- kds_s2000w_descriptors[4]->config_name = DPI;
- kds_s2000w_descriptors[4]->descriptor = _kds_s2000w_option_descriptor_dpi();
- kds_s2000w_descriptors[5]->config_name = SCAN_SIDE;
- kds_s2000w_descriptors[5]->descriptor = _kds_s2000w_option_descriptor_scanside();
- kds_s2000w_descriptors[6]->config_name = GEOMETRY_GROUP;
- kds_s2000w_descriptors[6]->descriptor = _kds_s2000w_option_descriptor_geometry_group();
- kds_s2000w_descriptors[7]->config_name = CROPPING_MODE;
- kds_s2000w_descriptors[7]->descriptor = _kds_s2000w_option_descriptor_cropping_mode();
- kds_s2000w_descriptors[8]->config_name = CROPPING_IMAGE;
- kds_s2000w_descriptors[8]->descriptor = _kds_s2000w_option_descriptor_cropping_image();
- kds_s2000w_descriptors[9]->config_name = IMAGE_OFFSET_X;
- kds_s2000w_descriptors[9]->descriptor = _kds_s2000w_option_descriptor_image_offset_x();
- kds_s2000w_descriptors[10]->config_name = IMAGE_OFFSET_Y;
- kds_s2000w_descriptors[10]->descriptor = _kds_s2000w_option_descriptor_image_offset_y();
- kds_s2000w_descriptors[11]->config_name = IMAGE_WIDTH;
- kds_s2000w_descriptors[11]->descriptor = _kds_s2000w_option_descriptor_image_width();
- kds_s2000w_descriptors[12]->config_name = IMAGE_HEIGHT;
- kds_s2000w_descriptors[12]->descriptor = _kds_s2000w_option_descriptor_image_height();
- kds_s2000w_descriptors[13]->config_name = BOLDNESS_SMOOTHING_GROUP;
- kds_s2000w_descriptors[13]->descriptor = _kds_s2000w_option_descriptor_boldness_smoothing_group();
- kds_s2000w_descriptors[14]->config_name = FOREGROUND_BOLDNESS_MODE;
- kds_s2000w_descriptors[14]->descriptor = _kds_s2000w_option_descriptor_foreground_boldness_mode();
- kds_s2000w_descriptors[15]->config_name = FOREGROUND_BOLDNESS_AGGRESSIVENESS;
- kds_s2000w_descriptors[15]->descriptor = _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness();
- kds_s2000w_descriptors[16]->config_name = BACKGROUND_SMOOTHING_MODE;
- kds_s2000w_descriptors[16]->descriptor = _kds_s2000w_option_descriptor_background_smoothing_mode();
- kds_s2000w_descriptors[17]->config_name = BACKGROUND_SMOOTHING_AGGRESSIVENESS;
- kds_s2000w_descriptors[17]->descriptor = _kds_s2000w_option_descriptor_background_smoothing_aggressiveness();
- kds_s2000w_descriptors[18]->config_name = BOLDNESS_COLOR_GROUP;
- kds_s2000w_descriptors[18]->descriptor = _kds_s2000w_option_descriptor_boldness_color_group();
- kds_s2000w_descriptors[19]->config_name = COLOR_DROP_OUT;
- kds_s2000w_descriptors[19]->descriptor = _kds_s2000w_option_descriptor_color_drop();
- kds_s2000w_descriptors[20]->config_name = COLOR_DROP_OUT_AGGRESSIVENESS;
- kds_s2000w_descriptors[20]->descriptor = _kds_s2000w_option_descriptor_color_drop_out_aggressiveness();
- kds_s2000w_descriptors[21]->config_name = COLOR_AUTO_BRIGHTNESS_MODE;
- kds_s2000w_descriptors[21]->descriptor = _kds_s2000w_option_descriptor_color_auto_brightness_mode();
- kds_s2000w_descriptors[22]->config_name = COLOR_BRIGHTNESS;
- kds_s2000w_descriptors[22]->descriptor = _kds_s2000w_option_descriptor_color_brightness();
- kds_s2000w_descriptors[23]->config_name = COLOR_CONTRAST;
- kds_s2000w_descriptors[23]->descriptor = _kds_s2000w_option_descriptor_color_contrast();
- kds_s2000w_descriptors[24]->config_name = COLOR_BALANCE_MODE;
- kds_s2000w_descriptors[24]->descriptor = _kds_s2000w_option_descriptor_color_balance_mode();
- kds_s2000w_descriptors[25]->config_name = COLOR_BALANCE_AGGRESSIVENESS;
- kds_s2000w_descriptors[25]->descriptor = _kds_s2000w_option_descriptor_color_balance_agressiveness();
- kds_s2000w_descriptors[26]->config_name = COLOR_BALANCE_RED;
- kds_s2000w_descriptors[26]->descriptor = _kds_s2000w_option_descriptor_color_balance_red();
- kds_s2000w_descriptors[27]->config_name = COLOR_BALANCE_GREEN;
- kds_s2000w_descriptors[27]->descriptor = _kds_s2000w_option_descriptor_color_balance_green();
- kds_s2000w_descriptors[28]->config_name = COLOR_BALANCE_BLUE;
- kds_s2000w_descriptors[28]->descriptor = _kds_s2000w_option_descriptor_color_balance_blue();
- kds_s2000w_descriptors[29]->config_name = COLOR_SHARPEN;
- kds_s2000w_descriptors[29]->descriptor = _kds_s2000w_option_descriptor_color_sharpen();
- kds_s2000w_descriptors[30]->config_name = BINARIZATION_CONTRAST;
- kds_s2000w_descriptors[30]->descriptor = _kds_s2000w_option_descriptor_binarization_contrast();
- kds_s2000w_descriptors[31]->config_name = RESET;
- kds_s2000w_descriptors[31]->descriptor = _kds_s2000w_option_descriptor_config_reset();
- kds_s2000w_descriptors[32]->config_name = IMAGE_PROCESSING_GROUP;
- kds_s2000w_descriptors[32]->descriptor = _kds_s2000w_option_descriptor_image_processing_group();
- kds_s2000w_descriptors[33]->config_name = SKIP_BLANK_PAGES;
- kds_s2000w_descriptors[33]->descriptor = _kds_s2000w_option_descriptor_skip_blank_pages();
- kds_s2000w_descriptors[34]->config_name = SKIP_BLANK_PAGES_CONTENT;
- kds_s2000w_descriptors[34]->descriptor = _kds_s2000w_option_descriptor_skip_blank_page_content();
- kds_s2000w_descriptors[35]->config_name = HOLE_FILL;
- kds_s2000w_descriptors[35]->descriptor = _kds_s2000w_option_descriptor_hole_fill();
- kds_s2000w_descriptors[36]->config_name = POST_SCAN_ROTATION;
- kds_s2000w_descriptors[36]->descriptor = _kds_s2000w_option_descriptor_post_scan_rotation();
- kds_s2000w_descriptors[37]->config_name = EDGE_FILL;
- kds_s2000w_descriptors[37]->descriptor = _kds_s2000w_option_descriptor_edge_fill();
- kds_s2000w_descriptors[38]->config_name = IMAGE_BORDER;
- kds_s2000w_descriptors[38]->descriptor = _kds_s2000w_option_descriptor_image_border();
- kds_s2000w_descriptors[39]->config_name = JPEG_QUALITY;
- kds_s2000w_descriptors[39]->descriptor = _kds_s2000w_option_descriptor_jpeg_quality();
- kds_s2000w_descriptors[40]->config_name = FEEDER_GROUP;
- kds_s2000w_descriptors[40]->descriptor = _kds_s2000w_option_descriptor_feeder_group();
- kds_s2000w_descriptors[41]->config_name = AUTOSTART;
- kds_s2000w_descriptors[41]->descriptor = _kds_s2000w_option_descriptor_autostart();
- kds_s2000w_descriptors[42]->config_name = MAX_DOCUMENT_LENGTH;
- kds_s2000w_descriptors[42]->descriptor = _kds_s2000w_option_descriptor_max_document_length();
- kds_s2000w_descriptors[43]->config_name = TRANSPORT_HANDLING;
- kds_s2000w_descriptors[43]->descriptor = _kds_s2000w_option_descriptor_transport_handling();
- kds_s2000w_descriptors[44]->config_name = MULTIFEED_SENSITIVITY;
- kds_s2000w_descriptors[44]->descriptor = _kds_s2000w_option_descriptor_multifeed_sensitivity();
- kds_s2000w_descriptors[45]->config_name = MULTIFEED_RESPONSE;
- kds_s2000w_descriptors[45]->descriptor = _kds_s2000w_option_descriptor_multifeed_response();
- kds_s2000w_descriptors[46]->config_name = DOCUMENT_FEEDER_TIMEOUT;
- kds_s2000w_descriptors[46]->descriptor = _kds_s2000w_option_descriptor_document_feeder_timeout();
- kds_s2000w_descriptors[47]->config_name = DOCUMENT_FEEDER_TIMEOUT_RESPONSE;
- kds_s2000w_descriptors[47]->descriptor = _kds_s2000w_option_descriptor_document_feeder_timeout_response();
+ kds_s2000w_descriptors[0] = _kds_s2000w_option_descriptor_num_options();
+ kds_s2000w_descriptors[1] = _kds_s2000w_option_descriptor_standard_group();
+ kds_s2000w_descriptors[2] = _kds_s2000w_option_descriptor_scan_source();
+ kds_s2000w_descriptors[3] = _kds_s2000w_option_descriptor_color_mode();
+ kds_s2000w_descriptors[4] = _kds_s2000w_option_descriptor_dpi();
+ kds_s2000w_descriptors[5] = _kds_s2000w_option_descriptor_scanside();
+ kds_s2000w_descriptors[6] = _kds_s2000w_option_descriptor_geometry_group();
+ kds_s2000w_descriptors[7] = _kds_s2000w_option_descriptor_cropping_mode();
+ kds_s2000w_descriptors[8] = _kds_s2000w_option_descriptor_cropping_image();
+ kds_s2000w_descriptors[9] = _kds_s2000w_option_descriptor_image_offset_x();
+ kds_s2000w_descriptors[10] = _kds_s2000w_option_descriptor_image_offset_y();
+ kds_s2000w_descriptors[11] = _kds_s2000w_option_descriptor_image_width();
+ kds_s2000w_descriptors[12] = _kds_s2000w_option_descriptor_image_height();
+ kds_s2000w_descriptors[13] = _kds_s2000w_option_descriptor_boldness_smoothing_group();
+ kds_s2000w_descriptors[14] = _kds_s2000w_option_descriptor_foreground_boldness_mode();
+ kds_s2000w_descriptors[15] = _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness();
+ kds_s2000w_descriptors[16] = _kds_s2000w_option_descriptor_background_smoothing_mode();
+ kds_s2000w_descriptors[17] = _kds_s2000w_option_descriptor_background_smoothing_aggressiveness();
+ kds_s2000w_descriptors[18] = _kds_s2000w_option_descriptor_boldness_color_group();
+ kds_s2000w_descriptors[19] = _kds_s2000w_option_descriptor_color_drop();
+ kds_s2000w_descriptors[20] = _kds_s2000w_option_descriptor_color_drop_out_aggressiveness();
+ kds_s2000w_descriptors[21] = _kds_s2000w_option_descriptor_color_auto_brightness_mode();
+ kds_s2000w_descriptors[22] = _kds_s2000w_option_descriptor_color_brightness();
+ kds_s2000w_descriptors[23] = _kds_s2000w_option_descriptor_color_contrast();
+ kds_s2000w_descriptors[24] = _kds_s2000w_option_descriptor_color_balance_mode();
+ kds_s2000w_descriptors[25] = _kds_s2000w_option_descriptor_color_balance_agressiveness();
+ kds_s2000w_descriptors[26] = _kds_s2000w_option_descriptor_color_balance_red();
+ kds_s2000w_descriptors[27] = _kds_s2000w_option_descriptor_color_balance_green();
+ kds_s2000w_descriptors[28] = _kds_s2000w_option_descriptor_color_balance_blue();
+ kds_s2000w_descriptors[29] = _kds_s2000w_option_descriptor_color_sharpen();
+ kds_s2000w_descriptors[30] = _kds_s2000w_option_descriptor_binarization_contrast();
+ kds_s2000w_descriptors[31] = _kds_s2000w_option_descriptor_config_reset();
+ kds_s2000w_descriptors[32] = _kds_s2000w_option_descriptor_image_processing_group();
+ kds_s2000w_descriptors[33] = _kds_s2000w_option_descriptor_skip_blank_pages();
+ kds_s2000w_descriptors[34] = _kds_s2000w_option_descriptor_skip_blank_page_content();
+ kds_s2000w_descriptors[35] = _kds_s2000w_option_descriptor_hole_fill();
+ kds_s2000w_descriptors[36] = _kds_s2000w_option_descriptor_post_scan_rotation();
+ kds_s2000w_descriptors[37] = _kds_s2000w_option_descriptor_edge_fill();
+ kds_s2000w_descriptors[38] = _kds_s2000w_option_descriptor_image_border();
+ kds_s2000w_descriptors[39] = _kds_s2000w_option_descriptor_jpeg_quality();
+ kds_s2000w_descriptors[40] = _kds_s2000w_option_descriptor_feeder_group();
+ kds_s2000w_descriptors[41] = _kds_s2000w_option_descriptor_autostart();
+ kds_s2000w_descriptors[42] = _kds_s2000w_option_descriptor_max_document_length();
+ kds_s2000w_descriptors[43] = _kds_s2000w_option_descriptor_transport_handling();
+ kds_s2000w_descriptors[44] = _kds_s2000w_option_descriptor_multifeed_sensitivity();
+ kds_s2000w_descriptors[45] = _kds_s2000w_option_descriptor_multifeed_response();
+ kds_s2000w_descriptors[46] = _kds_s2000w_option_descriptor_document_feeder_timeout();
+ kds_s2000w_descriptors[47] = _kds_s2000w_option_descriptor_document_feeder_timeout_response();
return _kds_s2000w_option_descriptor_validate();
}