https://bitbucket.org/daniel_fort/magic-lantern
Raw File
Tip revision: 967a59cdfc0bf7f2d37225e810224ad73fb72290 authored by Daniel Fort on 05 July 2018, 01:12:46 UTC
Closed branch update-to-EOSM.203_crop_rec
Tip revision: 967a59c
module_strings_wrapper.h

/* this struct supplies additional information like license, author etc - optional */
typedef struct
{
    const char *name;
    const char *value;
} module_strpair_t;

#define MODULE_STRINGS_SECTION

#define MODULE_STRINGS_START()                                  MODULE_STRINGS_START_(MODULE_STRINGS_PREFIX)
#define MODULE_STRINGS_START_(varname)                          MODULE_STRINGS_START__(varname)
#define MODULE_STRINGS_START__(varname)                         module_strpair_t varname[] MODULE_STRINGS_SECTION = {
#define MODULE_STRING(field,value)                                  { field, value },
#define MODULE_STRINGS_END()                                        { (const char *)0, (const char *)0 }\
                                                                };

static const char* module_get_string(module_strpair_t *strings, const char* name)
{
    if(strings)
    {
        for( ; strings->name != NULL; strings++)
        {
            if(!strcmp(strings->name, name))
            {
                return strings->value;
            }
        }
    }
    
    return NULL;
}
back to top