@interface CocoaTimer : NSObject { @public phoenix::Timer *timer; NSTimer *instance; } -(id) initWith:(phoenix::Timer&)timer; -(NSTimer*) instance; -(void) update; -(void) run:(NSTimer*)instance; @end namespace phoenix { struct pTimer : public pObject { Timer &timer; CocoaTimer *cocoaTimer = nullptr; void setEnabled(bool enabled); void setInterval(unsigned milliseconds); pTimer(Timer &timer) : pObject(timer), timer(timer) {} void constructor(); void destructor(); }; }