Hi Tapani, On 30 January 2015 at 10:33, Tapani Pälli <tapani.pa...@intel.com> wrote: > Hi; > > As a Finn I interpret silence as 'yes' :) I believe this interpretation spans across multiple countries :-P
> So I started to hack on swap > completion event support. I believe it can be useful for other backends also > since then application can throttle rendering and receive information on > swaps. > > I made early hacky prototype that fixes the issues I've seen with nacl > backend: > http://cgit.freedesktop.org/~tpalli/waffle/log/?h=hacky > > I have a few questions on implementation details for the > 'waffle_swap_complete'. This is my proposal for the API: > > typedef void (*waffle_swapbuffers_cb) (struct waffle_window *); > > bool waffle_set_swap_complete_handler(waffle_swapbuffers_cb func); > (would fail if backend does not support this) > Considering the needs of the nacl platform, I'm not against the idea of adding new API. Then again I believe that Chad will have some input about it. Small note: in it's current design the API can be abused, a bit. My comments on the patch should have all the details. > Optionally we could put timestamp there also as callback data but I'm not > sure what format is preferred for that. Any ideas here would be good. I'm > not sure the OML triple (ust, msc, sbc) like in GLX_INTEL_swap_event make > sense or should it be something simpler? > I fear that I don't have the relevant experience to provide any meaningful comment on the topic :'-( > Then, whenever waffle_wndow_swap_buffers(window) gets called, backend will > call callback if it is set. It should be noted that it can happen from a > separate thread. > > How does this sound? > I've sent out a few comments/bikeshed(s) on the series - hope that you find them useful, or at least not too picky. Thanks Emil _______________________________________________ waffle mailing list waffle@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/waffle