From: Bastian Dehn Date: Mon, 22 Sep 2025 13:15:19 +0000 (+0200) Subject: change defines const config names X-Git-Tag: v1.1.5^2~3^2~1 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=08e6d88070f20cf9f611cdf2d06ca63dc77dc458;p=sane-kds-s2000w-net.git change defines const config names --- diff --git a/src/kds_s2000w_handler_opts.c b/src/kds_s2000w_handler_opts.c index 1a61aca..2e7ae7c 100644 --- a/src/kds_s2000w_handler_opts.c +++ b/src/kds_s2000w_handler_opts.c @@ -6,7 +6,6 @@ #include "kds_s2000w_debug.h" #define AUTOSTART_ON 1 -#define OPTION_COUNT 47 void _kds_s2000w_handler_opts_write_value_to_json(json_object* value_object, SANE_Value_Type value_type, void* value) { @@ -295,7 +294,7 @@ void kds_s2000w_handler_opts_get_option(handler* h, uint32_t option, void* value if (option == 0) { config = json_object_object_get(h->current_scanner_config, "Configuration"); int32_t* int_value_ptr = (int32_t*) value; - *int_value_ptr = OPTION_COUNT; + *int_value_ptr = MAX_OPTION_COUNT; return; } diff --git a/src/kds_s2000w_option_descriptors.c b/src/kds_s2000w_option_descriptors.c index 1aa117b..cb49886 100644 --- a/src/kds_s2000w_option_descriptors.c +++ b/src/kds_s2000w_option_descriptors.c @@ -4,8 +4,6 @@ #include "kds_s2000w_option_descriptors.h" #include "kds_s2000w_debug.h" -#define MAX_OPTION_COUNT 47 - option_descriptor** descriptors = NULL; SANE_Option_Descriptor _kds_s2000w_option_descriptor_standard_group() @@ -1118,99 +1116,99 @@ void kds_s2000w_option_descriptors_init() descriptors[i] = malloc(sizeof(option_descriptor)); } - descriptors[0]->config_name = "OptionCount"; + descriptors[0]->config_name = OPTION_COUNT; descriptors[0]->descriptor = _kds_s2000w_option_descriptor_num_options(); descriptors[1]->config_name = STANDARD_GROUP; descriptors[1]->descriptor = _kds_s2000w_option_descriptor_standard_group(); - descriptors[2]->config_name = "ScanSource"; + descriptors[2]->config_name = SCAN_SOURCE; descriptors[2]->descriptor = _kds_s2000w_option_descriptor_scan_source(); - descriptors[3]->config_name = "ColorMode"; + descriptors[3]->config_name = COLOR_MODE; descriptors[3]->descriptor = _kds_s2000w_option_descriptor_color_mode(); - descriptors[4]->config_name = "DPI"; + descriptors[4]->config_name = DPI; descriptors[4]->descriptor = _kds_s2000w_option_descriptor_dpi(); - descriptors[5]->config_name = "ScanSide"; + descriptors[5]->config_name = SCAN_SIDE; descriptors[5]->descriptor = _kds_s2000w_option_descriptor_scanside(); descriptors[6]->config_name = GEOMETRY_GROUP; descriptors[6]->descriptor = _kds_s2000w_option_descriptor_geometry_group(); - descriptors[7]->config_name = "CroppingMode"; + descriptors[7]->config_name = CROPPING_MODE; descriptors[7]->descriptor = _kds_s2000w_option_descriptor_cropping_mode(); - descriptors[8]->config_name = "CroppingImage"; + descriptors[8]->config_name = CROPPING_IMAGE; descriptors[8]->descriptor = _kds_s2000w_option_descriptor_cropping_image(); - descriptors[9]->config_name = "ImageOffsetX"; + descriptors[9]->config_name = IMAGE_OFFSET_X; descriptors[9]->descriptor = _kds_s2000w_option_descriptor_image_offset_x(); - descriptors[10]->config_name = "ImageOffsetY"; + descriptors[10]->config_name = IMAGE_OFFSET_Y; descriptors[10]->descriptor = _kds_s2000w_option_descriptor_image_offset_y(); - descriptors[11]->config_name = "ImageWidth"; + descriptors[11]->config_name = IMAGE_WIDTH; descriptors[11]->descriptor = _kds_s2000w_option_descriptor_image_width(); - descriptors[12]->config_name = "ImageHeight"; + descriptors[12]->config_name = IMAGE_HEIGHT; descriptors[12]->descriptor = _kds_s2000w_option_descriptor_image_height(); descriptors[13]->config_name = BOLDNESS_SMOOTHING_GROUP; descriptors[13]->descriptor = _kds_s2000w_option_descriptor_boldness_smoothing_group(); - descriptors[14]->config_name = "ForegroundBoldnessMode"; + descriptors[14]->config_name = FOREGROUND_BOLDNESS_MODE; descriptors[14]->descriptor = _kds_s2000w_option_descriptor_foreground_boldness_mode(); - descriptors[15]->config_name = "ForegroundBoldnessAggressiveness"; + descriptors[15]->config_name = FOREGROUND_BOLDNESS_AGGRESSIVENESS; descriptors[15]->descriptor = _kds_s2000w_option_descriptor_foreground_boldness_aggressiveness(); - descriptors[16]->config_name = "BackgroundSmoothingMode"; + descriptors[16]->config_name = BACKGROUND_SMOOTHING_MODE; descriptors[16]->descriptor = _kds_s2000w_option_descriptor_background_smoothing_mode(); - descriptors[17]->config_name = "BackgroundSmoothingAggressiveness"; + descriptors[17]->config_name = BACKGROUND_SMOOTHING_AGGRESSIVENESS; descriptors[17]->descriptor = _kds_s2000w_option_descriptor_background_smoothing_aggressiveness(); descriptors[18]->config_name = BOLDNESS_COLOR_GROUP; descriptors[18]->descriptor = _kds_s2000w_option_descriptor_boldness_color_group(); - descriptors[19]->config_name = "ColorDropOut"; + descriptors[19]->config_name = COLOR_DROP_OUT; descriptors[19]->descriptor = _kds_s2000w_option_descriptor_color_drop(); - descriptors[20]->config_name = "ColorDropOutAggressiveness"; + descriptors[20]->config_name = COLOR_DROP_OUT_AGGRESSIVENESS; descriptors[20]->descriptor = _kds_s2000w_option_descriptor_color_drop_out_aggressiveness(); - descriptors[21]->config_name = "ColorAutoBrightnessMode"; + descriptors[21]->config_name = COLOR_AUTO_BRIGHTNESS_MODE; descriptors[21]->descriptor = _kds_s2000w_option_descriptor_color_auto_brightness_mode(); - descriptors[22]->config_name = "ColorBrightness"; + descriptors[22]->config_name = COLOR_BRIGHTNESS; descriptors[22]->descriptor = _kds_s2000w_option_descriptor_color_brightness(); - descriptors[23]->config_name = "ColorContrast"; + descriptors[23]->config_name = COLOR_CONTRAST; descriptors[23]->descriptor = _kds_s2000w_option_descriptor_color_contrast(); - descriptors[24]->config_name = "ColorBalanceMode"; + descriptors[24]->config_name = COLOR_BALANCE_MODE; descriptors[24]->descriptor = _kds_s2000w_option_descriptor_color_balance_mode(); - descriptors[25]->config_name = "ColorBalanceAggressiveness"; + descriptors[25]->config_name = COLOR_BALANCE_AGGRESSIVENESS; descriptors[25]->descriptor = _kds_s2000w_option_descriptor_color_balance_agressiveness(); - descriptors[26]->config_name = "ColorBalanceRed"; + descriptors[26]->config_name = COLOR_BALANCE_RED; descriptors[26]->descriptor = _kds_s2000w_option_descriptor_color_balance_red(); - descriptors[27]->config_name = "ColorBalanceGreen"; + descriptors[27]->config_name = COLOR_BALANCE_GREEN; descriptors[27]->descriptor = _kds_s2000w_option_descriptor_color_balance_green(); - descriptors[28]->config_name = "ColorBalanceBlue"; + descriptors[28]->config_name = COLOR_BALANCE_BLUE; descriptors[28]->descriptor = _kds_s2000w_option_descriptor_color_balance_blue(); - descriptors[29]->config_name = "ColorSharpen"; + descriptors[29]->config_name = COLOR_SHARPEN; descriptors[29]->descriptor = _kds_s2000w_option_descriptor_color_sharpen(); - descriptors[30]->config_name = "BinarizationContrast"; + descriptors[30]->config_name = BINARIZATION_CONTRAST; descriptors[30]->descriptor = _kds_s2000w_option_descriptor_binarization_contrast(); - descriptors[31]->config_name = "Reset"; + descriptors[31]->config_name = RESET; descriptors[31]->descriptor = _kds_s2000w_option_descriptor_config_reset(); descriptors[32]->config_name = IMAGE_PROCESSING_GROUP; descriptors[32]->descriptor = _kds_s2000w_option_descriptor_image_processing_group(); - descriptors[33]->config_name = "SkipBlankPages"; + descriptors[33]->config_name = SKIP_BLANK_PAGES; descriptors[33]->descriptor = _kds_s2000w_option_descriptor_skip_blank_pages(); - descriptors[34]->config_name = "SkipBlankPagesContent"; + descriptors[34]->config_name = SKIP_BLANK_PAGES_CONTENT; descriptors[34]->descriptor = _kds_s2000w_option_descriptor_skip_blank_page_content(); - descriptors[35]->config_name = "HoleFill"; + descriptors[35]->config_name = HOLE_FILL; descriptors[35]->descriptor = _kds_s2000w_option_descriptor_hole_fill(); - descriptors[36]->config_name = "PostScanRotation"; + descriptors[36]->config_name = POST_SCAN_ROTATION; descriptors[36]->descriptor = _kds_s2000w_option_descriptor_post_scan_rotation(); - descriptors[37]->config_name = "EdgeFill"; + descriptors[37]->config_name = EDGE_FILL; descriptors[37]->descriptor = _kds_s2000w_option_descriptor_edge_fill(); - descriptors[38]->config_name = "ImageBorder"; + descriptors[38]->config_name = IMAGE_BORDER; descriptors[38]->descriptor = _kds_s2000w_option_descriptor_image_border(); - descriptors[39]->config_name = "JpegQuality"; + descriptors[39]->config_name = JPEG_QUALITY; descriptors[39]->descriptor = _kds_s2000w_option_descriptor_jpeg_quality(); descriptors[40]->config_name = FEEDER_GROUP; descriptors[40]->descriptor = _kds_s2000w_option_descriptor_feeder_group(); - descriptors[41]->config_name = "MaxDocumentLength"; + descriptors[41]->config_name = MAX_DOCUMENT_LENGTH; descriptors[41]->descriptor = _kds_s2000w_option_descriptor_max_document_length(); - descriptors[42]->config_name = "TransportHandling"; + descriptors[42]->config_name = TRANSPORT_HANDLING; descriptors[42]->descriptor = _kds_s2000w_option_descriptor_transport_handling(); - descriptors[43]->config_name = "MultifeedSensitivity"; + descriptors[43]->config_name = MULTIFEED_SENSITIVITY; descriptors[43]->descriptor = _kds_s2000w_option_descriptor_multifeed_sensitivity(); - descriptors[44]->config_name = "MultifeedResponse"; + descriptors[44]->config_name = MULTIFEED_RESPONSE; descriptors[44]->descriptor = _kds_s2000w_option_descriptor_multifeed_response(); - descriptors[45]->config_name = "DocumentFeederTimeout"; + descriptors[45]->config_name = DOCUMENT_FEEDER_TIMEOUT; descriptors[45]->descriptor = _kds_s2000w_option_descriptor_document_feeder_timeout(); - descriptors[46]->config_name = "DocumentFeederTimeoutResponse"; + descriptors[46]->config_name = DOCUMENT_FEEDER_TIMEOUT_RESPONSE; descriptors[46]->descriptor = _kds_s2000w_option_descriptor_document_feeder_timeout_response(); } diff --git a/src/kds_s2000w_option_descriptors.h b/src/kds_s2000w_option_descriptors.h index f1ccb34..5439025 100644 --- a/src/kds_s2000w_option_descriptors.h +++ b/src/kds_s2000w_option_descriptors.h @@ -3,18 +3,67 @@ #include #include +#define MAX_OPTION_COUNT 47 +#define OPTION_COUNT "OptionCount" + #define STANDARD_GROUP_NUMBER 1 #define STANDARD_GROUP "STANDARD_GROUP" +#define SCAN_SOURCE "ScanSource" +#define COLOR_MODE "ColorMode" +#define DPI "DPI" +#define SCAN_SIDE "ScanSide" + #define GEOMETRY_GROUP_NUMBER 6 #define GEOMETRY_GROUP "GeometryGroup" +#define CROPPING_MODE "CroppingMode" +#define CROPPING_IMAGE "CroppingImage" +#define IMAGE_OFFSET_X "ImageOffsetX" +#define IMAGE_OFFSET_Y "ImageOffsetY" +#define IMAGE_WIDTH "ImageWidth" +#define IMAGE_HEIGHT "ImageHeight" + #define BOLDNESS_SMOOTHING_NUMBER 13 #define BOLDNESS_SMOOTHING_GROUP "BoldnessSmothingGroup" +#define FOREGROUND_BOLDNESS_MODE "ForegroundBoldnessMode" +#define FOREGROUND_BOLDNESS_AGGRESSIVENESS "ForegroundBoldnessAggressiveness" +#define BACKGROUND_SMOOTHING_MODE "BackgroundSmoothingMode" +#define BACKGROUND_SMOOTHING_AGGRESSIVENESS "BackgroundSmoothingAggressiveness" + #define BOLDNESS_COLOR_NUMBER 18 #define BOLDNESS_COLOR_GROUP "BoldnessColorGroup" +#define COLOR_DROP_OUT "ColorDropOut" +#define COLOR_DROP_OUT_AGGRESSIVENESS "ColorDropOutAggressiveness" +#define COLOR_AUTO_BRIGHTNESS_MODE "ColorAutoBrightnessMode" +#define COLOR_BRIGHTNESS "ColorBrightness" +#define COLOR_CONTRAST "ColorContrast" +#define COLOR_BALANCE_MODE "ColorBalanceMode" +#define COLOR_BALANCE_AGGRESSIVENESS "ColorBalanceAggressiveness" +#define COLOR_BALANCE_RED "ColorBalanceRed" +#define COLOR_BALANCE_GREEN "ColorBalanceGreen" +#define COLOR_BALANCE_BLUE "ColorBalanceBlue" +#define COLOR_SHARPEN "ColorSharpen" +#define BINARIZATION_CONTRAST "BinarizationContrast" +#define RESET "Reset" + #define IMAGE_PROCESSING_NUMBER 32 #define IMAGE_PROCESSING_GROUP "ImageProcessingGroup" +#define SKIP_BLANK_PAGES "SkipBlankPages" +#define SKIP_BLANK_PAGES_CONTENT "SkipBlankPagesContent" +#define HOLE_FILL "HoleFill" +#define POST_SCAN_ROTATION "PostScanRotation" +#define EDGE_FILL "EdgeFill" +#define IMAGE_BORDER "ImageBorder" +#define JPEG_QUALITY "JpegQuality" + #define FEEDER_GROUP_NUMBER 40 #define FEEDER_GROUP "FeederGroup" +#define MAX_DOCUMENT_LENGTH "MaxDocumentLength" +#define TRANSPORT_HANDLING "TransportHandling" +#define MULTIFEED_SENSITIVITY "MultifeedSensitivity" +#define MULTIFEED_RESPONSE "MultifeedResponse" +#define DOCUMENT_FEEDER_TIMEOUT "DocumentFeederTimeout" +#define DOCUMENT_FEEDER_TIMEOUT_RESPONSE "DocumentFeederTimeoutResponse" + typedef struct { const char* config_name;