»
«


Today we started our first software endeavor – the Signal Analysis and Visualization Engine (S.A.V.E.) Toolbox. It will allow the user to compose complex systems in terms of nodes – either pre-packaged or hand-coded in a C-like language – which execute various functions on their inputs and feed the outputs to connected nodes. The user may write or select various input functions, and graph outputs in an oscilloscope-style x-y plot. Additionally, the S.A.V.E. toolbox will also be able to parse the functions represented by these node nets into Verilog. At the end of the day, we want the S.A.V.E. toolbox to be the principal interface between the end-user and the FPGA on the Leaf boards.

Today we began to plan out how to implement the GUI front-end of the toolbox. We’re using the GTK+ toolkit, an object-oriented extension of standard C made for GUI design. Despite how impressed I am with the library of features contained in GTK+, I’m a little dissatisfied with its object-oriented nature. At the core, I’d have to say I’m pretty utilitarian, and object-oriented program seems to sacrifice efficiency  for gains in… well… I haven’t yet seen what you really gain. I guess you could say you gain some level of generality, but i think its too much. Anything you’d need to do with classes, objects, and inheritance  (and I’d say there aren’t too many things) you could always do manually with structs in standard C. The object-oriented paradigm, however, engenders the idea that everything should be implemented with classes and objects. Thus, much as we did today, you end up spending most of your time deciding which classes each functions should live in, and designing initializer after initializer after initializer. I suppose in the end I’ll just have to suck it up though, because I sure as hell don’t want to redo all the hard work that GTK+ has taken care of for me.


This entry was posted by bbradlyn on Tuesday, June 9th, 2009 at 1:34 am. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response.

Leave a Reply




Contact webmaster@leaflabs.com with website issues

Powered by WordPress, nginx, Linux, vim, and coffee.

This site intended to be valid HTML 4.01 Strict. Best viewed with any standards-compliant browser.

Copyright LeafLabs LLC, 2009-2010.
Unless otherwise noted all content on this website is released under the Creative Commons Attribution Licence 3.0

Hello Anonymous! Login?