21 #ifndef __jack_driver_interface_h__ 22 #define __jack_driver_interface_h__ 32 #include "JackCompilerDeps.h" 33 #include "JackSystemDeps.h" 35 #define JACK_DRIVER_NAME_MAX 15 36 #define JACK_DRIVER_PARAM_NAME_MAX 15 37 #define JACK_DRIVER_PARAM_STRING_MAX 127 38 #define JACK_DRIVER_PARAM_DESC 255 39 #define JACK_PATH_MAX 511 41 #define JACK_CONSTRAINT_FLAG_RANGE ((uint32_t)1) 42 #define JACK_CONSTRAINT_FLAG_STRICT ((uint32_t)2) 43 #define JACK_CONSTRAINT_FLAG_FAKE_VALUE ((uint32_t)4) 48 JackDriverParamInt = 1,
51 JackDriverParamString,
53 } jack_driver_param_type_t;
69 char str[JACK_DRIVER_PARAM_STRING_MAX + 1];
79 const char * short_desc;
84 const char * short_desc;
89 const char * short_desc;
94 const char * short_desc;
114 char name[JACK_DRIVER_NAME_MAX + 1];
120 char long_desc[1024];
133 char name[JACK_DRIVER_NAME_MAX + 1];
135 char desc[JACK_DRIVER_PARAM_DESC + 1];
136 char file[JACK_PATH_MAX + 1];
152 jack_driver_descriptor_construct(
154 jack_driver_type_t type,
155 const char * description,
160 jack_driver_descriptor_add_parameter(
165 jack_driver_param_type_t type,
168 const char * short_desc,
169 const char * long_desc);
172 int jack_constraint_add_enum(
174 uint32_t * array_size_ptr,
176 const char * short_desc);
181 #define JACK_CONSTRAINT_COMPOSE_ENUM(type) \ 183 jack_driver_param_constraint_desc_t * \ 184 jack_constraint_compose_enum_ ## type( \ 186 struct jack_constraint_enum_ ## type ## _descriptor * descr_array_ptr) 188 JACK_CONSTRAINT_COMPOSE_ENUM(uint32);
189 JACK_CONSTRAINT_COMPOSE_ENUM(sint32);
190 JACK_CONSTRAINT_COMPOSE_ENUM(
char);
191 JACK_CONSTRAINT_COMPOSE_ENUM(str);
jack_driver_param_value_t value
jack_driver_param_constraint_desc_t * constraint
jack_driver_param_type_t type
jack_driver_param_desc_t * params