Hi Manni,
die refToSelf Variante funktioniert bei mir, Dir fehlt bestimmt nur eine Zuweisung...bei mir siehts so aus.
1. Definition der Zeiger und der Callback-Methode (den Typecast (id) nicht vergessen) in der .m Datei (AppDelegate.m)
Dann bist Du die "Implicit conversion" Meldung los...
#import "AppDelegate.h"
void * refToLinearPotiSlider;
void * refToLinearPotiText;
void cb_lp_position(uint16_t position) {
//NSLog(@" %@", @"callback from linearpoti...");
[(id)refToLinearPotiSlider setIntegerValue: position];
[(id)refToLinearPotiText setIntegerValue: position];
}
@implementation AppDelegate
2. Die Zeiger auf die GUI Elemente in dieser Methode zuweisen (AppDelegate.m). Ich setze einen Slider und ein Textfeld (IBOutlets).
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
// Insert code here to initialize your application
refToLinearPotiSlider = linearpoti_slider;
refToLinearPotiText = linearpoti_text;
}
3. Registrierung der CallBack Methode in Deinem Code
linear_poti_register_callback(&lp, LINEAR_POTI_CALLBACK_POSITION, cb_lp_position);
das ruft die CallBack Methode wenn ich mien Poti bewege und setzt dann den Wert im GUI (Slider & Textfeld).
Gruss kutte