Marble/FileManagement: Difference between revisions

    From KDE TechBase
    (Created page with 'Here are some various ideas to have some control on the data we want to display on marble from files: The file loading from a user point of view happens in {{class|PlacemarkMana...')
     
     
    (One intermediate revision by one other user not shown)
    Line 1: Line 1:
    Here are some various ideas to have some control on the data we want to display on marble from files:
    === File Management Overview ===


    The file loading from a user point of view happens in {{class|PlacemarkManager|kdeedu|4.x}} (already described in [[Projects/Marble/Placemark|Placemark]])
    The file loading historically was in {{class|PlacemarkManager|kdeedu|4.x}} and effort is ongoing to refactor this in the {{class|FileManager|kdeedu|4.x}}.


    My ideas are to separate the file loading within PlacemarkManager from the management of placemarks per se. This means that the filling of the PlacemarkModel will be done in PlacemarkManager, while the current PlacemarkLoader threading would be used for file reading. (The cache binary format could then also be used for other parsings maybe)
    The ideas are to separate the file loading from other interested parts of marble, and to keep a reference store for {{class|GeoDataObject|kdeedu|4.x}} read from those files.


    The role of a FileManager would be
    As a consequence, PlacemarkManager solely deals with handling the placemarks, and relies on the FileManager to signal when files are read/closed. Other interested class can connect to those signals as well to know about file action.
     
    The role of the FileManager is:
    * support the various file formats thanks to {{class|GeoDataParser|kdeedu|4.x}} and use the parsers quite exclusively from here.
    * support the various file formats thanks to {{class|GeoDataParser|kdeedu|4.x}} and use the parsers quite exclusively from here.
    * use threading support similar to what {{class|PlacemarkLoader|kdeedu|4.x}} does.
    * use threading support with {{class|FileLoader|kdeedu|4.x}} loading the file asynchronously.
    * provide the results of those parsing to models through {{class|MarbleDataFacade|kdeedu|4.x}} so that plugins can have easy access to data.
    * provide the results of those parsing to models through {{class|MarbleFileViewModel|kdeedu|4.x}} so that plugins can have easy access to file data.
    * work on a binding between the {{class|GeoGraphicsItem|kdeedu|4.x}} and those {{class|GeoDataObject|kdeedu|4.x}}.

    Latest revision as of 21:01, 10 March 2016

    File Management Overview

    The file loading historically was in Expression error: Unrecognized word "x". and effort is ongoing to refactor this in the Expression error: Unrecognized word "x"..

    The ideas are to separate the file loading from other interested parts of marble, and to keep a reference store for Expression error: Unrecognized word "x". read from those files.

    As a consequence, PlacemarkManager solely deals with handling the placemarks, and relies on the FileManager to signal when files are read/closed. Other interested class can connect to those signals as well to know about file action.

    The role of the FileManager is:

    • support the various file formats thanks to Expression error: Unrecognized word "x". and use the parsers quite exclusively from here.
    • use threading support with Expression error: Unrecognized word "x". loading the file asynchronously.
    • provide the results of those parsing to models through Expression error: Unrecognized word "x". so that plugins can have easy access to file data.