I've actually done some work on the vector automation, and tried to code a basic prototype. My code can be found here: https://github.com/Orpheon/lmms/tree/VectorAutomation I am a newbie in C++, and have never worked with Qt, which is causing me some problems right now. Also, I should mention that my first goal here was to get a prototype working, which is why I just ignored and/or commented out lots of features, like selecting or even moving. That's intentional, I wanted to get a framework done as soon as possible.
The implementation I used was to define an automation track as a series of connected points, which I called Control Points. If one wants a value at any time, one simply interpolates between the nearest two Control Points. Reading about the different sorts of lists in Qt, I thought that a linked list would be ideal, because it supports endless inserting at positions (which we want, because these control points should be in the list in chronological order) and it's disadvantage is bad support for indexing, which we rarely need (we usually iterate over everything anyways), or so I thought. Is this a good idea? Qt documentation spoke about two kinds of implementations of iterators, a more low-level C based one and a high-level Java similar one. I took the high-level one, but then noticed that you people used the other one for the old timeMap. Should I use the low-level iterator? Initializing such a list and iterator, which apparently requires the type of the object to be put in, I haven't understood completely. What happens if you want to iterate over it in a function? I put the objects directly in the list, would pointers be a better idea? Finally, what else am I doing wrong, style-wise or stability-wise? If anyone has the patience and motivation to look through my code, I'd be very grateful. I also printed all my errors into a file "errors" which is part of the git repository so that people can see what the problems are without having to compile. Thank you. -- Orpheon PS: In the wiki and stuff the LMMS repository is always marked as git://lmms.git.sf.net/gitroot/lmms/lmms . Can anyone tell me how to see or use this online, through a browser à la github? Or is it deprecated anyways, like the IRC title? ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ LMMS-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/lmms-devel
