[chimera-dev] event loop

Greg Couch gregc at cgl.ucsf.edu
Fri Feb 5 14:04:33 PST 2016


For me, the event loop version is conceptually simpler because it is 
integrated with the mechanism that dispatches mouse events.  But that 
means to you need to understand how to integrate it with the application 
event loop, where the details vary with which GUI toolkit is used.  The 
ReadStdin version just uses Chimera abstractions, so that is very 
appealing.  Both techniques will work with ChimeraX.

    -- Greg

On 2/5/2016 11:31 AM, Dougherty, Matthew T wrote:
>
> I am leaning toward this
>
> An alternative would be to use threads where the queue is checked 
> every frame.  See ReadStdin/__init__.py for details there.
>
>
> any advantage of one over the other?
>
> will this work for chimera2?
>
>
>
> Matthew Dougherty
> National Center for Macromolecular Imaging
> Baylor College of Medicine
> =================================================
> =================================================
>
>
> ------------------------------------------------------------------------
> *From:* Greg Couch <gregc at cgl.ucsf.edu>
> *Sent:* Friday, February 5, 2016 1:05 PM
> *To:* Dougherty, Matthew T; chimera-dev at cgl.ucsf.edu
> *Subject:* Re: [chimera-dev] event loop
> Use the (Tcl) event loop.  If you run the interface in a separate 
> process, then you have chimera's event loop invoke a callback when 
> there is data to be read on the socket connecting the two processes.  
> That is what's done to implement the --send command line option.  See 
> DBPuppet/tcl_sockets.py for details.
>
> An alternative would be to use threads where the queue is checked 
> every frame.  See ReadStdin/__init__.py for details there.
>
>     HTH,
>
>    Greg
>
> On 2/4/2016 2:37 PM, Dougherty, Matthew T wrote:
>>
>> I am working on a human interface for volume rendering.
>>
>>
>> The livid ds1 mixer uses midi through USB.
>>
>> http://lividinstruments.com/products/ds1/
>>
>>
>> I should be able to use python midi libraries for access.
>>
>>
>> This leads to the problem of the midi implementation, and a question 
>> as to a similar implementation for chimera2.
>>
>>
>> One implementation would insert into the event loop, another approach 
>> could be tied to a frame/trigger callback.
>>
>>
>> Any suggestions?
>>
>>
>> Matthew Dougherty
>> National Center for Macromolecular Imaging
>> Baylor College of Medicine
>> =================================================
>> =================================================
>>
>>
>> _______________________________________________
>> Chimera-dev mailing list
>> Chimera-dev at cgl.ucsf.edu
>> http://www.rbvi.ucsf.edu/mailman/listinfo/chimera-dev
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-dev/attachments/20160205/113ccefd/attachment.html>


More information about the Chimera-dev mailing list