<div dir="ltr">Ah I see what's up, poller() automatically wraps the arg in new_handle, but timer does not.  In either case the callback author has to unbox the handle back into whatever it was they passed in.  I'll push a PR.<div>
<br></div><div>-Michel</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 20, 2013 at 8:07 AM, Michel Pelletier <span dir="ltr"><<a href="mailto:pelletier.michel@gmail.com" target="_blank">pelletier.michel@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Yes this is unfortunate, the arg can only be something fii thinks is a pointer.  You have to "box/unbox" it with ffi.new_handle/fii.from_handle<div>
<br></div><div><a href="http://cffi.readthedocs.org/en/release-0.8/#misc-methods-on-ffi" target="_blank">http://cffi.readthedocs.org/en/release-0.8/#misc-methods-on-ffi</a><span class="HOEnZb"><font color="#888888"><br>
</font></span></div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-Michel</div></font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 20, 2013 at 4:09 AM, Michael Haberler <span dir="ltr"><<a href="mailto:mail17@mah.priv.at" target="_blank">mail17@mah.priv.at</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I'm stuck at passing 'self' as a timer callback argument:<br>
<br>
Class Test:<br>
<br>
    @ffi.callback('zloop_fn')<br>
    def timer_event(loop, item, arg):<br>
       print type(loop), type(item), type(arg)<br>
<br>
    def __init__(self):<br>
        ...<br>
        zloop.timer(self.loop, msec, 1, self.timer_event, self)<br>
        # this raises: TypeError: initializer for ctype 'void *' must be a cdata pointer, not instance<br>
<br>
how do I coerce this into action?<br>
<br>
- Michael<br>
_______________________________________________<br>
zeromq-dev mailing list<br>
<a href="mailto:zeromq-dev@lists.zeromq.org" target="_blank">zeromq-dev@lists.zeromq.org</a><br>
<a href="http://lists.zeromq.org/mailman/listinfo/zeromq-dev" target="_blank">http://lists.zeromq.org/mailman/listinfo/zeromq-dev</a><br>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>