Wenn ich mich recht erinnere, dann muss eine Variablendeklaration IMMER vor allen Rechnungen stehen (zumindestens in C, u.U. in C++ nicht unbedingt). Also
FLOAT64 FSAPI efis_cb(PELEMENT_ICON pelement)
{
FLOAT64 ausgabe = 0;
lookup_var(&zustand);
ausgabe = zustand.var_value.n;
return ausgabe;
}
In diesem Fall tut es aber auch:
FLOAT64 FSAPI efis_cb(PELEMENT_ICON pelement)
{
FLOAT64 ausgabe = pelement->source_var.var_value.n;
return ausgabe;
}
oder
FLOAT64 FSAPI efis_cb(PELEMENT_ICON pelement)
{
return pelement->source_var.var_value.n;
}
in dem Fall kann man auch den Callback ganz weglassen und im MAKE_ICON "NULL" anstelle von "efis_cb" verwenden.
Vielleicht nicht ganz deutlich gemacht, es ist durchaus erlaubt im MAKE_ICON keine Variable (bzw. MODULE_VAR_NONE) zu setzen und dafür eine callback-Funktion zu verwenden, oder eben eine Variable im MAKE_ICON und dann NULL als callback (also keinen) wie oben, oder eine Kombination aus Variable und Callback.
Arne Bartels
|