Projects/Marble/GeoData/GeoDataUse

< Projects‎ | Marble‎ | GeoData(Redirected from Projects/Marble/GeoDataUse)
Jump to: navigation, search

Contents

Using GeoData

This page tries to summarise the use of GeoData classes in marble so that its implementation details can match the use cases, and understand if any what issues might arise from manipulating them otherwise.

Use Cases

The use cases identified so far are:

  1. use any GeoData class as a convenient data holder in APIs.
    It is expected in that regard that classes have shared data.
    Let's call this usecase the "ToolClass" usecase.
  2. use GeoDataDocument as the root document of a "data file" in-memory representation, or even another grouping of information.
    In this use case, there would exist a "tree" of data matching a logical grouping of information.
    Let's call this usecase the "DataTree" usecase.

Actual Implemented Use Details

  • GeoData classes have shared data, in the sense that e.g. copying a GeoDataFeature is a shallow copy, with deep copy happening when one of the instances need to modify a value. This is all for the "ToolClass", and not much useful for the "DataTree". Pure parameter passing benefits from shallow copy.

TODO others??

Common Issues and Pitfalls

In the past or present, some issues have appeared and need to be remembered/adressed:

  1. memory ownership is an issue to be determined depending on use case.
  2. Compliance with KML spec is a priority, limiting differing needs.

This page was last modified on 14 September 2011, at 22:51. This page has been accessed 2,952 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal