• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • src
  • lib
  • marble
StackedTileLoader.h
Go to the documentation of this file.
1 /*
2  * This file is part of the Marble Virtual Globe.
3  *
4  * Copyright 2005-2007 Torsten Rahn <tackat@kde.org>
5  * Copyright 2007 Inge Wallin <ingwa@kde.org>
6  * Copyright 2009 Jens-Michael Hoffmann <jensmh@gmx.de>
7  * Copyright 2010-2012 Bernhard Beschow <bbeschow@cs.tu-berlin.de>
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Library General Public
11  * License as published by the Free Software Foundation; either
12  * version 2 of the License, or (at your option) any later version.
13  *
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  * Library General Public License for more details.
18  *
19  * You should have received a copy of the GNU Library General Public License
20  * along with this library; see the file COPYING.LIB. If not, write to
21  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22  * Boston, MA 02110-1301, USA.
23  */
24 
25 #ifndef MARBLE_STACKEDTILELOADER_H
26 #define MARBLE_STACKEDTILELOADER_H
27 
28 #include <QObject>
29 #include <QSize>
30 
31 #include "GeoSceneTextureTile.h"
32 #include "TileId.h"
33 #include "MarbleGlobal.h"
34 
35 class QImage;
36 class QString;
37 
38 namespace Marble
39 {
40 
41 class MergedLayerDecorator;
42 class StackedTile;
43 
44 class StackedTileLoaderPrivate;
45 
59 class StackedTileLoader : public QObject
60 {
61  Q_OBJECT
62 
63  public:
70  explicit StackedTileLoader( MergedLayerDecorator *mergedLayerDecorator, QObject *parent = 0 );
71  virtual ~StackedTileLoader();
72 
73  int tileColumnCount( int level ) const;
74 
75  int tileRowCount( int level ) const;
76 
77  GeoSceneTextureTile::Projection tileProjection() const;
78 
79  QSize tileSize() const;
80 
87  const StackedTile* loadTile( TileId const &stackedTileId );
88 
92  void resetTilehash();
93 
99  void cleanupTilehash();
100 
105  quint64 volatileCacheLimit() const;
106 
110  QList<TileId> visibleTiles() const;
111 
116  int tileCount() const;
117 
122  void setVolatileCacheLimit( quint64 kiloBytes );
123 
128  void clear();
129 
132  void updateTile(TileId const & tileId, QImage const &tileImage );
133 
134  Q_SIGNALS:
135  void tileLoaded( TileId const &tileId );
136  void cleared();
137 
138  private:
139  Q_DISABLE_COPY( StackedTileLoader )
140 
141  friend class StackedTileLoaderPrivate;
142  StackedTileLoaderPrivate* const d;
143 };
144 
145 }
146 
147 #endif
TileId.h
Marble::StackedTileLoader::tileLoaded
void tileLoaded(TileId const &tileId)
Marble::GeoSceneTiled::Projection
Projection
Definition: GeoSceneTiled.h:47
QObject
Marble::StackedTileLoader::StackedTileLoader
StackedTileLoader(MergedLayerDecorator *mergedLayerDecorator, QObject *parent=0)
Creates a new tile loader.
Definition: StackedTileLoader.cpp:59
Marble::StackedTileLoader
Tile loading from a quad tree.
Definition: StackedTileLoader.h:59
Marble::StackedTile
A single tile that consists of a stack of Tile layers.
Definition: StackedTile.h:56
Marble::StackedTileLoader::clear
void clear()
Effectively triggers a reload of all tiles that are currently in use and clears the tile cache in phy...
Definition: StackedTileLoader.cpp:210
Marble::MergedLayerDecorator
Definition: MergedLayerDecorator.h:40
Marble::StackedTileLoader::~StackedTileLoader
virtual ~StackedTileLoader()
Definition: StackedTileLoader.cpp:65
Marble::StackedTileLoader::StackedTileLoaderPrivate
friend class StackedTileLoaderPrivate
Definition: StackedTileLoader.h:141
Marble::StackedTileLoader::setVolatileCacheLimit
void setVolatileCacheLimit(quint64 kiloBytes)
Set the limit of the volatile (in RAM) cache.
Definition: StackedTileLoader.cpp:183
Marble::StackedTileLoader::cleanupTilehash
void cleanupTilehash()
Cleans up the internal tile hash.
Definition: StackedTileLoader.cpp:101
Marble::StackedTileLoader::updateTile
void updateTile(TileId const &tileId, QImage const &tileImage)
Definition: StackedTileLoader.cpp:189
Marble::StackedTileLoader::tileSize
QSize tileSize() const
Definition: StackedTileLoader.cpp:86
MarbleGlobal.h
Marble::StackedTileLoader::visibleTiles
QList< TileId > visibleTiles() const
Reloads the tiles that are currently displayed.
Definition: StackedTileLoader.cpp:173
Marble::StackedTileLoader::tileColumnCount
int tileColumnCount(int level) const
Definition: StackedTileLoader.cpp:71
Marble::StackedTileLoader::tileRowCount
int tileRowCount(int level) const
Definition: StackedTileLoader.cpp:76
Marble::TileId
Definition: TileId.h:27
Marble::StackedTileLoader::tileProjection
GeoSceneTextureTile::Projection tileProjection() const
Definition: StackedTileLoader.cpp:81
Marble::StackedTileLoader::cleared
void cleared()
Marble::StackedTileLoader::tileCount
int tileCount() const
Return the number of tiles in the cache.
Definition: StackedTileLoader.cpp:178
GeoSceneTextureTile.h
Marble::StackedTileLoader::volatileCacheLimit
quint64 volatileCacheLimit() const
Returns the limit of the volatile (in RAM) cache.
Definition: StackedTileLoader.cpp:168
Marble::StackedTileLoader::resetTilehash
void resetTilehash()
Resets the internal tile hash.
Definition: StackedTileLoader.cpp:91
Marble::StackedTileLoader::loadTile
const StackedTile * loadTile(TileId const &stackedTileId)
Loads a tile and returns it.
Definition: StackedTileLoader.cpp:119
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:53 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal