Normal
Shared memory segments aren't perfect since you don't know how many and which variables there will be, and in which order they are stacked in memory. But this will be the way to go.Windows messages aren't perfect either, since most of the LCD softwares poll the data. Only jaLCDs and Girder want the key/value pairs to be sent.The plugin will work with a database-DLL that stores all key/value pairs. Each LCD software gets its own dll that polls the data from the database with s.th. like "char * GetValue(char * Key);". There are other exported functions as well, so plugins for additional (polling) softwares will be easy to implement, they may run simultanously and no memory is wasted.The database DLL and the LCD software plugin DLLs are already finished. What's still to be done is about 60% of the MediaPortal plugin.
Shared memory segments aren't perfect since you don't know how many and which variables there will be, and in which order they are stacked in memory. But this will be the way to go.
Windows messages aren't perfect either, since most of the LCD softwares poll the data. Only jaLCDs and Girder want the key/value pairs to be sent.
The plugin will work with a database-DLL that stores all key/value pairs. Each LCD software gets its own dll that polls the data from the database with s.th. like "char * GetValue(char * Key);". There are other exported functions as well, so plugins for additional (polling) softwares will be easy to implement, they may run simultanously and no memory is wasted.
The database DLL and the LCD software plugin DLLs are already finished. What's still to be done is about 60% of the MediaPortal plugin.