File indexing completed on 2024-05-12 03:50:12

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2013 Mohammed Nafees <nafees.technocool@gmail.com>
0004 //
0005 
0006 #ifndef GEODATAIMAGEPYRAMID_H
0007 #define GEODATAIMAGEPYRAMID_H
0008 
0009 #include "GeoDataObject.h"
0010 #include "geodata_export.h"
0011 
0012 namespace Marble
0013 {
0014 
0015 class GeoDataImagePyramidPrivate;
0016 
0017 /**
0018  */
0019 class GEODATA_EXPORT GeoDataImagePyramid : public GeoDataObject
0020 {
0021 public:
0022     GeoDataImagePyramid();
0023 
0024     GeoDataImagePyramid( const GeoDataImagePyramid &other );
0025 
0026     GeoDataImagePyramid& operator=( const GeoDataImagePyramid &other );
0027     bool operator==( const GeoDataImagePyramid &other ) const;
0028     bool operator!=( const GeoDataImagePyramid &other ) const;
0029 
0030     ~GeoDataImagePyramid() override;
0031 
0032     /** Provides type information for downcasting a GeoNode */
0033     const char* nodeType() const override;
0034 
0035     enum GridOrigin {
0036         LowerLeft,
0037         UpperLeft
0038     };
0039 
0040     int tileSize() const;
0041     void setTileSize(int tileSize);
0042 
0043     int maxWidth() const;
0044     void setMaxWidth(int maxWidth);
0045 
0046     int maxHeight() const;
0047     void setMaxHeight(int maxHeight);
0048 
0049     GridOrigin gridOrigin() const;
0050     void setGridOrigin(GridOrigin gridOrigin);
0051 
0052 private:
0053     GeoDataImagePyramidPrivate* const d;
0054 };
0055 
0056 }
0057 
0058 #endif