David Megginson wrote: > Jon S. Berndt wrote: > > I'd like to consider using this to send the sound manager events of > > interest, but a protocol for message passing must be reached. > > Jon sent me some ideas by private mail, and they look workable -- it > really comes down to a judgement call about how frequently the > messages will be used. If they're relatively infrequent (say, less > than a few every second, as seems the case), then we should optimize > for ease of coding rather than performance.
David Megginson also wrote: > If the property manager could enforce basic constraints, it could > eliminate a lot of C++ code. What are some reasonable facets for a > property? Here's what I've thought of, going from general to > specific: Why not kill to birds with one stone, and add the following to the property system: + Listener registration on "event" properties. So the FDM has an event to distribute, like a landing, it just sets the appropriate properties for the event ("gears[n]/WoW", "gears[n]/sink_rate" etc...) and then calls something like: fgNewEvent("/fdm/events/landing"); Listeners would register via: fgAddListener("/fdm/event/landing", handler); Where "handler" was an instance of FGEventListener, or somesuch. This has all the cababilities of a hard-coded event system, and all the flexibility advantages of the property system. The only problem with this (specific) scheme is that only one event of a given type can be active in the property tree. That's fixable too, with a little magic, something like: "/events[n]/gear[0]/WoW", where n is the event ID delivered with the event call. The property manager would know when the event was done, so it could clean up the arguments automatically. Andy -- Andrew J. Ross NextBus Information Systems Senior Software Engineer Emeryville, CA [EMAIL PROTECTED] http://www.nextbus.com "Men go crazy in conflagrations. They only get better one by one." - Sting (misquoted) _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel