[prev in list] [next in list] [prev in thread] [next in thread] 

List:       rocs-devel
Subject:    Graph File Plugin Refactoring
From:       Andreas Cord-Landwehr <phoenixx () uni-paderborn ! de>
Date:       2012-09-12 20:46:24
Message-ID: 1887283.JW4vQaUqxT () sooner
[Download RAW message or body]

Dear all,

I just want to give a (short) heads up on the graph file plugin infrastructure 
changes that I did during the last weeks. Essentially, the changes are a major 
refactoring of the former file plugin system that resulted in a stand alone 
graph file plugin system. The imporant files for the new graph file plugin 
system are src/LoadSave/GraphPluginBackendManager.* and 
src/LoadSave/GraphPluginInterface.*. Both are completely documented and I hope 
they are self-explaining :)

Along with the refactoring went a cleanup and fixing of all graph file plugins 
of Rocs (including all formerly broken ones). Also the Rocs internal graph 
file format is now supported by the graph file plugin interface (though 
different to the other plugins it is a static plugin.) All plugins can be 
found in src/LoadSave/Plugins.

The current graph file plugin state is as follows:

1. Rocs internal graph file format:
* working, stable
* basic features covered by unit tests
* file format undocumented in handbook

2. DOT file plugin (Graphviz)
* working, stable
* test suite with all Graphviz example graphs added to unit tests, nearly all
  can be parsed
* missing unit tests for correct reading/writing of properties
* two small issues currently exists: non-ascii identifiers and xml-tags in 
  labels

3. GML file plugin (Graph Markup Language)
* parsing working, parsing correctness unknown
* only one unit test exists: we need more test data to 
  actually evalute the state of this plugin

4. TGF file plugin (Trivial Graph Format)
* working, stable
* documented in Rocs handbook
* fully covered by unit tests

5. KML file plugin (Keyhole Markup Language)
* unknown state (simple port of old plugin to current interface)
* test data is needed to really evaluate the plugin state
* IMO some assumptions in the parser look suspicious and for me it is not
  clear how import files should look like
* if we do not get any further test files to check the state of this plugin 
  until soft feature freeze, I would vote for disabling the plugin

6. TikZ/PGF Export plugin
* experimental state
* I am currently working on it and extending it with the features as I
  need them ;)

Conclusion: Most plugins are now in a good state. For some it is unclear how 
well they are working. But for all plugins we have in common that we need more 
test graph files to improve our unit test suite and to ensure that our plugins 
will work with all the strange graphs our users will throw into them ;)

To have a short overview on the current plugin state and open issues, I added 
a table to the todo list: http://community.kde.org/KDEEdu/Rocs/Todo

Greetings,
   Andreas
_______________________________________________
Rocs-devel mailing list
Rocs-devel@kde.org
https://mail.kde.org/mailman/listinfo/rocs-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic