Future for Managed Code

SDK supports Prepar3D’s philosophy of an open development architecture and encourages third parties to bring new innovations with improved add-ons and training content.
Locked
vertigo
Posts: 40
Joined: Mon Sep 13, 2010 5:08 pm

Post by vertigo »

Hey Guys,



Can you tell me if Lockheed / P3D has plans on continuing with support of the C# language for future SDK / SimConnect releases?



Thanks!



Christian
beatle
Posts: 88
Joined: Thu Sep 16, 2010 8:34 pm

Post by beatle »

Hey Christian,



I think you can safely assume we will continue to support and even expand the support for managed code/C# in the future (I'm personally a big fan :->).



We are now using it inside the app for the new UI code (which is WPF based using a mixture of C# and managed C++). Some of our current SDK tools are also using managed code (although most of them are based on the older WinForms code at this point).



I'm hoping to find the time to finish rewriting the SimConnect client code generator (about 60+% of the client library code is auto-generated from an API description file) to generate a managed client library like the one I released via my blog. My current release does work with P3D, although you don't get access to the couple of new functions that were added in the most recent go around. Also looking into supporting SimConnect clients on non-windows environments and embedded systems. I've also got a .Net Micro Framework board I've been playing with and hope to have a SimConnect client library for it at some point.



We're also looking into ways to allow 3rd parties to write in-proc addons using managed code, but no time estimate on when we might have that ability :->



Tim
vertigo
Posts: 40
Joined: Mon Sep 13, 2010 5:08 pm

Post by vertigo »

Hey Tim,



Thanks for the detailed update. I ask about Managed code as I have been a C / C++ guy for many years but clients are looking for that WPF look and the demand for GUI / UI is growing in our sector.



We are currently looking for embedded hardware I/O solutions that work well with P3D. Maybe .NET Micro Framework would be a good solution?



Christian
beatle
Posts: 88
Joined: Thu Sep 16, 2010 8:34 pm

Post by beatle »

Hey Christian,



I'm hopeful about the Micro Framework, but haven't had much time to play with it yet. I need to find out what's missing compared to the full framework to see how hard it will be to port over a SimConnect client library. I know that while it has a scaled down version of the Presentation Framework (ie WPF), it doesn't support XAML for the UI definition, you have to do everything procedurally in code. I seem to remember reading that it doesn't support custom attributes either, which my version of the managed client library makes use of for declaring data structures for use with GetDataOnSimObject, so I'll have to come up with something different there.



I also hope to come up with a "simple C/C++" client library that could be distributed in source code form and build with most embedded system toolchains at some point.



I think the managed client lib I released via my blog should also work on Linux with Mono, but haven't actually tried that myself. That would allow doing SimConnect clients on any platform that Mono can also run on (not sure if Mono works on something like uCLinux though).



Tim
vertigo
Posts: 40
Joined: Mon Sep 13, 2010 5:08 pm

Post by vertigo »

Tim,



I just tried you SDK and there are several errors with reference to Virtual Earth. I think this needs to be updated with the new BING MAPS.



Cheers!



Christian

beatle
Posts: 88
Joined: Thu Sep 16, 2010 8:34 pm

Post by beatle »

Hey Christian,



I'll probably have to just remove those samples. If they were desktop clients, they use the Bing/VirtualEarth 3D Map Control which Bing has dropped support for (so there's no way to install it on your machine anymore). If they were Silverlight clients, then I probably need to upgrade them to the latest version of the Silverlight Bing Map control. I need to find a decent/free WPF based map control (I've seen one that works with data from Open Street Map, but haven't downloaded and tried it yet).



The rest of the SDK should be fine though (the console apps and the list based apps).



Also, here's a pointer to the .Net Micro Framework hardware I've been playing with - http://www.tinyclr.com/hardware/12/fez-cobra/#/list/1/. I picked this specific one because it supported an LCD screen. I actually bought the OEM kit, which includes the main Cobra board, the LCD interface board, a 3.5 inch LCD touch screen, and an enclosure (although they appear to be out of stock on the Cobra boards at the moment).



Tim
Locked