25#if defined(__cplusplus)
27#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L)
30 #define static_assert _Static_assert
34#include "cmsis_compiler.h"
37#define DEFINE_STR(s) #s
40#define DEFINE_VAL(s) DEFINE_STR(s)
43#define PARA_STR(s) "<PARA"#s">"
47#define PARA(s) PARA_STR(s)
50#define ERROR_STR(s) "<ERROR"#s">"
53#define ERROR(s) ERROR_STR(s)
56#ifdef HELP_TEXTS_IN_FILE
60 const uint16_t ui16Version;
61 const uint16_t ui16ParaID;
62 const uint32_t ui32Length;
63 const char cHelpText[];
66#define PARA_HELP_TEXT_COMBINE(x)
67#define PARA_HELP_TEXT_SECTION(PARA_ID, HELP) static const tParaHelpText g_tParaHelpText##PARA_ID __attribute__((section("para_help_strings"), used)) = {1, PARA_ID, sizeof(HELP) - 1, HELP};
69#define PARA_HELP_TEXT_COMBINE(x) x
70#define PARA_HELP_TEXT_SECTION(PARA_ID, HELP)
73#ifdef INCLUDE_ENGLISH_HELP
74#define INCLUDE_HELP_EN(HELP) HELP
76#define INCLUDE_HELP_EN(HELP) ""
79#ifdef INCLUDE_GERMAN_HELP
80#define INCLUDE_HELP_DE(HELP) HELP
82#define INCLUDE_HELP_DE(HELP) ""
96#define ASSERT_PARA_NAME(NAME)
97#define ASSERT_PARA_DESCRIPTION(DESCRIPTION)
98#define ASSERT_PARA_HELP(HELP)
99#define ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, TYPE_MIN, TYPE_MAX)
102#define ASSERT_PARA_NAME(NAME) static_assert(sizeof(NAME) >= 0, \
103"Parameter name to short!")
106#define ASSERT_PARA_DESCRIPTION(DESCRIPTION) static_assert(sizeof(DESCRIPTION) >= MIN_PARA_DESCRIPTION_LENTH, \
107"Parameter description text to short must be at least "xstr(MIN_PARA_DESCRIPTION_LENTH)" characters long!")
110#define ASSERT_PARA_HELP(HELP) static_assert(sizeof(HELP) >= MIN_PARA_HELP_LENTH, \
111"Parameter help text to short must be at least "xstr(MIN_PARA_HELP_LENTH)" characters long!")
118#define ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, TYPE_MIN, TYPE_MAX) \
119static_assert(((long long)(MIN) >= (long long)(TYPE_MIN)) && ((long long)(MAX) <= (long long)(TYPE_MAX)) \
120 && ((long long)(DEFAULT) >= (long long)(TYPE_MIN)) && ((long long)(DEFAULT) <= (long long)(TYPE_MAX)), \
121 "Parameter " #PARA_ID ": MinValue, MaxValue or DefaultValue exceeds the range of the datatype"); \
122static_assert((long long)(MIN) <= (long long)(MAX), "Parameter " #PARA_ID ": MinValue is greater than MaxValue"); \
123static_assert(((long long)(DEFAULT) >= (long long)(MIN)) && ((long long)(DEFAULT) <= (long long)(MAX)), \
124 "Parameter " #PARA_ID ": DefaultValue is not within MinValue and MaxValue")
151#define ParameterF32(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
152 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
154const ParaData_F32 g_tParaData_##PARA_ID = { \
155PARA_CHECK_VARIABLE(VARIABLE_NAME, float), \
161static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
162static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
163static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
164static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = \
165DESCRIPTION PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
166PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
168const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
173g_sParaName##PARA_ID, \
174g_sParaDescription##PARA_ID, \
175g_sParaUnit##PARA_ID, \
176(void*)&g_tParaData_##PARA_ID, \
177(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, F32), \
178(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, F32), \
179(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, F32), \
180(STORE_LOCATION << 24) | ((uint32_t)TYPE_float << 28) | FLAGS, \
181g_sParaSubstitutionText##PARA_ID, \
207#define ParameterU32(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
208 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
210ASSERT_PARA_NAME(NAME); \
211ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
212ASSERT_PARA_HELP(HELP_EN); \
213ASSERT_PARA_HELP(HELP_DE); \
214ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, MIN_uint32, MAX_uint32); \
216const ParaData_U32 g_tParaData_##PARA_ID = { \
217PARA_CHECK_VARIABLE(VARIABLE_NAME, uint32_t), \
223static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
224static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
225static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
226static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = \
227DESCRIPTION PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
228PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
230const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
235g_sParaName##PARA_ID, \
236g_sParaDescription##PARA_ID, \
237g_sParaUnit##PARA_ID, \
238(void*)&g_tParaData_##PARA_ID, \
239(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, U32), \
240(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, U32), \
241(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, U32), \
242(STORE_LOCATION << 24) | ((uint32_t)TYPE_uint32 << 28) | FLAGS, \
243g_sParaSubstitutionText##PARA_ID, \
269#define ParameterI32(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
270 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
272ASSERT_PARA_NAME(NAME); \
273ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
274ASSERT_PARA_HELP(HELP_EN); \
275ASSERT_PARA_HELP(HELP_DE); \
276ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, MIN_int32, MAX_int32); \
278const ParaData_I32 g_tParaData_##PARA_ID = { \
279PARA_CHECK_VARIABLE(VARIABLE_NAME, int32_t), \
285static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
286static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
287static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
288static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = \
289DESCRIPTION PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
290PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
292const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
297g_sParaName##PARA_ID, \
298g_sParaDescription##PARA_ID, \
299g_sParaUnit##PARA_ID, \
300(void*)&g_tParaData_##PARA_ID, \
301(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, I32), \
302(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, I32), \
303(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, I32), \
304(STORE_LOCATION << 24) | ((uint32_t)TYPE_int32 << 28) | FLAGS, \
305g_sParaSubstitutionText##PARA_ID, \
331#define ParameterU16(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
332 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
334ASSERT_PARA_NAME(NAME); \
335ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
336ASSERT_PARA_HELP(HELP_EN); \
337ASSERT_PARA_HELP(HELP_DE); \
338ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, MIN_uint16, MAX_uint16); \
340static const ParaData_U16 g_tParaData_##PARA_ID = { \
341PARA_CHECK_VARIABLE(VARIABLE_NAME, uint16_t), \
347static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
348static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
349static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
350static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = DESCRIPTION \
351 PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
352PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
354const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
359g_sParaName##PARA_ID, \
360g_sParaDescription##PARA_ID, \
361g_sParaUnit##PARA_ID, \
362(void*)&g_tParaData_##PARA_ID, \
363(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, U16), \
364(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, U16), \
365(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, U16), \
366(STORE_LOCATION << 24) | ((uint32_t)TYPE_uint16 << 28) | FLAGS, \
367g_sParaSubstitutionText##PARA_ID, \
393#define ParameterI16(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
394 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
396ASSERT_PARA_NAME(NAME); \
397ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
398ASSERT_PARA_HELP(HELP_EN); \
399ASSERT_PARA_HELP(HELP_DE); \
400ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, MIN_int16, MAX_int16); \
402static const ParaData_I16 g_tParaData_##PARA_ID = { \
403PARA_CHECK_VARIABLE(VARIABLE_NAME, int16_t), \
409static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
410static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
411static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
412static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = DESCRIPTION \
413 PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
414PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
416const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
421g_sParaName##PARA_ID, \
422g_sParaDescription##PARA_ID, \
423g_sParaUnit##PARA_ID, \
424(void*)&g_tParaData_##PARA_ID, \
425(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, I16), \
426(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, I16), \
427(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, I16), \
428(STORE_LOCATION << 24) | ((uint32_t)TYPE_int16 << 28) | FLAGS, \
429g_sParaSubstitutionText##PARA_ID, \
455#define ParameterU8(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
456 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
458ASSERT_PARA_NAME(NAME); \
459ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
460ASSERT_PARA_HELP(HELP_EN); \
461ASSERT_PARA_HELP(HELP_DE); \
462ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, MIN_uint8, MAX_uint8); \
464static const ParaData_U8 g_tParaData_##PARA_ID = { \
465PARA_CHECK_VARIABLE(VARIABLE_NAME, uint8_t), \
471static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
472static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
473static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
474static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = DESCRIPTION \
475 PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
476PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
478const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
483g_sParaName##PARA_ID, \
484g_sParaDescription##PARA_ID, \
485g_sParaUnit##PARA_ID, \
486(void*)&g_tParaData_##PARA_ID, \
487(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, U8), \
488(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, U8), \
489(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, U8), \
490(STORE_LOCATION << 24) | ((uint32_t)TYPE_uint8 << 28) | FLAGS, \
491g_sParaSubstitutionText##PARA_ID, \
517#define ParameterI8(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MIN, MAX, DEFAULT, \
518 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
520ASSERT_PARA_NAME(NAME); \
521ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
522ASSERT_PARA_HELP(HELP_EN); \
523ASSERT_PARA_HELP(HELP_DE); \
524ASSERT_PARA_RANGE(PARA_ID, MIN, MAX, DEFAULT, MIN_int8, MAX_int8); \
526static const ParaData_I8 g_tParaData_##PARA_ID = { \
527PARA_CHECK_VARIABLE(VARIABLE_NAME, int8_t), \
533static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
534static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
535static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
536static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = DESCRIPTION \
537 PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
538PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
540const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
545g_sParaName##PARA_ID, \
546g_sParaDescription##PARA_ID, \
547g_sParaUnit##PARA_ID, \
548(void*)&g_tParaData_##PARA_ID, \
549(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, I8), \
550(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, I8), \
551(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, I8), \
552(STORE_LOCATION << 24) | ((uint32_t)TYPE_int8 << 28) | FLAGS, \
553g_sParaSubstitutionText##PARA_ID, \
578#define ParameterSTR(VARIABLE_NAME, PARA_ID, GROUP_ID, NAME, UNIT, DESCRIPTION, HELP_EN, HELP_DE, SUBSTITUTION, COUNT, MAX_LENGTH, DEFAULT, \
579 ON_READ, ON_WRITE, SET_TO_DEFAULT, ACCESS, STORE_LOCATION, FLAGS) \
581ASSERT_PARA_NAME(NAME); \
582ASSERT_PARA_DESCRIPTION(DESCRIPTION); \
583ASSERT_PARA_HELP(HELP_EN); \
584ASSERT_PARA_HELP(HELP_DE); \
586static const ParaData_STR g_tParaData_##PARA_ID = { \
587PARA_CHECK_VARIABLE(VARIABLE_NAME, char), \
592static const char g_sParaName##PARA_ID[] __attribute__((section("para_strings"), used)) = NAME; \
593static const char g_sParaUnit##PARA_ID[] __attribute__((section("para_strings"), used)) = UNIT; \
594static const char g_sParaSubstitutionText##PARA_ID[] __attribute__((section("para_strings"), used)) = SUBSTITUTION; \
595static const char g_sParaDescription##PARA_ID[] __attribute__((section("para_strings"), used)) = DESCRIPTION \
596 PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE)); \
597PARA_HELP_TEXT_SECTION(PARA_ID, PARA_HELP_TEXT_COMBINE(INCLUDE_HELP_EN("DOC_E " HELP_EN) INCLUDE_HELP_DE("DOC_D " HELP_DE))) \
599const Parameter g_tParameter##PARA_ID __attribute__((section("para_descriptor"))) = { \
604g_sParaName##PARA_ID, \
605g_sParaDescription##PARA_ID, \
606g_sParaUnit##PARA_ID, \
607(void*)&g_tParaData_##PARA_ID, \
608(ReadFunction*)PARA_CHECK_READ_FUNCTION(ON_READ, STR), \
609(WriteFunction*)PARA_CHECK_WRITE_FUNCTION(ON_WRITE, STR), \
610(RestoreDefaultFunction*)PARA_CHECK_DEFAULT_FUNCTION(SET_TO_DEFAULT, STR), \
611(STORE_LOCATION << 24) | ((uint32_t)TYPE_string << 28) | FLAGS, \
612g_sParaSubstitutionText##PARA_ID, \
620#define Parameter(PARA_ID) \
631#define ParameterWriteF32(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
632 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 4, 0, ACCESS_SOURCE, ACCESS_LEVEL))
642#define ParameterWriteU32(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
643 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 4, 0, ACCESS_SOURCE, ACCESS_LEVEL))
653#define ParameterWriteI32(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
654 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 4, 0, ACCESS_SOURCE, ACCESS_LEVEL))
664#define ParameterWriteU16(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
665 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 2, 0, ACCESS_SOURCE, ACCESS_LEVEL))
675#define ParameterWriteI16(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
676 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 2, 0, ACCESS_SOURCE, ACCESS_LEVEL))
686#define ParameterWriteU8(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
687 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 1, 0, ACCESS_SOURCE, ACCESS_LEVEL))
697#define ParameterWriteI8(PARA_ID, SUB_ID, DATA, ACCESS_SOURCE, ACCESS_LEVEL) \
698 g_tParameter##PARA_ID.OnWrite((void*)&g_tParameter##PARA_ID, PARA_REQUEST(SUB_ID, DATA, 1, 0, ACCESS_SOURCE, ACCESS_LEVEL))
707#define ParameterSetToDefaultF32(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
708 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
717#define ParameterSetToDefaultU32(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
718 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
727#define ParameterSetToDefaultI32(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
728 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
737#define ParameterSetToDefaultU16(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
738 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
747#define ParameterSetToDefaultI16(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
748 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
757#define ParameterSetToDefaultU8(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
758 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
767#define ParameterSetToDefaultI8(PARA_ID, SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) \
768 g_tParameter##PARA_ID.SetToDefault((void*)&g_tParameter##PARA_ID, PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL));
775#define GetStorageLocation(Parameter) \
776 (((Parameter)->Flags >> 24) & 0x0F)
783#define GetDataType(Parameter) \
784 ((Parameter)->Flags >> 28)
833#define PARA_REQUEST(SUB_ID, DATA, MAX_COUNT, OFFSET, ACCESS_SOURCE, ACCESS_LEVEL) \
834 (&(ParameterRequest){ (SUB_ID), (void*)(DATA), (MAX_COUNT), (OFFSET), (ACCESS_SOURCE), (ACCESS_LEVEL) })
836#define PARA_REQUEST_DEFAULT(SUB_ID, ACCESS_SOURCE, ACCESS_LEVEL) PARA_REQUEST(SUB_ID, 0, 0, 0, ACCESS_SOURCE, ACCESS_LEVEL)
865#define PARA_HAS_READ_ACCESS(P, LEVEL) (((LEVEL) == 0) || (((P)->Access & (1u << (((LEVEL) - 1u) * 2u))) != 0))
872#define PARA_HAS_WRITE_ACCESS(P, LEVEL) (((LEVEL) == 0) || (((P)->Access & (1u << (((LEVEL) * 2u) - 1u))) != 0))
930#define PARA_DECLARE_PARAMETER_TYPE(SUFFIX, DATA_TYPE, THIS_TYPE) \
931typedef struct Parameter##SUFFIX Parameter##SUFFIX; \
932typedef int32_t ReadFunction##SUFFIX(THIS_TYPE* ptThis, const ParameterRequest* ptRequest); \
933typedef int32_t WriteFunction##SUFFIX(THIS_TYPE* ptThis, const ParameterRequest* ptRequest); \
934typedef int32_t RestoreDefaultFunction##SUFFIX(THIS_TYPE* ptThis, const ParameterRequest* ptRequest); \
935struct Parameter##SUFFIX \
940 uint16_t SubIdCount; \
942 const char* Description; \
943 const char* Format; \
945 ReadFunction##SUFFIX* OnRead; \
946 WriteFunction##SUFFIX* OnWrite; \
947 RestoreDefaultFunction##SUFFIX* SetToDefault; \
949 const char* SubstitutionalTexts; \
974PARA_DECLARE_PARAMETER_TYPE(,
void,
void);
979typedef __PACKED_STRUCT
1093#define PARA_DECLARE_TYPED_PARAMETER(T) PARA_DECLARE_PARAMETER_TYPE(_##T, ParaData_##T, Parameter_##T)
1095PARA_DECLARE_TYPED_PARAMETER(I8);
1096PARA_DECLARE_TYPED_PARAMETER(U8);
1097PARA_DECLARE_TYPED_PARAMETER(I16);
1098PARA_DECLARE_TYPED_PARAMETER(U16);
1099PARA_DECLARE_TYPED_PARAMETER(I32);
1100PARA_DECLARE_TYPED_PARAMETER(U32);
1101PARA_DECLARE_TYPED_PARAMETER(I64);
1102PARA_DECLARE_TYPED_PARAMETER(U64);
1103PARA_DECLARE_TYPED_PARAMETER(F32);
1104PARA_DECLARE_TYPED_PARAMETER(F64);
1105PARA_DECLARE_TYPED_PARAMETER(STR);
1121#if defined(__cplusplus) || defined(__CC_ARM)
1122 #define PARA_CHECK_CALLBACK(FN, TYPED, GENERIC) (FN)
1124 #define PARA_CHECK_CALLBACK(FN, TYPED, GENERIC) _Generic((FN), TYPED*: (FN), GENERIC*: (FN))
1126#define PARA_CHECK_READ_FUNCTION(FN, T) PARA_CHECK_CALLBACK(FN, ReadFunction_##T, ReadFunction_Generic)
1127#define PARA_CHECK_WRITE_FUNCTION(FN, T) PARA_CHECK_CALLBACK(FN, WriteFunction_##T, WriteFunction_Generic)
1128#define PARA_CHECK_DEFAULT_FUNCTION(FN, T) PARA_CHECK_CALLBACK(FN, RestoreDefaultFunction_##T, RestoreDefaultFunction_Generic)
1135#if defined(__cplusplus) || defined(__CC_ARM)
1136 #define PARA_CHECK_VARIABLE(VAR, TYPE) (VAR)
1138 #define PARA_CHECK_VARIABLE(VAR, TYPE) _Generic((VAR), TYPE*: (VAR), volatile TYPE*: (TYPE*)(VAR), void*: (TYPE*)(VAR), int: (TYPE*)0)
const ParameterRequest * ptRequest
Definition: PARA_Flash_STM32H5.c:1023
uint32_t ui32Offset
Definition: PARA_Flash_STM32H5.c:1081
WriteFunction_I32 WriteFunction_STD_I32
Definition: PARA_Lib.h:1181
int32_t StreamReadParameterData_Value(Parameter_InfoHeader *ptInfo, uint8_t *pui8Destination, int32_t i32MaxCount, uint32_t ui32Offset, ParameterAccessSource tAccessSource, uint8_t ui8AccessLevel)
Read Parameter-data into buffer (Variant 1) The Data of the selected parameter is read and stored int...
Definition: PARA_Stream.c:51
WriteFunction_F32 WriteFunction_STD_I32Q16
Definition: PARA_Lib.h:1211
ReadFunction_U64 ReadFunction_STD_U64
Definition: PARA_Lib.h:1175
int32_t ANZAHL_PARAMETER
Number of existent parameters. Must be defined in main program.
int32_t PARA_ObjectToString(Parameter *p, object *data, char *dest, int32_t MaxLength)
Parse Parameter-data out of an object.
Definition: PARA_String.c:182
RestoreDefaultFunction_F32 SetToDefaultFunction_STD_F32
Definition: PARA_Lib.h:1201
int32_t PARA_ValAsString(Parameter *p, int32_t SubId, char *dest, int32_t MaxLength, uint8_t AccessLevel)
Output the parameter value as formatted string.
Definition: PARA_String.c:101
Parameter * ParaListe
List of all existent parameters in device. The list is filled by the linker automatically.
void GetParaDataAsObject(Parameter *p, uint32_t data, object *ob, uint8_t AccessLevel)
Get Parameter-data as object type.
Definition: PARA_Data.c:1835
uint32_t GetStringParameterLength(Parameter *p, uint16_t subID)
Get the length of the string data of the given parameter.
Definition: PARA_Parameter.c:146
RestoreDefaultFunction_U8 SetToDefaultFunction_STD_U8
Definition: PARA_Lib.h:1196
RestoreDefaultFunction_I16 SetToDefaultFunction_STD_I16
Definition: PARA_Lib.h:1193
ReadFunction_U32 ReadFunction_STD_U32
Definition: PARA_Lib.h:1174
const int32_t ANZAHL_GRUPPEN
Number of existent parameter-groups. Must be defined in main program.
RestoreDefaultFunction_U64 SetToDefaultFunction_STD_U64
Definition: PARA_Lib.h:1200
GET_VALUES
List of values, that can be retrived with the GetParaDataAsObject function.
Definition: PARA_Lib.h:891
@ GET_DEFAULT
Definition: PARA_Lib.h:894
@ GET_MAX
Definition: PARA_Lib.h:893
@ GET_MIN
Definition: PARA_Lib.h:892
Parameter * GetParameter(uint32_t ParaID)
Get the parameter of the given ID.
Definition: PARA_Parameter.c:64
STORE_LOCATION
List of storage locations for parameters.
Definition: PARA_Lib.h:877
@ EXT_FLASH
Definition: PARA_Lib.h:882
@ PARA_FLASH
Definition: PARA_Lib.h:879
@ EEPROM
Definition: PARA_Lib.h:881
@ SD_BASE
Definition: PARA_Lib.h:883
@ SD
Definition: PARA_Lib.h:885
@ NVRAM
Definition: PARA_Lib.h:880
@ FACTORY_EEPROM
Definition: PARA_Lib.h:886
@ FACTORY_FLASH
Definition: PARA_Lib.h:884
@ NOT_STORED
Definition: PARA_Lib.h:878
WriteFunction_U16 WriteFunction_STD_U16
Definition: PARA_Lib.h:1185
ACCESS_LEVEL
List of access-levels for parameters. Every parameter can limit read and write access according to th...
Definition: PARA_Lib.h:799
@ ACCESS_NONE
Definition: PARA_Lib.h:800
@ ACCESS_SPECIAL1
Definition: PARA_Lib.h:806
@ ACCESS_VIEWER
Definition: PARA_Lib.h:801
@ ACCESS_USER
Definition: PARA_Lib.h:802
@ ACCESS_SPECIAL3
Definition: PARA_Lib.h:808
@ ACCESS_PLC
Definition: PARA_Lib.h:805
@ ACCESS_SPECIAL2
Definition: PARA_Lib.h:807
@ ACCESS_DEVELOPER
Definition: PARA_Lib.h:804
@ ACCESS_PROFESSIONAL
Definition: PARA_Lib.h:803
bool IsValidForSetToDefault(void *pvThis, const ParameterRequest *ptRequest)
Check if the actual access-right is sufficient to set to default the parameter.
Definition: PARA_Data.c:849
float ObjToFloat32(object *ob)
Convertrs a given object to float.
Definition: PARA_Data.c:1971
ReadFunction_I16 ReadFunction_STD_I16
Definition: PARA_Lib.h:1168
WriteFunction_Generic WriteFunction_STD_Const
Definition: PARA_Lib.h:1190
WriteFunction_F32 WriteFunction_STD_F32
Definition: PARA_Lib.h:1188
bool IsValidForWrite(void *pvThis, const ParameterRequest *ptRequest)
Check if the actual access-right is sufficient to write the parameter.
Definition: PARA_Data.c:826
int32_t StreamWriteStringParameter(Parameter *p, uint16_t ui16StartSubId, uint16_t ui16Count, uint8_t *pui8Destination, uint32_t *pui32MaxCount, ParameterAccessSource tAccessSource, uint8_t ui8AccessLevel)
Read String Parameter-data into buffer (Variant 1) The Data of the selected string-parameter is read ...
Definition: PARA_Stream.c:226
int32_t StreamReadParameterData_Value2(Parameter *p, const ParameterRequest *ptRequest)
Read Parameter-data into buffer (Variant 2) The Data of the selected parameter is read and stored int...
Definition: PARA_Stream.c:131
uint32_t GetParameterCount(void)
Get the number of the existent parameters.
Definition: PARA_Parameter.c:41
int32_t StreamWriteStringParameter2(Parameter *p, uint16_t ui16StartSubId, uint16_t ui16Count, uint8_t *pui8Destination, uint32_t *pui32MaxCount, ParameterAccessSource tAccessSource, uint8_t ui8AccessLevel, uint32_t *pui32StrPos)
Read String Parameter-data into buffer (Variant 2) The Data of the selected string-parameter is read ...
Definition: PARA_Stream.c:289
WriteFunction_I8 WriteFunction_STD_I8
Definition: PARA_Lib.h:1179
WriteFunction_I16 WriteFunction_STD_I16
Definition: PARA_Lib.h:1180
int32_t PARA_ParseString(Parameter *p, int32_t SubId, char *input, uint8_t AccessLevel)
Parse Parameter-data out of an input string.
Definition: PARA_String.c:41
uint32_t GetGroupCount(void)
Get the number of the existent parameter-groups.
Definition: PARA_Parameter.c:51
WriteFunction_I64 WriteFunction_STD_I64
Definition: PARA_Lib.h:1182
RestoreDefaultFunction_I64 SetToDefaultFunction_STD_I64
Definition: PARA_Lib.h:1195
WriteFunction_U32 WriteFunction_STD_U32
Definition: PARA_Lib.h:1186
ReadFunction_I64 ReadFunction_STD_I64
Definition: PARA_Lib.h:1170
RestoreDefaultFunction_I32 SetToDefaultFunction_STD_I32
Definition: PARA_Lib.h:1194
ReadFunction_U8 ReadFunction_STD_U8_BitWise
Definition: PARA_Lib.h:1172
ReadFunction_F32 ReadFunction_STD_I32Q16
Definition: PARA_Lib.h:1210
ReadFunction_I8 ReadFunction_STD_I8
Definition: PARA_Lib.h:1167
ReadFunction_F32 ReadFunction_STD_F32
Definition: PARA_Lib.h:1176
RestoreDefaultFunction_U32 SetToDefaultFunction_STD_U32
Definition: PARA_Lib.h:1199
RestoreDefaultFunction_U16 SetToDefaultFunction_STD_U16
Definition: PARA_Lib.h:1198
RestoreDefaultFunction_Generic SetToDefaultFunction_STD_Const
Definition: PARA_Lib.h:1203
bool IsValidForRead(void *pvThis, const ParameterRequest *ptRequest)
Check if the actual access-right is sufficient to read the parameter.
Definition: PARA_Data.c:802
RestoreDefaultFunction_I8 SetToDefaultFunction_STD_I8
Definition: PARA_Lib.h:1192
ParameterAccessSource
List of sources for parameter-access. Every parameter can limit access to these sources....
Definition: PARA_Lib.h:788
@ PARA_ACCESS_FROM_CAN
Definition: PARA_Lib.h:794
@ PARA_ACCESS_FROM_USB
Definition: PARA_Lib.h:791
@ PARA_ACCESS_FROM_HESP
Definition: PARA_Lib.h:793
@ PARA_ACCESS_FROM_ETHERNET
Definition: PARA_Lib.h:792
@ PARA_ACCESS_FROM_GUEST
Definition: PARA_Lib.h:790
@ PARA_ACCESS_FROM_CODE
Definition: PARA_Lib.h:789
ReadFunction_STR ReadFunction_STD_STR
Definition: PARA_Lib.h:1177
int32_t StreamWriteParameterData_Value(Parameter_InfoHeader *ptInfo, uint8_t *pui8Source, uint32_t ui32Offset, ParameterAccessSource tAccessSource, uint8_t ui8AccessLevel)
Write Parameter-data from buffer (Variant 1) The Data of the given buffer is written to parameter.
Definition: PARA_Stream.c:106
WriteFunction_STR WriteFunction_STD_STR
Definition: PARA_Lib.h:1189
RestoreDefaultFunction_U8 SetToDefaultFunction_STD_U8_BitWise
Definition: PARA_Lib.h:1197
WriteFunction_U8 WriteFunction_STD_U8
Definition: PARA_Lib.h:1183
uint16_t g_ui16FlashModified
Flag to show if the remanent storage is modified.
Definition: PARA_Stream.c:32
RestoreDefaultFunction_STR SetToDefaultFunction_STD_STR
Definition: PARA_Lib.h:1202
uint8_t g_ui8ActualAccessLevel
Actual access-level (see Access restrictions).
Definition: PARA_ParaAccess.c:38
ReadFunction_U8 ReadFunction_STD_U8
Definition: PARA_Lib.h:1171
uint8_t * g_pui8ActualAccessLevelPointer
Pointer to the Actual access-level (see Access restrictions).
Definition: PARA_ParaAccess.c:39
ReadFunction_I32 ReadFunction_STD_I32
Definition: PARA_Lib.h:1169
const Group * GruppenListe[]
List of all existent parameter-groups in device. The list is filled by the paraInit function.
WriteFunction_U8 WriteFunction_STD_U8_BitWise
Definition: PARA_Lib.h:1184
int32_t StreamWriteParameterData_Value2(Parameter *p, const ParameterRequest *ptRequest, uint16_t ui16Count)
Write Parameter-data from buffer (Variant 2) The Data of the given buffer is written to parameter.
Definition: PARA_Stream.c:173
WriteFunction_U64 WriteFunction_STD_U64
Definition: PARA_Lib.h:1187
int32_t GetDataTypeSize(uint8_t Type)
Calculate the Size of a parameter-type.
Definition: PARA_Parameter.c:93
Group * GetGroup(uint32_t GroupID)
Get the parameter-Group of the given ID.
Definition: PARA_Parameter.c:79
RestoreDefaultFunction_F32 SetToDefaultFunction_STD_I32Q16
Definition: PARA_Lib.h:1212
ReadFunction_U16 ReadFunction_STD_U16
Definition: PARA_Lib.h:1173
ZUGRIFF
List of access restrictions for parameters. Every parameter can limit read and write access according...
Definition: PARA_Lib.h:840
@ SPECIAL2_READ
Definition: PARA_Lib.h:853
@ PROFESSIONAL_WRITE
Definition: PARA_Lib.h:846
@ PLC_WRITE
Definition: PARA_Lib.h:850
@ SPECIAL1_READ
Definition: PARA_Lib.h:851
@ VIEWER_WRITE
Definition: PARA_Lib.h:842
@ SPECIAL1_WRITE
Definition: PARA_Lib.h:852
@ PROFESSIONAL_READ
Definition: PARA_Lib.h:845
@ USER_READ
Definition: PARA_Lib.h:843
@ DEVELOPER_WRITE
Definition: PARA_Lib.h:848
@ USER_WRITE
Definition: PARA_Lib.h:844
@ SPECIAL3_WRITE
Definition: PARA_Lib.h:856
@ PLC_READ
Definition: PARA_Lib.h:849
@ SPECIAL3_READ
Definition: PARA_Lib.h:855
@ VIEWER_READ
Definition: PARA_Lib.h:841
@ SPECIAL2_WRITE
Definition: PARA_Lib.h:854
@ DEVELOPER_READ
Definition: PARA_Lib.h:847
FLAGS
List of Flags, which can be set for every single parameter First 8 Bits cannot be used,...
Definition: PARA_Lib.h:908
@ FLAG_SCOPEABLE
Parameter can be scoped.
Definition: PARA_Lib.h:912
@ FLAG_HIDDEN
Parameter is not shown by default. Can be activated with option in Parametereditor.
Definition: PARA_Lib.h:911
@ FLAG_VOLATILE
Value is modified by uC, must be polled regularly.
Definition: PARA_Lib.h:913
@ FLAG_NONE
No special flags.
Definition: PARA_Lib.h:909
@ FLAG_WRITE_APPROVE_REQUEST
Definition: PARA_Lib.h:917
@ FLAG_SYSTEM
Parameter is added to Parametereditor and only necessary for parametereditor to work properly.
Definition: PARA_Lib.h:910
@ FLAG_SPECIAL_WRITE_ENABLE
The value can only be written in case a special option in the Parameter editor is activated.
Definition: PARA_Lib.h:915
@ FLAG_NO_FILE_OVERWRITE
Value is not written on write from Parameterfile Operation. It can only modified manually by user.
Definition: PARA_Lib.h:914
void GetParaValueAsObject(Parameter *p, uint16_t SubId, object *ob, uint8_t AccessLevel)
Get Parameter-value as object type.
Definition: PARA_Data.c:1921
Definition of variable limits and types.
Parameter-group.
Definition: PARA_Lib.h:899
const char * Name
Name of the group.
Definition: PARA_Lib.h:902
uint16_t GroupID
Identifier of the group. Must be unique.
Definition: PARA_Lib.h:900
uint16_t ParentGroupID
Identifier of the parent group. if the group is shown in the root, the parent id is 0.
Definition: PARA_Lib.h:901
Parameter-data structure for float (32-Bit)
Definition: PARA_Lib.h:1061
float DefaultWert
Factory default value.
Definition: PARA_Lib.h:1065
float MaxWert
Maximum value.
Definition: PARA_Lib.h:1064
float * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1062
float MinWert
Minimum value.
Definition: PARA_Lib.h:1063
Parameter-data structure for double (64-Bit)
Definition: PARA_Lib.h:1070
double MinWert
Minimum value.
Definition: PARA_Lib.h:1072
double * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1071
double DefaultWert
Factory default value.
Definition: PARA_Lib.h:1074
double MaxWert
Maximum value.
Definition: PARA_Lib.h:1073
Parameter-data structure for signed word (16-Bit)
Definition: PARA_Lib.h:1007
int16_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1010
int16_t MinWert
Minimum value.
Definition: PARA_Lib.h:1009
int16_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1008
int16_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1011
Parameter-data structure for signed int (32-Bit)
Definition: PARA_Lib.h:1025
int32_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1026
int32_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1028
int32_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1029
int32_t MinWert
Minimum value.
Definition: PARA_Lib.h:1027
Parameter-data structure for signed long (64-Bit)
Definition: PARA_Lib.h:1043
int64_t MinWert
Minimum value.
Definition: PARA_Lib.h:1045
int64_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1044
int64_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1046
int64_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1047
Parameter-data structure for signed char (8-Bit)
Definition: PARA_Lib.h:989
int8_t MaxWert
Maximum value.
Definition: PARA_Lib.h:992
int8_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:990
int8_t MinWert
Minimum value.
Definition: PARA_Lib.h:991
int8_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:993
Parameter-data structure for string.
Definition: PARA_Lib.h:1079
char * DefaultWert
Factory default value.
Definition: PARA_Lib.h:1082
int32_t MaxLength
Maximum string length.
Definition: PARA_Lib.h:1081
char * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1080
Parameter-data structure for unsigned word (16-Bit)
Definition: PARA_Lib.h:1016
uint16_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1017
uint16_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1020
uint16_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1019
uint16_t MinWert
Minimum value.
Definition: PARA_Lib.h:1018
Parameter-data structure for unsigned int (32-Bit)
Definition: PARA_Lib.h:1034
uint32_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1035
uint32_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1038
uint32_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1037
uint32_t MinWert
Minimum value.
Definition: PARA_Lib.h:1036
Parameter-data structure for unsigned long (64-Bit)
Definition: PARA_Lib.h:1052
uint64_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1055
uint64_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1056
uint64_t MinWert
Minimum value.
Definition: PARA_Lib.h:1054
uint64_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:1053
Parameter-data structure for unsigned char (8-Bit)
Definition: PARA_Lib.h:998
uint8_t DefaultWert
Factory default value.
Definition: PARA_Lib.h:1002
uint8_t MinWert
Minimum value.
Definition: PARA_Lib.h:1000
uint8_t * Wert
Pointer to Data value.
Definition: PARA_Lib.h:999
uint8_t MaxWert
Maximum value.
Definition: PARA_Lib.h:1001
Parameter definition (datatype independent).
Request information passed to the callbacks OnRead, OnWrite and SetToDefault of a parameter and to Is...
Definition: PARA_Lib.h:817
ParameterAccessSource tAccessSource
Source of access (see Access restrictions).
Definition: PARA_Lib.h:822
uint32_t ui32Offset
Character offset for strings, always 0 for all other datatypes.
Definition: PARA_Lib.h:821
uint8_t ui8AccessLevel
Actual AccessLevel (see Access restrictions).
Definition: PARA_Lib.h:823
void * pData
Read: output buffer for the value. Write: input buffer with the new value.
Definition: PARA_Lib.h:819
int32_t i32MaxCount
Buffer size in bytes.
Definition: PARA_Lib.h:820
uint16_t ui16SubId
SubID to process.
Definition: PARA_Lib.h:818