From: danny mcrae <khjklujn@ya...> - 2007-12-27 00:15:54
Not that my recent contributions should weight very much in architectural decisions, but I like the idea of separating the data from the widgets. Though my reasons might be a bit obtuse and totally off subject.
Much of the music related development I've been doing this year has been focused around algorithmically generating drum patterns that sound like they were played by a drummer. One of the reasons I haven't tried to integrate this work back into LMMS is that the development has been done in Python, and I have no interest in converting it to C++. It's not something I was envisioning as being done in real time. I want the machine to generate something that will be close to being usable, and once I've found a pattern I like, I'll
do the detail editing to get it to where I really want it to be. Mostly I just want the computer to handle the tedious details of keeping track of whether the strike was done by the left hand or right hand, get the accenting in places that sound like a real groove, and in general take care of all of those annoying little things that have to be done make a drum machine not sound like a drum machine.
Anyway, I took a look into integrating Python into LMMS as a scripting language. Getting the interpreter hooked up only took a couple of lines of code, but exposing the data in LMMS to Python would be a nightmare of hand crafted widget wrappers where I have no interest in the widgets, I'm just after the information that's associated with them.
Oddly enough, surroundAreaModel would be a good example of the kind of thing I'm looking for, at least in terms of it being an aggregated model, and the aggregation is taken care of in the model class rather than as separate "x" and "y" data element "models" defined surroundAreaView. Aggregated data structures would not be that difficult to expose to non-GUI, i.e. scripting, control (or, at least I currently believe :)
Looking for last minute shopping deals?
Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping
Get latest updates about Open Source Projects, Conferences and News.