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