Closed relrod closed 8 years ago
As we move forward with the v3 plan, this could simply be something that happens in the configuration file (and would be up to the person writing it to handle threading, etc.).
So, you'd have a different MapviewConfig
for each downlink, and essentially run each downlink in its own thread. This way, each downlink could have different callback functions (e.g. some downlinks might provide more information that could be useful to certain callback functions), and not interfere with the other downlinks.
I haven't specifically thought about this usecase with the v3 plan, but I think that v3 will be modular enough that this will end up being fairly easy to support.
In the future, it's likely that we will have multiple downlinks with different bits of information coming down at the at the same time. We should start thinking about how to support this scenario in such a way that it is possible to add n downlinks easily. At minimum, this requires making sure the
mapview
core library doesn't break on multithreading (it shouldn't!) and writing up documentation on how to add downlinks. However, it also means thatmapview-send
needs to be made aware of such downlinks so that the new information can be pushed to frontends, which further means adding configuration support for such downlinks and allowing the reference frontend (mapview-psc) to know about, and be able to display information from, all the downlinks as it hears about them.Lots of thought needs to happen before we can go down this road in any reasonable manner, but it is worth thinking about as a long-term goal.