Application Configuration GUI.
Karel Gardas
karel.gardas at centrum.cz
Fri Apr 5 19:56:45 UTC 2013
Hi,
may I share some ideas here? I've been quite surprised to see for
example TI's HalCodeGen tool which is basically GUI where you set
various properties of the required BSP/application code and whole code
will be generated from it. If you can I recommend to search for some
screenshot or just install evaluation version on Windows to get an idea
what's I'm talking about.
Anyway, back to the topic. I'm quite heavily involved in a few projects
where Eclipse IDE is used. Fortunately this is not just yet another IDE,
but it also provides very nice modeling capability based on kind of
simplified Meta Object Fascility (MOF) which is known as Eclipse
Modeling Framework (EMF) in Eclipse domain. The lowest modeling layer of
this is so called Ecore. If you know UML class diagram so please imagine
it's kind of same. I'm not sure this is available in UML, but in Ecore
you can also attached so called annotations (text to text map) to
various constructs. Now, what's most interesting is that Eclipse/EMF
provides so called M2T (model to text) tools which very easy you a task
of creating custom text generator from the model (i.e. Ecore).
Concrete example from one of our projects here. I do have a data model
of the application and my task was to create a persistent WebService
from it. I've added to model annotation to mark a service root and
service root class and then created generator which generates REST-based
web service from it which stores all data in RDBMS (PostgreSQL) using
old fasioned JDBC way. The generator is fully integrated into Eclipse
and it's about 800 lines of Xpand/Xcheck[1] code where absolute majority
is just Java template code. Generated webservice is fully functional,
developer does not need to change single line of code. And it's about
4500 lines of Java code for my application data model.
I'm writing all this just to recommend to also look at this Eclipse way.
More importantly, if you don't like Ecore diagram itself, then you can
use GMF (Graphics Modeling Framework)[2]/GEF (Graphical Editing
Framework) and you can create your own custom diagrams very easily.
IMHO advantage of Eclipse (in comparison with your choices) is:
- platform portability (Windows/Linux)
- C/C++ environment -- for developing rest of RTEMS application
- debugging environment -- for debugging whole RTEMS application
Disadvantage(s)? If you are not familiar with Eclipse it'll take you few
days to get into it.
So, please take it as a friendly advice to also look into another
direction for your project.
Thanks!
Karel
[1]: http://wiki.eclipse.org/Xpand
[2]: http://www.eclipse.org/modeling/gmp/
[3]: http://www.eclipse.org/gef/
On 04/ 5/13 09:16 PM, Shubham Somani wrote:
> Hi,
>
>
> I would wish to take up the project of making an Application
> Configuration GUI for RTEMS in this year's GSoC.
>
> I was studying the various approaches available and it eventually boiled
> down to this-
>
>
> APPROACH
>
>
>
> PROS
>
>
>
> CONS
>
> 1) To use the configuration
>
> GUI from eCos and NutOS.
>
>
>
> - Based on WX Widgets.
>
> - Highly Portable
>
> (runs on Windows and Linux)
>
>
>
> The code is heavily based on templates which are difficult to understand
> and port.
>
> 2) To use the config infrastructure used by the GNU/Linux kernel.
>
>
>
> Works well on Linux.
>
>
>
> Does not support MS Windows.
>
> To write a cross platform GUI in python. This also can be done in 2 ways-
>
> 3a)- To start with an existing open source project like Xpresser.
>
>
>
> Portable
>
>
>
> Documentation is scarce.
>
> 3b) To code the application from scratch using python and GTK+. If any
> OS specific requirements are needed then they can be coded separately.
>
> **
>
>
>
> Highly portable & modifiable.
>
>
>
> Coding has to start from scratch.
>
>
>
>
> This made me think that approach 3b would be the best for a baseline.
> These are just my Initial ideas. A lot of other work apart from this
> (XML parsing,rewriting conf.t etc) also needs to be done. I would
> discuss them once the baseline becomes clear. Please help me analyse any
> deficiencies in my understanding.
>
> Cheers,
> Shubham
>
>
> _______________________________________________
> rtems-devel mailing list
> rtems-devel at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-devel
More information about the devel
mailing list