I am typing this in ithought, a neat program from voltron.
I finally decided how to name/split up/diddle the functions that are currently spread in engine_commands.c, engine.c and so on. I decided to let myself think a little more "object-wise", and picked up my worn copy of Design Patterns and sat for awhile. In accordance with the Doc/View model,
- Engine intrinsics go in engine.c
- Engine message interface definitions (enum, etc) go in commands.h along with other types of messages
- code for engine DOC responses go in something like engine_doc_imp.c
- code for engine VIEW responses go in engine_view_imp.c
- Audio mixing functions go in mixer.c
Later on there will be multiple VIEW's for patterns; most likely, one for tracker-style and one for piano-roll-style. I could place those in pattern-view-tracker-imp.c (um, maybe I want to shorten that??)
:-) wish me luck