From 0bf9d50fdce0e57b81e912f9a9f8c44481404667 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Tue, 23 Sep 2025 09:31:09 +0200 Subject: [PATCH] add full profile load option descriptor --- src/kds_s2000w_option_descriptors.c | 12 +++++++++--- src/kds_s2000w_option_descriptors.h | 3 +++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/kds_s2000w_option_descriptors.c b/src/kds_s2000w_option_descriptors.c index 3a657ca..4ff7a6f 100644 --- a/src/kds_s2000w_option_descriptors.c +++ b/src/kds_s2000w_option_descriptors.c @@ -1107,10 +1107,8 @@ SANE_Option_Descriptor _kds_s2000w_option_descriptor_feeder_group() return descriptor; } -void kds_s2000w_option_descriptors_init(uint8_t profile) +void _kds_s2000w_option_descriptors_init_full_profile() { - kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_init_option_descriptors"); - descriptors = malloc(sizeof(option_descriptor*) * MAX_OPTION_COUNT); for (int i = 0; i < MAX_OPTION_COUNT; i++) { descriptors[i] = malloc(sizeof(option_descriptor)); @@ -1212,6 +1210,14 @@ void kds_s2000w_option_descriptors_init(uint8_t profile) descriptors[46]->descriptor = _kds_s2000w_option_descriptor_document_feeder_timeout_response(); } +void kds_s2000w_option_descriptors_init(uint8_t profile) +{ + kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_init_option_descriptors"); + + if (profile == PROFILE_FULL) + _kds_s2000w_option_descriptors_init_full_profile(); +} + void kds_s2000w_option_descriptors_free() { kds_s2000w_debug_printf(ALL, "kds_s2000w_option_descriptor_free_option_descriptors"); diff --git a/src/kds_s2000w_option_descriptors.h b/src/kds_s2000w_option_descriptors.h index b4baaf2..3523e2f 100644 --- a/src/kds_s2000w_option_descriptors.h +++ b/src/kds_s2000w_option_descriptors.h @@ -64,6 +64,9 @@ #define DOCUMENT_FEEDER_TIMEOUT "DocumentFeederTimeout" #define DOCUMENT_FEEDER_TIMEOUT_RESPONSE "DocumentFeederTimeoutResponse" +enum { + PROFILE_FULL +}; typedef struct { const char* config_name; -- 2.47.3